From 5feb3f8ea47e2628249300575ff207a04b67eca4 Mon Sep 17 00:00:00 2001 From: johnsonj Date: Wed, 17 Jul 2019 15:49:13 +1000 Subject: Backport: Feature [feature-requests:#1300] part 5. Stop Google IME on Windows 7 moving while typing. Backport of changeset 7687:785372d12384. --- doc/ScintillaHistory.html | 1 + win32/ScintillaWin.cxx | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/doc/ScintillaHistory.html b/doc/ScintillaHistory.html index fb4252565..73e335699 100644 --- a/doc/ScintillaHistory.html +++ b/doc/ScintillaHistory.html @@ -558,6 +558,7 @@ Position candidate window closer to composition text.
Stop candidate window moving while typing.
Align candidate window to target part of composition text.
+ Stop Google IME on Windows 7 moving while typing.
Bug #2120. Feature #1300. diff --git a/win32/ScintillaWin.cxx b/win32/ScintillaWin.cxx index 67cbd2d79..f4d7300e3 100644 --- a/win32/ScintillaWin.cxx +++ b/win32/ScintillaWin.cxx @@ -1908,6 +1908,11 @@ void ScintillaWin::NotifyCaretMove() { void ScintillaWin::UpdateSystemCaret() { if (hasFocus) { + if (pdoc->TentativeActive()) { + // ongoing inline mode IME composition, don't inform IME of system caret position. + // fix candidate window for Google Japanese IME moved on typing on Win7. + return; + } if (HasCaretSizeChanged()) { DestroySystemCaret(); CreateSystemCaret(); -- cgit v1.2.3