From 73273f7e5871428e81db897adfb99ba73a4fbbfb Mon Sep 17 00:00:00 2001 From: Denis Fokin Date: Mon, 12 Sep 2016 17:24:18 +0300 Subject: [PATCH] IDEA-35480 Per project/frame modality (Commit and Push dialog) Use ide.perProjectModality registry key to enable --- .../src/com/intellij/dvcs/push/ui/VcsPushDialog.java | 4 +++- .../src/com/intellij/openapi/wm/impl/CommandProcessor.java | 2 +- .../openapi/vcs/changes/ui/CommitChangeListDialog.java | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/platform/dvcs-impl/src/com/intellij/dvcs/push/ui/VcsPushDialog.java b/platform/dvcs-impl/src/com/intellij/dvcs/push/ui/VcsPushDialog.java index 6c2d26242346..2249f0fe23d1 100644 --- a/platform/dvcs-impl/src/com/intellij/dvcs/push/ui/VcsPushDialog.java +++ b/platform/dvcs-impl/src/com/intellij/dvcs/push/ui/VcsPushDialog.java @@ -25,6 +25,7 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.DialogWrapper; import com.intellij.openapi.ui.OptionAction; import com.intellij.openapi.ui.ValidationInfo; +import com.intellij.openapi.util.registry.Registry; import com.intellij.ui.components.labels.ActionLink; import com.intellij.util.ui.JBUI; import com.intellij.util.ui.components.BorderLayoutPanel; @@ -52,7 +53,8 @@ public class VcsPushDialog extends DialogWrapper { public VcsPushDialog(@NotNull Project project, @NotNull List selectedRepositories, @Nullable Repository currentRepo) { - super(project); + super(project, true, (Registry.is("ide.perProjectModality")) ? IdeModalityType.PROJECT : IdeModalityType.IDE); + myController = new PushController(project, this, selectedRepositories, currentRepo); myAdditionalPanels = myController.createAdditionalPanels(); myListPanel = myController.getPushPanelLog(); diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/CommandProcessor.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/CommandProcessor.java index 476ff706b325..13276cc1f59a 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/CommandProcessor.java +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/CommandProcessor.java @@ -80,7 +80,7 @@ public final class CommandProcessor implements Runnable { // definitely have some since runnables in command list may (and do) request some PSI activity final boolean queueNext = myCommandCount > 0; Application application = ApplicationManager.getApplication(); - ModalityState modalityState = Registry.is("ide.perProjectModality") ? ModalityState.defaultModalityState() : ModalityState.NON_MODAL; + ModalityState modalityState = ModalityState.NON_MODAL; application.getInvokator().invokeLater(command, modalityState, expire == null ? application.getDisposed() : expire).doWhenDone(() -> { if (queueNext) { this.run(); diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/CommitChangeListDialog.java b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/CommitChangeListDialog.java index a299a0ee2092..19de6eb510c9 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/CommitChangeListDialog.java +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/CommitChangeListDialog.java @@ -271,7 +271,7 @@ public class CommitChangeListDialog extends DialogWrapper implements CheckinProj final boolean isAlien, final String comment, @Nullable CommitResultHandler customResultHandler) { - super(project, true); + super(project, true, (Registry.is("ide.perProjectModality")) ? IdeModalityType.PROJECT : IdeModalityType.IDE); myCommitContext = new CommitContext(); myProject = project; myVcsConfiguration = ObjectUtils.assertNotNull(VcsConfiguration.getInstance(myProject));