diff --git a/platform/platform-impl/src/com/intellij/ide/IdeEventQueue.java b/platform/platform-impl/src/com/intellij/ide/IdeEventQueue.java index b597d9633245..9bec6db2c0f6 100644 --- a/platform/platform-impl/src/com/intellij/ide/IdeEventQueue.java +++ b/platform/platform-impl/src/com/intellij/ide/IdeEventQueue.java @@ -506,7 +506,10 @@ public class IdeEventQueue extends EventQueue { private AWTEvent mapMetaState(AWTEvent e) { if (myWinMetaPressed) { Application app = ApplicationManager.getApplication(); - if (app == null || !app.isActive()) { + + boolean weAreNotActive = app == null || !app.isActive(); + weAreNotActive |=(e instanceof FocusEvent && ((FocusEvent)e).getOppositeComponent() == null); + if (weAreNotActive) { myWinMetaPressed = false; return e; }