mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-18 09:34:34 +07:00
IDEA-139223 IDEA-138359 diff: better detection of modality state
IdeFocusManager.isFocusBeingTransferred() could be true at this moment
This commit is contained in:
@@ -37,6 +37,7 @@ import com.intellij.openapi.actionSystem.AnAction;
|
||||
import com.intellij.openapi.actionSystem.DataProvider;
|
||||
import com.intellij.openapi.actionSystem.DefaultActionGroup;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.application.impl.LaterInvocator;
|
||||
import com.intellij.openapi.command.CommandProcessor;
|
||||
import com.intellij.openapi.components.StoragePathMacros;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
@@ -822,7 +823,7 @@ public class DiffUtil {
|
||||
public static WindowWrapper.Mode getWindowMode(@NotNull DiffDialogHints hints) {
|
||||
WindowWrapper.Mode mode = hints.getMode();
|
||||
if (mode == null) {
|
||||
boolean isUnderDialog = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusedWindow() instanceof JDialog;
|
||||
boolean isUnderDialog = LaterInvocator.isInModalContext();
|
||||
mode = isUnderDialog ? WindowWrapper.Mode.MODAL : WindowWrapper.Mode.FRAME;
|
||||
}
|
||||
return mode;
|
||||
|
||||
Reference in New Issue
Block a user