diff --git a/src/gtk/radiobox.cpp b/src/gtk/radiobox.cpp index a2f712302d..11d58c16d1 100644 --- a/src/gtk/radiobox.cpp +++ b/src/gtk/radiobox.cpp @@ -756,9 +756,12 @@ wxVisualAttributes wxRadioBox::GetClassDefaultAttributes(wxWindowVariant WXUNUSED(variant)) { wxVisualAttributes attr; + // NB: we need toplevel window so that GTK+ can find the right style + GtkWidget *wnd = gtk_window_new(GTK_WINDOW_TOPLEVEL); GtkWidget* widget = gtk_radio_button_new_with_label(NULL, ""); + gtk_container_add(GTK_CONTAINER(wnd), widget); attr = GetDefaultAttributesFromGTKWidget(widget); - gtk_widget_destroy(widget); + gtk_widget_destroy(wnd); return attr; } diff --git a/src/gtk/radiobut.cpp b/src/gtk/radiobut.cpp index 2c3e1c0d10..df0ad406d2 100644 --- a/src/gtk/radiobut.cpp +++ b/src/gtk/radiobut.cpp @@ -237,9 +237,12 @@ wxVisualAttributes wxRadioButton::GetClassDefaultAttributes(wxWindowVariant WXUNUSED(variant)) { wxVisualAttributes attr; + // NB: we need toplevel window so that GTK+ can find the right style + GtkWidget *wnd = gtk_window_new(GTK_WINDOW_TOPLEVEL); GtkWidget* widget = gtk_radio_button_new_with_label(NULL, ""); + gtk_container_add(GTK_CONTAINER(wnd), widget); attr = GetDefaultAttributesFromGTKWidget(widget); - gtk_widget_destroy(widget); + gtk_widget_destroy(wnd); return attr; } diff --git a/src/gtk1/radiobox.cpp b/src/gtk1/radiobox.cpp index a2f712302d..11d58c16d1 100644 --- a/src/gtk1/radiobox.cpp +++ b/src/gtk1/radiobox.cpp @@ -756,9 +756,12 @@ wxVisualAttributes wxRadioBox::GetClassDefaultAttributes(wxWindowVariant WXUNUSED(variant)) { wxVisualAttributes attr; + // NB: we need toplevel window so that GTK+ can find the right style + GtkWidget *wnd = gtk_window_new(GTK_WINDOW_TOPLEVEL); GtkWidget* widget = gtk_radio_button_new_with_label(NULL, ""); + gtk_container_add(GTK_CONTAINER(wnd), widget); attr = GetDefaultAttributesFromGTKWidget(widget); - gtk_widget_destroy(widget); + gtk_widget_destroy(wnd); return attr; } diff --git a/src/gtk1/radiobut.cpp b/src/gtk1/radiobut.cpp index 2c3e1c0d10..df0ad406d2 100644 --- a/src/gtk1/radiobut.cpp +++ b/src/gtk1/radiobut.cpp @@ -237,9 +237,12 @@ wxVisualAttributes wxRadioButton::GetClassDefaultAttributes(wxWindowVariant WXUNUSED(variant)) { wxVisualAttributes attr; + // NB: we need toplevel window so that GTK+ can find the right style + GtkWidget *wnd = gtk_window_new(GTK_WINDOW_TOPLEVEL); GtkWidget* widget = gtk_radio_button_new_with_label(NULL, ""); + gtk_container_add(GTK_CONTAINER(wnd), widget); attr = GetDefaultAttributesFromGTKWidget(widget); - gtk_widget_destroy(widget); + gtk_widget_destroy(wnd); return attr; }