From 1b6a730a1879de901b909ce2fbe5a3073b4144ad Mon Sep 17 00:00:00 2001 From: johnsonj Date: Wed, 17 Jul 2019 15:37:49 +1000 Subject: Backport: Feature [feature-requests:#1300] part 3. Stop candidate window moving while typing. Backport of changeset 7685:f03dcfdb449b. --- win32/ScintillaWin.cxx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'win32/ScintillaWin.cxx') diff --git a/win32/ScintillaWin.cxx b/win32/ScintillaWin.cxx index ace53f933..b70934a80 100644 --- a/win32/ScintillaWin.cxx +++ b/win32/ScintillaWin.cxx @@ -1104,8 +1104,12 @@ sptr_t ScintillaWin::HandleCompositionInline(uptr_t, sptr_t lParam) { return 0; } - if (initialCompose) + if (initialCompose) { ClearBeforeTentativeStart(); + } + + // Set candidate window left aligned to beginning of preedit string. + SetCandidateWindowPos(); pdoc->TentativeStart(); // TentativeActive from now on. std::vector imeIndicator = MapImeIndicators(imc.GetImeAttributes()); @@ -1135,7 +1139,6 @@ sptr_t ScintillaWin::HandleCompositionInline(uptr_t, sptr_t lParam) { AddWString(imc.GetCompositionString(GCS_RESULTSTR), CharacterSource::imeResult); } EnsureCaretVisible(); - SetCandidateWindowPos(); ShowCaretAtCurrentPosition(); return 0; } -- cgit v1.2.3