diff options
author | Boris Shingarov | 2002-06-11 22:45:35 +0000 |
---|---|---|
committer | Boris Shingarov | 2002-06-11 22:45:35 +0000 |
commit | 9d4fa5e6d195494b2a05e72f5fca3f570e2ab98b (patch) | |
tree | df9629cae8173c08032dd5530cbc901c1f12fdac /bundles | |
parent | 45ca334b225559bf6642b73714d9349148e941f4 (diff) | |
download | eclipse.platform.swt-9d4fa5e6d195494b2a05e72f5fca3f570e2ab98b.tar.gz eclipse.platform.swt-9d4fa5e6d195494b2a05e72f5fca3f570e2ab98b.tar.xz eclipse.platform.swt-9d4fa5e6d195494b2a05e72f5fca3f570e2ab98b.zip |
Diffstat (limited to 'bundles')
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java | 1 | ||||
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java | 9 |
2 files changed, 10 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java index 760cbc2462..1cc4c16e13 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java @@ -40,6 +40,7 @@ public class OS { public static final int GDK_CONTROL_MASK = 0x4; public static final int GDK_COPY = 0x0; public static final int GDK_CROSS = 0x1e; + public static final int GDK_CROSSING_NORMAL = 0; public static final int GDK_Cancel = 0xff69; public static final int GDK_Clear = 0xff0B; public static final int GDK_Control_L = 0xffe3; diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java index 3e041688e3..52fff4aa67 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Control.java @@ -1695,12 +1695,21 @@ int processMouseDown (int callData, int arg1, int int2) { } int processMouseEnter (int callData, int arg1, int int2) { + GdkEventCrossing gdkEvent = new GdkEventCrossing (); + OS.memmove (gdkEvent, callData, GdkEventCrossing.sizeof); + if (gdkEvent.mode != OS.GDK_CROSSING_NORMAL) return 0; + if (gdkEvent.subwindow != 0) return 0; sendMouseEvent (SWT.MouseEnter, 0, callData); return 0; } + int processMouseExit (int callData, int arg1, int int2) { Display display = getDisplay (); display.removeMouseHoverTimeout (handle); + GdkEventCrossing gdkEvent = new GdkEventCrossing (); + OS.memmove (gdkEvent, callData, GdkEventCrossing.sizeof); + if (gdkEvent.mode != OS.GDK_CROSSING_NORMAL) return 0; + if (gdkEvent.subwindow != 0) return 0; sendMouseEvent (SWT.MouseExit, 0, callData); return 0; } |