From fc34721d6a22f3efea52afa7e8f2acf6983c2196 Mon Sep 17 00:00:00 2001 From: "Gregory.Shrago" Date: Mon, 9 Jul 2012 23:18:08 +0400 Subject: [PATCH] modality issues --- .../impl/AbstractUpdateDialog.java | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/AbstractUpdateDialog.java b/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/AbstractUpdateDialog.java index fb6d2fea3ea3..47c9b548c907 100644 --- a/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/AbstractUpdateDialog.java +++ b/platform/platform-impl/src/com/intellij/openapi/updateSettings/impl/AbstractUpdateDialog.java @@ -103,11 +103,18 @@ public abstract class AbstractUpdateDialog extends DialogWrapper { protected void doOKAction() { if (doDownloadAndPrepare() && isShowConfirmation()) { final ApplicationEx app = ApplicationManagerEx.getApplicationEx(); - if (app.isRestartCapable()) { - app.restart(); - } else { - app.exit(true); - } + // do not stack several modal dialogs (native & swing) + app.invokeLater(new Runnable() { + @Override + public void run() { + if (app.isRestartCapable()) { + app.restart(); + } + else { + app.exit(true); + } + } + }); } super.doOKAction(); }