diff options
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.java | 6 |
1 files changed, 5 insertions, 1 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 d0a81f5582..8be098e77a 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 @@ -772,7 +772,11 @@ public void setMenu (Menu menu) { * to replace or GTK will destroy it. */ OS.g_object_ref (oldMenu.handle); - OS.gtk_menu_item_remove_submenu (handle); + if (OS.GTK_VERSION >= OS.VERSION(2, 12, 0)) { + OS.gtk_menu_item_set_submenu (handle, 0); + } else { + OS.gtk_menu_item_remove_submenu (handle); + } } if ((this.menu = menu) != null) { menu.cascade = this; |