diff options
author | johnsonj <unknown> | 2017-03-05 16:28:31 +1100 |
---|---|---|
committer | johnsonj <unknown> | 2017-03-05 16:28:31 +1100 |
commit | 26fc47b6fc2445b1d9b4a20eb3ccc79cf2fca315 (patch) | |
tree | 6d4bba51574e708c7c932b81271539f2ad482ea4 /win32/ScintillaWin.cxx | |
parent | e17d87205db3b9a3e6bc4b7f14c11d48b48b66f2 (diff) | |
download | scintilla-mirror-26fc47b6fc2445b1d9b4a20eb3ccc79cf2fca315.tar.gz |
For IMEs, do not clear selected text when there is no composition text to show.
Diffstat (limited to 'win32/ScintillaWin.cxx')
-rw-r--r-- | win32/ScintillaWin.cxx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/win32/ScintillaWin.cxx b/win32/ScintillaWin.cxx index 265789330..ae20ac2e9 100644 --- a/win32/ScintillaWin.cxx +++ b/win32/ScintillaWin.cxx @@ -1061,12 +1061,13 @@ sptr_t ScintillaWin::HandleCompositionInline(uptr_t, sptr_t lParam) { return 0; } + bool initialCompose = false; if (pdoc->TentativeActive()) { pdoc->TentativeUndo(); } else { // No tentative undo means start of this composition so // fill in any virtual spaces. - ClearBeforeTentativeStart(); + initialCompose = true; } view.imeCaretBlockOverride = false; @@ -1078,6 +1079,8 @@ sptr_t ScintillaWin::HandleCompositionInline(uptr_t, sptr_t lParam) { return 0; } + if (initialCompose) + ClearBeforeTentativeStart(); pdoc->TentativeStart(); // TentativeActive from now on. std::vector<int> imeIndicator = MapImeIndicators(imc.GetImeAttributes()); |