aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar keis <keijser@gmail.com>2011-01-23 18:42:40 +0100
committerGravatar keis <keijser@gmail.com>2011-01-23 18:42:40 +0100
commitfc33a2fc3c27da78edb3db5c437e72537f718315 (patch)
treef0d0e9a8adbab6d54cac482a5b233a95c80e85e5 /src
parent835f5d8d09b429a4776192dbe00be5ae20704b16 (diff)
with gtk3: fix setting of background color
Diffstat (limited to 'src')
-rw-r--r--src/callbacks.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/callbacks.c b/src/callbacks.c
index fa2ed1f..8cfb073 100644
--- a/src/callbacks.c
+++ b/src/callbacks.c
@@ -47,15 +47,20 @@ set_authentication_handler() {
void
set_status_background() {
- GdkColor color;
- gdk_color_parse (uzbl.behave.status_background, &color);
/* labels and hboxes do not draw their own background. applying this
* on the vbox/main_window is ok as the statusbar is the only affected
* widget. (if not, we could also use GtkEventBox) */
- if (uzbl.gui.main_window)
- gtk_widget_modify_bg (uzbl.gui.main_window, GTK_STATE_NORMAL, &color);
- else if (uzbl.gui.plug)
- gtk_widget_modify_bg (GTK_WIDGET(uzbl.gui.plug), GTK_STATE_NORMAL, &color);
+ GtkWidget* widget = uzbl.gui.main_window ? uzbl.gui.main_window : GTK_WIDGET (uzbl.gui.plug);
+
+#if GTK_CHECK_VERSION(2,91,0)
+ GdkRGBA color;
+ gdk_rgba_parse (&color, uzbl.behave.status_background);
+ gtk_widget_override_background_color (widget, GTK_STATE_NORMAL, &color);
+#else
+ GdkColor color;
+ gdk_color_parse (uzbl.behave.status_background, &color);
+ gtk_widget_modify_bg (widget, GTK_STATE_NORMAL, &color);
+#endif
}
void