aboutsummaryrefslogtreecommitdiffhomepage
path: root/qt/ScintillaEditBase/ScintillaEditBase.cpp
diff options
context:
space:
mode:
authorjohnsonj <unknown>2017-03-05 16:28:31 +1100
committerjohnsonj <unknown>2017-03-05 16:28:31 +1100
commit26fc47b6fc2445b1d9b4a20eb3ccc79cf2fca315 (patch)
tree6d4bba51574e708c7c932b81271539f2ad482ea4 /qt/ScintillaEditBase/ScintillaEditBase.cpp
parente17d87205db3b9a3e6bc4b7f14c11d48b48b66f2 (diff)
downloadscintilla-mirror-26fc47b6fc2445b1d9b4a20eb3ccc79cf2fca315.tar.gz
For IMEs, do not clear selected text when there is no composition text to show.
Diffstat (limited to 'qt/ScintillaEditBase/ScintillaEditBase.cpp')
-rw-r--r--qt/ScintillaEditBase/ScintillaEditBase.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/qt/ScintillaEditBase/ScintillaEditBase.cpp b/qt/ScintillaEditBase/ScintillaEditBase.cpp
index eb51ef1d1..9059e6344 100644
--- a/qt/ScintillaEditBase/ScintillaEditBase.cpp
+++ b/qt/ScintillaEditBase/ScintillaEditBase.cpp
@@ -525,12 +525,13 @@ void ScintillaEditBase::inputMethodEvent(QInputMethodEvent *event)
return;
}
+ bool initialCompose = false;
if (sqt->pdoc->TentativeActive()) {
sqt->pdoc->TentativeUndo();
} else {
// No tentative undo means start of this composition so
// Fill in any virtual spaces.
- sqt->ClearBeforeTentativeStart();
+ initialCompose = true;
}
sqt->view.imeCaretBlockOverride = false;
@@ -557,6 +558,8 @@ void ScintillaEditBase::inputMethodEvent(QInputMethodEvent *event)
return;
}
+ if (initialCompose)
+ sqt->ClearBeforeTentativeStart();
sqt->pdoc->TentativeStart(); // TentativeActive() from now on.
std::vector<int> imeIndicator = MapImeIndicators(event);