Support new GtkStatusbar layout and the old layout

This commit is contained in:
Christian Dywan 2009-11-17 18:51:38 +01:00
parent d3e5d1af23
commit 3fc0c192fd

View file

@ -5379,6 +5379,7 @@ midori_browser_init (MidoriBrowser* browser)
GtkWidget* vpaned; GtkWidget* vpaned;
GtkToolItem* toolitem; GtkToolItem* toolitem;
GtkRcStyle* rcstyle; GtkRcStyle* rcstyle;
GtkWidget* label;
GtkWidget* scrolled; GtkWidget* scrolled;
GtkWidget* icon; GtkWidget* icon;
@ -5858,20 +5859,22 @@ midori_browser_init (MidoriBrowser* browser)
browser->statusbar = gtk_statusbar_new (); browser->statusbar = gtk_statusbar_new ();
/* Rearrange the statusbar packing. This is necessariy to keep /* Rearrange the statusbar packing. This is necessariy to keep
themes happy while there is no support from GtkStatusbar. */ themes happy while there is no support from GtkStatusbar. */
#if 1 label = GTK_STATUSBAR (browser->statusbar)->label;
browser->statusbar_contents = gtk_hbox_new (FALSE, 4); if (GTK_IS_BOX (gtk_widget_get_parent (label)))
gtk_widget_show (browser->statusbar_contents); browser->statusbar_contents = gtk_widget_get_parent (label);
g_object_ref (GTK_STATUSBAR (browser->statusbar)->label); else
gtk_container_remove (GTK_CONTAINER (GTK_STATUSBAR (browser->statusbar)->frame), {
GTK_STATUSBAR (browser->statusbar)->label); browser->statusbar_contents = gtk_hbox_new (FALSE, 4);
gtk_box_pack_start (GTK_BOX (browser->statusbar_contents), gtk_widget_show (browser->statusbar_contents);
GTK_STATUSBAR (browser->statusbar)->label, TRUE, TRUE, 0); g_object_ref (GTK_STATUSBAR (browser->statusbar)->label);
g_object_unref (GTK_STATUSBAR (browser->statusbar)->label); gtk_container_remove (
gtk_container_add (GTK_CONTAINER (GTK_STATUSBAR (browser->statusbar)->frame), GTK_CONTAINER (GTK_STATUSBAR (browser->statusbar)->frame), label);
browser->statusbar_contents); gtk_box_pack_start (GTK_BOX (browser->statusbar_contents),
#else label, TRUE, TRUE, 0);
browser->statusbar_contents = browser->statusbar; g_object_unref (label);
#endif gtk_container_add (GTK_CONTAINER (GTK_STATUSBAR (browser->statusbar)->frame),
browser->statusbar_contents);
}
gtk_box_pack_start (GTK_BOX (vbox), browser->statusbar, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (vbox), browser->statusbar, FALSE, FALSE, 0);
browser->progressbar = gtk_progress_bar_new (); browser->progressbar = gtk_progress_bar_new ();