summaryrefslogtreecommitdiffstats
path: root/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
diff options
context:
space:
mode:
authorFelipe Heidrich <fheidric>2009-10-23 19:37:07 +0000
committerFelipe Heidrich <fheidric>2009-10-23 19:37:07 +0000
commit3c583b230fbcccc2783c71ce9fd0e1a3f475cab4 (patch)
tree14e149451ef607818a2417e1f805388856704493 /bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
parentad2f7a3dbde5efa498f9080cce5bfb2b90785d8d (diff)
downloadeclipse.platform.swt-3c583b230fbcccc2783c71ce9fd0e1a3f475cab4.tar.gz
eclipse.platform.swt-3c583b230fbcccc2783c71ce9fd0e1a3f475cab4.tar.xz
eclipse.platform.swt-3c583b230fbcccc2783c71ce9fd0e1a3f475cab4.zip
Bug 65679 - SelectionEvent.stateMask remains 0 even Ctrl (Shift, Alt) were pressed during push operation on button
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java')
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java23
1 files changed, 2 insertions, 21 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
index d676e46e4a..e88eefdf89 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/MenuItem.java
@@ -411,31 +411,12 @@ int /*long*/ gtk_activate (int /*long*/ widget) {
* activate signals when an ancestor menu is disabled.
*/
if (!isEnabled ()) return 0;
- Event event = new Event ();
- int /*long*/ ptr = OS.gtk_get_current_event ();
- if (ptr != 0) {
- GdkEvent gdkEvent = new GdkEvent ();
- OS.memmove (gdkEvent, ptr, GdkEvent.sizeof);
- switch (gdkEvent.type) {
- case OS.GDK_KEY_PRESS:
- case OS.GDK_KEY_RELEASE:
- case OS.GDK_BUTTON_PRESS:
- case OS.GDK_2BUTTON_PRESS:
- case OS.GDK_BUTTON_RELEASE: {
- int [] state = new int [1];
- OS.gdk_event_get_state (ptr, state);
- setInputState (event, state [0]);
- break;
- }
- }
- OS.gdk_event_free (ptr);
- }
if ((style & SWT.RADIO) != 0) {
if ((parent.getStyle () & SWT.NO_RADIO_GROUP) == 0) {
selectRadio ();
}
}
- postEvent (SWT.Selection, event);
+ sendSelectionEvent (SWT.Selection);
return 0;
}
@@ -765,7 +746,7 @@ boolean setRadioSelection (boolean value) {
if ((style & SWT.RADIO) == 0) return false;
if (getSelection () != value) {
setSelection (value);
- postEvent (SWT.Selection);
+ sendSelectionEvent (SWT.Selection);
}
return true;
}