From 1380f39cfd2d6fa41f8289501187538c7df0f82e Mon Sep 17 00:00:00 2001 From: Steven Kirk Date: Wed, 25 Nov 2015 00:07:16 +0100 Subject: [PATCH] Don't get caret position unless needed. --- src/Perspex.Controls/Presenters/TextPresenter.cs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/Perspex.Controls/Presenters/TextPresenter.cs b/src/Perspex.Controls/Presenters/TextPresenter.cs index 4b68d160e5..6aabc6836f 100644 --- a/src/Perspex.Controls/Presenters/TextPresenter.cs +++ b/src/Perspex.Controls/Presenters/TextPresenter.cs @@ -91,9 +91,7 @@ namespace Perspex.Controls.Presenters base.Render(context); if (selectionStart == selectionEnd) - { - var charPos = FormattedText.HitTestTextPosition(CaretIndex); - + { var backgroundColor = (((Control)TemplatedParent).GetValue(BackgroundProperty) as SolidColorBrush)?.Color; var caretBrush = Brushes.Black; @@ -108,6 +106,7 @@ namespace Perspex.Controls.Presenters if (_caretBlink) { + var charPos = FormattedText.HitTestTextPosition(CaretIndex); var x = Math.Floor(charPos.X) + 0.5; var y = Math.Floor(charPos.Y) + 0.5; var b = Math.Ceiling(charPos.Bottom) - 0.5;