Merge branch 'dpi-text-highlight' of https://github.com/Tryibion/FlaxEngine into Tryibion-dpi-text-highlight

This commit is contained in:
2026-08-04 13:25:54 +02:00
3 changed files with 8 additions and 8 deletions
@@ -378,7 +378,7 @@ namespace FlaxEngine.GUI
{
var leftEdge = selection.StartIndex <= textBlock.Range.StartIndex ? textBlock.Bounds.UpperLeft : GetCharPosition(selection.StartIndex, out _);
var rightEdge = selection.EndIndex >= textBlock.Range.EndIndex ? textBlock.Bounds.UpperRight : GetCharPosition(selection.EndIndex, out _);
float height = font.Height;
float height = font.Height / DpiScale;
#if PLATFORM_MAC && !PLATFORM_SDL
height /= (float)Platform.Dpi / 96.0f; // TODO: refactor DPI support on macOS to skip such hacks
#endif
@@ -431,7 +431,7 @@ namespace FlaxEngine.GUI
if (textBlock.Style.UnderlineBrush != null)
{
var underLineHeight = 2.0f;
var height = font.Height;
var height = font.Height / DpiScale;
var underlineRect = new Rectangle(textBlock.Bounds.Location.X, textBlock.Bounds.Location.Y + height - underLineHeight * 0.5f, textBlock.Bounds.Width, underLineHeight);
textBlock.Style.UnderlineBrush.Draw(underlineRect, textBlock.Style.Color);
}
+5 -5
View File
@@ -66,7 +66,7 @@ namespace FlaxEngine.GUI
}
/// <summary>
/// The vertical alignment of the text.
/// The horizontal alignment of the text.
/// </summary>
[EditorDisplay("Text Style"), EditorOrder(2024), Tooltip("The horizontal alignment of the text.")]
public TextAlignment HorizontalAlignment
@@ -268,7 +268,7 @@ namespace FlaxEngine.GUI
if (selectedLinesCount == 1)
{
// Selected is part of single line
Rectangle r1 = new Rectangle(leftEdge.X, leftEdge.Y, rightEdge.X - leftEdge.X, fontHeight);
Rectangle r1 = new Rectangle(leftEdge.X, leftEdge.Y, rightEdge.X - leftEdge.X, textHeight);
Render2D.FillRectangle(r1, selectionColor);
}
else
@@ -276,17 +276,17 @@ namespace FlaxEngine.GUI
float leftMargin = _layout.Bounds.Location.X;
// Selected is more than one line
Rectangle r1 = new Rectangle(leftEdge.X, leftEdge.Y, 1000000000, fontHeight);
Rectangle r1 = new Rectangle(leftEdge.X, leftEdge.Y, 1000000000, textHeight);
Render2D.FillRectangle(r1, selectionColor);
//
for (int i = 3; i <= selectedLinesCount; i++)
{
leftEdge.Y += textHeight;
Rectangle r = new Rectangle(leftMargin, leftEdge.Y, 1000000000, fontHeight);
Rectangle r = new Rectangle(leftMargin, leftEdge.Y, 1000000000, textHeight);
Render2D.FillRectangle(r, selectionColor);
}
//
Rectangle r2 = new Rectangle(leftMargin, rightEdge.Y, rightEdge.X - leftMargin, fontHeight);
Rectangle r2 = new Rectangle(leftMargin, rightEdge.Y, rightEdge.X - leftMargin, textHeight);
Render2D.FillRectangle(r2, selectionColor);
}
}
+1 -1
View File
@@ -563,7 +563,7 @@ namespace FlaxEngine.GUI
caretPos.X - (caretWidth * 0.5f),
caretPos.Y,
caretWidth,
height * DpiScale);
height);
}
}