diff options
author | Silenio Quarti <silenio_quarti@ca.ibm.com> | 2012-11-02 10:09:35 -0400 |
---|---|---|
committer | Silenio Quarti <silenio_quarti@ca.ibm.com> | 2012-11-02 10:09:35 -0400 |
commit | 28693b715394e6d7185e331f748190abf197da68 (patch) | |
tree | 73e88f8f1b6b98a6d45dbd6e21ac9a103dd97932 /bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TabFolder.java | |
parent | b007515cbcde96bb54766bf477a070088005e41e (diff) | |
download | eclipse.platform.swt-28693b715394e6d7185e331f748190abf197da68.tar.gz eclipse.platform.swt-28693b715394e6d7185e331f748190abf197da68.tar.xz eclipse.platform.swt-28693b715394e6d7185e331f748190abf197da68.zip |
Bug 393156 - [ GTK+ 3 ] Shell.forceResize() gives Critical error when running with GTK+3
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TabFolder.java')
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TabFolder.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TabFolder.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TabFolder.java index ba5eb62a7e..050cc20801 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TabFolder.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/TabFolder.java @@ -227,6 +227,12 @@ void createItem (TabItem item, int index) { OS.gtk_container_add (boxHandle, labelHandle); long /*int*/ pageHandle = OS.g_object_new (display.gtk_fixed_get_type (), 0); if (pageHandle == 0) error (SWT.ERROR_NO_HANDLES); + if (OS.GTK_VERSION >= OS.VERSION(3, 0, 0)) { + OS.gtk_widget_override_background_color (pageHandle, 0, new GdkRGBA ()); + long /*int*/ region = OS.gdk_region_new (); + OS.gtk_widget_input_shape_combine_region (pageHandle, region); + OS.gdk_region_destroy (region); + } OS.g_signal_handlers_block_matched (handle, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, SWITCH_PAGE); OS.gtk_notebook_insert_page (handle, pageHandle, boxHandle, index); OS.g_signal_handlers_unblock_matched (handle, OS.G_SIGNAL_MATCH_DATA, 0, 0, 0, 0, SWITCH_PAGE); |