Fix TextBox caret and selection size with custom DPI

This commit is contained in:
GoaLitiuM
2021-02-21 16:05:37 +02:00
parent 09be8994e9
commit cfb02692df
2 changed files with 6 additions and 6 deletions

View File

@@ -124,7 +124,7 @@ namespace FlaxEngine.GUI
var font = textBlock.Style.Font.GetFont(); var font = textBlock.Style.Font.GetFont();
if (font) if (font)
{ {
height = font.Height; height = font.Height / Platform.DpiScale;
return textBlock.Bounds.UpperLeft; return textBlock.Bounds.UpperLeft;
} }
} }
@@ -136,7 +136,7 @@ namespace FlaxEngine.GUI
var font = textBlock.Style.Font.GetFont(); var font = textBlock.Style.Font.GetFont();
if (font) if (font)
{ {
height = font.Height; height = font.Height / Platform.DpiScale;
return textBlock.Bounds.UpperRight; return textBlock.Bounds.UpperRight;
} }
} }
@@ -151,7 +151,7 @@ namespace FlaxEngine.GUI
var font = textBlock.Style.Font.GetFont(); var font = textBlock.Style.Font.GetFont();
if (!font) if (!font)
break; break;
height = font.Height; height = font.Height / Platform.DpiScale;
return textBlock.Bounds.Location + font.GetCharPosition(_text, ref textBlock.Range, index - textBlock.Range.StartIndex); return textBlock.Bounds.Location + font.GetCharPosition(_text, ref textBlock.Range, index - textBlock.Range.StartIndex);
} }
} }
@@ -166,7 +166,7 @@ namespace FlaxEngine.GUI
var font = textBlock.Style.Font.GetFont(); var font = textBlock.Style.Font.GetFont();
if (!font) if (!font)
break; break;
height = font.Height; height = font.Height / Platform.DpiScale;
return textBlock.Bounds.UpperRight; return textBlock.Bounds.UpperRight;
} }
} }

View File

@@ -109,7 +109,7 @@ namespace FlaxEngine.GUI
return Vector2.Zero; return Vector2.Zero;
} }
height = font.Height; height = font.Height / Platform.DpiScale;
return font.GetCharPosition(_text, index, ref _layout); return font.GetCharPosition(_text, index, ref _layout);
} }
@@ -161,7 +161,7 @@ namespace FlaxEngine.GUI
{ {
Vector2 leftEdge = font.GetCharPosition(_text, SelectionLeft, ref _layout); Vector2 leftEdge = font.GetCharPosition(_text, SelectionLeft, ref _layout);
Vector2 rightEdge = font.GetCharPosition(_text, SelectionRight, ref _layout); Vector2 rightEdge = font.GetCharPosition(_text, SelectionRight, ref _layout);
float fontHeight = font.Height; float fontHeight = font.Height / Platform.DpiScale;
// Draw selection background // Draw selection background
float alpha = Mathf.Min(1.0f, Mathf.Cos(_animateTime * BackgroundSelectedFlashSpeed) * 0.5f + 1.3f); float alpha = Mathf.Min(1.0f, Mathf.Cos(_animateTime * BackgroundSelectedFlashSpeed) * 0.5f + 1.3f);