From cf9ad3cd97eb065687f12ed57360118ff0c686eb Mon Sep 17 00:00:00 2001 From: juha Date: Fri, 20 Oct 2017 21:02:42 +0000 Subject: [PATCH] LCL-GTK2: Fix TMemo.SelText. Issue #32583, patch from accorp. git-svn-id: trunk@56138 - --- lcl/interfaces/gtk2/gtk2memostrings.inc | 1 + lcl/interfaces/gtk2/gtk2wscustommemo.inc | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/lcl/interfaces/gtk2/gtk2memostrings.inc b/lcl/interfaces/gtk2/gtk2memostrings.inc index 22ab2c6092..1a25711fc7 100644 --- a/lcl/interfaces/gtk2/gtk2memostrings.inc +++ b/lcl/interfaces/gtk2/gtk2memostrings.inc @@ -38,6 +38,7 @@ type public //property Sorted: boolean read FSorted write SetSorted; property Owner: TWinControl read FOwner; + property QueueCursorMovePos: Integer read FQueueCursorMove; property QueueSelLength: Integer read FQueueSelLength; end; {$ELSE} diff --git a/lcl/interfaces/gtk2/gtk2wscustommemo.inc b/lcl/interfaces/gtk2/gtk2wscustommemo.inc index e0cc35723d..7616be3953 100644 --- a/lcl/interfaces/gtk2/gtk2wscustommemo.inc +++ b/lcl/interfaces/gtk2/gtk2wscustommemo.inc @@ -328,6 +328,7 @@ end; class function TGtk2WSCustomMemo.GetSelStart(const ACustomEdit: TCustomEdit ): integer; var + MemoStrings: TGtk2MemoStrings; TextView: PGtkTextView; TextBuffer: PGtkTextBuffer; TextMark: PGtkTextMark; @@ -339,6 +340,11 @@ begin if not WSCheckHandleAllocated(ACustomEdit, 'GetSelStart') then Exit; + MemoStrings := TCustomMemo(ACustomEdit).Lines as TGtk2MemoStrings; + Result := MemoStrings.QueueCursorMovePos; + if Result > 0 then + Exit; + TextView := PGtkTextView(GetWidgetInfo({%H-}Pointer(ACustomEdit.Handle), False)^.CoreWidget); TextBuffer := gtk_text_view_get_buffer(TextView); TextMark := gtk_text_buffer_get_insert(TextBuffer);