diff --git a/src/lib/fcitx/instance.cpp b/src/lib/fcitx/instance.cpp index d2e9aa23..7021f898 100644 --- a/src/lib/fcitx/instance.cpp +++ b/src/lib/fcitx/instance.cpp @@ -2462,6 +2462,10 @@ void Instance::deactivateInputMethod(InputContextEvent &event) { if (!engine || !entry) { return; } + + if (ic != mostRecentInputContext()) { + return; + } inputState->overrideDeactivateIM_ = entry->uniqueName(); engine->deactivate(*entry, event); inputState->overrideDeactivateIM_.clear();