diff --git a/platform/platform-api/src/com/intellij/openapi/ui/MessageDialogBuilder.java b/platform/platform-api/src/com/intellij/openapi/ui/MessageDialogBuilder.java index 56520d4bf5e8..39ae629a776d 100644 --- a/platform/platform-api/src/com/intellij/openapi/ui/MessageDialogBuilder.java +++ b/platform/platform-api/src/com/intellij/openapi/ui/MessageDialogBuilder.java @@ -95,12 +95,13 @@ public abstract class MessageDialogBuilder { public int show() { String yesText = ObjectUtils.chooseNotNull(myYesText, Messages.YES_BUTTON); String noText = ObjectUtils.chooseNotNull(myNoText, Messages.NO_BUTTON); - if (Messages.canShowMacSheetPanel() && !Messages.isApplicationInUnitTestOrHeadless()) { - return MacMessages.getInstance().showYesNoDialog(myTitle, myMessage, yesText, noText, WindowManager.getInstance().suggestParentWindow(myProject), myDoNotAskOption); - } - else { - return Messages.showDialog(myProject, myMessage, myTitle, new String[]{yesText, noText}, 0, myIcon, myDoNotAskOption) == 0 ? Messages.YES : Messages.NO; - } + try { + if (Messages.canShowMacSheetPanel() && !Messages.isApplicationInUnitTestOrHeadless()) { + return MacMessages.getInstance().showYesNoDialog(myTitle, myMessage, yesText, noText, WindowManager.getInstance().suggestParentWindow(myProject), myDoNotAskOption); + } + } catch (Exception e) {} + return Messages.showDialog(myProject, myMessage, myTitle, new String[]{yesText, noText}, 0, myIcon, myDoNotAskOption) == 0 ? Messages.YES : Messages.NO; + } } @@ -126,13 +127,16 @@ public abstract class MessageDialogBuilder { String yesText = ObjectUtils.chooseNotNull(myYesText, Messages.YES_BUTTON); String noText = ObjectUtils.chooseNotNull(myNoText, Messages.NO_BUTTON); String cancelText = ObjectUtils.chooseNotNull(myCancelText, Messages.CANCEL_BUTTON); - if (Messages.canShowMacSheetPanel() && !Messages.isApplicationInUnitTestOrHeadless()) { - return MacMessages.getInstance().showYesNoCancelDialog(myTitle, myMessage, yesText, noText, cancelText, WindowManager.getInstance().suggestParentWindow(myProject), myDoNotAskOption); - } - else { - int buttonNumber = Messages.showDialog(myProject, myMessage, myTitle, new String[]{yesText, noText, cancelText}, 0, myIcon, myDoNotAskOption); - return buttonNumber == 0 ? Messages.YES : buttonNumber == 1 ? Messages.NO : Messages.CANCEL; + try { + if (Messages.canShowMacSheetPanel() && !Messages.isApplicationInUnitTestOrHeadless()) { + return MacMessages.getInstance().showYesNoCancelDialog(myTitle, myMessage, yesText, noText, cancelText, WindowManager.getInstance().suggestParentWindow(myProject), myDoNotAskOption); + } } + catch (Exception e) {} + + int buttonNumber = Messages.showDialog(myProject, myMessage, myTitle, new String[]{yesText, noText, cancelText}, 0, myIcon, myDoNotAskOption); + return buttonNumber == 0 ? Messages.YES : buttonNumber == 1 ? Messages.NO : Messages.CANCEL; + } } }