aboutsummaryrefslogtreecommitdiffhomepage
path: root/gtk/ScintillaGTK.cxx
diff options
context:
space:
mode:
authorjohnsonj <unknown>2025-05-11 18:20:38 +1000
committerjohnsonj <unknown>2025-05-11 18:20:38 +1000
commit61066182da826a8a1bd00673851931a8c200f637 (patch)
tree6565e798911ce2770753b6ab45a6c2fa64935a53 /gtk/ScintillaGTK.cxx
parent220ff95d67d652dd5bc709ffed27cfb52c86d3fe (diff)
downloadscintilla-mirror-61066182da826a8a1bd00673851931a8c200f637.tar.gz
Feature [feature-requests:#1476]. Fix IME delete surrounding when tentative
composition active.
Diffstat (limited to 'gtk/ScintillaGTK.cxx')
-rwxr-xr-xgtk/ScintillaGTK.cxx4
1 files changed, 4 insertions, 0 deletions
diff --git a/gtk/ScintillaGTK.cxx b/gtk/ScintillaGTK.cxx
index 2985aab54..4c71d4a7e 100755
--- a/gtk/ScintillaGTK.cxx
+++ b/gtk/ScintillaGTK.cxx
@@ -2619,6 +2619,10 @@ gboolean ScintillaGTK::RetrieveSurrounding(GtkIMContext *context, ScintillaGTK *
bool ScintillaGTK::DeleteSurroundingThis(GtkIMContext *, gint characterOffset, gint characterCount) {
try {
+ if (pdoc->TentativeActive()) {
+ // First remove composition text so that correct surrounding text is deleted.
+ pdoc->TentativeUndo();
+ }
const Sci::Position startByte = pdoc->GetRelativePosition(CurrentPosition(), characterOffset);
if (startByte == INVALID_POSITION)
return false;