vcl/win/window/salframe.cxx |    4 ++++
 1 file changed, 4 insertions(+)

New commits:
commit f4bba60e7fff74126eed6b3557cdcc39ef5a8273
Author:     Jonathan Clark <jonat...@libreoffice.org>
AuthorDate: Tue May 27 05:25:50 2025 -0600
Commit:     Christian Lohmaier <lohmaier+libreoff...@googlemail.com>
CommitDate: Fri Jun 27 13:03:42 2025 +0200

    tdf#155158 vcl: Fix IME composition not ending on end comp message
    
    This change updates our Windows IME integration to gracefully handle the
    case where the IME sends a WM_IME_ENDCOMPOSITION message to terminate
    composition without sending a final WM_IME_COMPOSITION message.
    
    Change-Id: I97f8cacaec318d613f42cdc668f13841d9ff23eb
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185901
    Tested-by: Jenkins
    Reviewed-by: Jonathan Clark <jonat...@libreoffice.org>
    (cherry picked from commit 08a3854ba355c511a8098b64a8346dda614ea630)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185920
    Reviewed-by: Christian Lohmaier <lohmaier+libreoff...@googlemail.com>

diff --git a/vcl/win/window/salframe.cxx b/vcl/win/window/salframe.cxx
index a73b764ee84a..74c3305aded3 100644
--- a/vcl/win/window/salframe.cxx
+++ b/vcl/win/window/salframe.cxx
@@ -5591,6 +5591,10 @@ static bool ImplHandleIMEEndComposition( HWND hWnd )
             pFrame->mbCandidateMode = false;
             bDef = false;
         }
+
+        // tdf#155158: Windows IMEs do not necessarily send a composition 
message if they are
+        // dismissed during composition (for example, by an input 
method/language change).
+        pFrame->CallCallback(SalEvent::EndExtTextInput, nullptr);
     }
 
     ImplSalYieldMutexRelease();

Reply via email to