diff options
author | Steve Northover <steve> | 2002-12-06 17:28:34 +0000 |
---|---|---|
committer | Steve Northover <steve> | 2002-12-06 17:28:34 +0000 |
commit | 9d6a6181675ef3f8321a99a2d87021399f910ba2 (patch) | |
tree | 394d9ae165f7bc9225e36c713962b55ef7ba7d62 | |
parent | 28964173c341f5f58ee1a8e924fc70bb1a37d159 (diff) | |
download | eclipse.platform.swt-9d6a6181675ef3f8321a99a2d87021399f910ba2.tar.gz eclipse.platform.swt-9d6a6181675ef3f8321a99a2d87021399f910ba2.tar.xz eclipse.platform.swt-9d6a6181675ef3f8321a99a2d87021399f910ba2.zip |
*** empty log message ***
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Display.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Display.java b/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Display.java index d7800451d1..b451652ec0 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Display.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Display.java @@ -870,7 +870,14 @@ int mouseProc (int nextHandler, int theEvent, int userData) { switch (part) { case OS.inMenuBar: { if (eventKind == OS.kEventMouseDown) { - OS.MenuSelect (where); + boolean modal = false; + int activeWindow = OS.ActiveNonFloatingWindow (); + if (activeWindow != 0) { + int [] outModalityKind = new int [1], outUnavailableWindow = new int [1]; + OS.GetWindowModality (activeWindow, outModalityKind, outUnavailableWindow); + modal = outModalityKind [0] != OS.kWindowModalityNone; + } + if (!modal) OS.MenuSelect (where); return OS.noErr; } break; |