diff options
author | Silenio Quarti <silenio_quarti@ca.ibm.com> | 2012-06-21 14:41:08 -0400 |
---|---|---|
committer | Silenio Quarti <silenio_quarti@ca.ibm.com> | 2012-06-21 14:41:59 -0400 |
commit | 486cb9d274cada4c313732fb1f41ca4e0cc984ca (patch) | |
tree | 589fc25ecd08ed540ba22f5c1f576e318ee6ba1f | |
parent | 2f67efb12116378f6c4fe455aa16cedec07ec5d6 (diff) | |
download | eclipse.platform.swt-486cb9d274cada4c313732fb1f41ca4e0cc984ca.tar.gz eclipse.platform.swt-486cb9d274cada4c313732fb1f41ca4e0cc984ca.tar.xz eclipse.platform.swt-486cb9d274cada4c313732fb1f41ca4e0cc984ca.zip |
Bug 381333 - MouseExit event is not received in shell with style SWT.ON_TOP
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/widgets/Shell.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/widgets/Shell.java b/bundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/widgets/Shell.java index cd0717f124..f897e09350 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/widgets/Shell.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/widgets/Shell.java @@ -1987,7 +1987,16 @@ void setWindowVisible (boolean visible, boolean key) { sendEvent (SWT.Hide); } + if (isDisposed()) return; display.updateQuitMenu(); + + if (isDisposed()) return; + NSView[] hitView = new NSView[1]; + Control control = display.findControl (false, hitView); + if (control != null && (!control.isActive() || !control.isEnabled())) control = null; + Control trimControl = control; + if (trimControl != null && trimControl.isTrim (hitView[0])) trimControl = null; + display.checkEnterExit (trimControl, null, false); } void setZOrder () { |