[Libreoffice-commits] core.git: cui/source

Eike Rathke (via logerrit) logerrit at kemper.freedesktop.org
Mon Sep 13 15:19:06 UTC 2021


 cui/source/options/optgdlg.cxx |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

New commits:
commit 37e2e99f7a3018dce0337b582b139d41e1e81a9a
Author:     Eike Rathke <erack at redhat.com>
AuthorDate: Mon Sep 13 16:24:23 2021 +0200
Commit:     Eike Rathke <erack at redhat.com>
CommitDate: Mon Sep 13 17:18:30 2021 +0200

    Explicitly set cursor position for x11 'gen' backend, tdf#144457 follow-up
    
    ... (and other backends?)
    
    Change-Id: If45b83080aa2df50ef27ad282eb6fa1d4a022703
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122037
    Reviewed-by: Eike Rathke <erack at redhat.com>
    Tested-by: Jenkins

diff --git a/cui/source/options/optgdlg.cxx b/cui/source/options/optgdlg.cxx
index 92acc1bc0001..5424c03622f4 100644
--- a/cui/source/options/optgdlg.cxx
+++ b/cui/source/options/optgdlg.cxx
@@ -1789,7 +1789,13 @@ IMPL_LINK( OfaLanguagesTabPage, DatePatternsHdl, weld::Entry&, rEd, void )
         }
     }
     if (bModified)
-        rEd.set_text(aBuf.makeStringAndClear());  // This even keeps the cursor position so all good.
+    {
+        // gtk3 keeps the cursor position on equal length set_text() but at
+        // least the 'gen' backend does not and resets to 0.
+        const int nCursorPos = rEd.get_position();
+        rEd.set_text(aBuf.makeStringAndClear());
+        rEd.set_position(nCursorPos);
+    }
     if (bValid)
         rEd.set_message_type(weld::EntryMessageType::Normal);
     else


More information about the Libreoffice-commits mailing list