diff --git a/src/lib/fcitx/instance.cpp b/src/lib/fcitx/instance.cpp index ceb163036..3f2008aa9 100644 --- a/src/lib/fcitx/instance.cpp +++ b/src/lib/fcitx/instance.cpp @@ -869,6 +869,8 @@ Instance::Instance(int argc, char **argv) { if (!keyEvent.isRelease() && keyEvent.key().checkKeyList( d->globalConfig_.togglePreeditKeys())) { + // Clear client preedit on disable. + ic->reset(); ic->setEnablePreedit(!ic->isPreeditEnabled()); if (d->notifications_) { d->notifications_->call(