aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2015-10-03 12:28:17 +0100
committerSimon Tatham <anakin@pobox.com>2015-10-03 16:07:19 +0100
commit88b38f51689fa363f665bd136242938d9107b484 (patch)
treeb86746cb986ed79e54ca63e31c1bb12781dd4776
parentd6210656b8ee6e182a9f879a4089d7e6f3fdf570 (diff)
downloadpuzzles-88b38f51689fa363f665bd136242938d9107b484.zip
puzzles-88b38f51689fa363f665bd136242938d9107b484.tar.gz
puzzles-88b38f51689fa363f665bd136242938d9107b484.tar.bz2
puzzles-88b38f51689fa363f665bd136242938d9107b484.tar.xz
GTK 3 port: use GdkRGBA for the window background colour.
Suits our internal API better, anyway, with RGB components being floats ranging from 0 to 1.
-rw-r--r--gtk.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/gtk.c b/gtk.c
index 4309f6d..c3c10a5 100644
--- a/gtk.c
+++ b/gtk.c
@@ -268,6 +268,15 @@ static void set_colour(frontend *fe, int colour)
static void set_window_background(frontend *fe, int colour)
{
+#if GTK_CHECK_VERSION(3,0,0)
+ GdkRGBA rgba;
+ rgba.red = fe->colours[3*colour + 0];
+ rgba.green = fe->colours[3*colour + 1];
+ rgba.blue = fe->colours[3*colour + 2];
+ rgba.alpha = 1.0;
+ gdk_window_set_background_rgba(gtk_widget_get_window(fe->area), &rgba);
+ gdk_window_set_background_rgba(gtk_widget_get_window(fe->window), &rgba);
+#else
GdkColormap *colmap;
colmap = gdk_colormap_get_system();
@@ -283,6 +292,7 @@ static void set_window_background(frontend *fe, int colour)
&fe->background);
gdk_window_set_background(gtk_widget_get_window(fe->window),
&fe->background);
+#endif
}
static PangoLayout *make_pango_layout(frontend *fe)