diff --git a/src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Editing/ImeNativeWrapper.cs b/src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Editing/ImeNativeWrapper.cs index f6290aec53..342f2173ba 100644 --- a/src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Editing/ImeNativeWrapper.cs +++ b/src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Editing/ImeNativeWrapper.cs @@ -138,10 +138,12 @@ namespace ICSharpCode.AvalonEdit.Editing return new Rect(location, new Size(textView.ActualWidth, textView.ActualHeight)); } + static readonly Rect EMPTY_RECT = new Rect(0, 0, 0, 0); + static Rect GetCharacterBounds(this TextView textView, TextViewPosition pos, HwndSource source) { VisualLine vl = textView.GetVisualLine(pos.Line); - if (vl == null) return Rect.Empty; + if (vl == null) return EMPTY_RECT; TextLine line = vl.GetTextLine(pos.VisualColumn); double offset = vl.GetTextLineVisualYPosition(line, VisualYPosition.LineTop) - textView.ScrollOffset.Y; Rect r = line.GetTextBounds(pos.VisualColumn, 1).First().Rectangle;