shithub: puzzles

Download patch

ref: 41cc7c868f72e3131a3d45e38994e9d473824bd1
parent: 1b2e4d525f5e5686afdbec09c7b796ff546c6357
author: Simon Tatham <anakin@pobox.com>
date: Sat Oct 3 08:28:26 EDT 2015

GTK 3 port: don't turn off drawing area double buffering.

I think I did this in GTK2 on the basis that our server-side cache
pixmap was double-buffering enough for us - any puzzle which erased a
big area with a background rectangle and then redrew over the top of
it would do so only on the off-screen pixmap, and the updates would
only be copied to the visible window after it was all done.

In GTK3, I don't think there's any need - this is all the usual way
things are done anyway, as far as I can see. So I've turned this call
back off, at least until I hear of a reason why I need it again.

--- a/gtk.c
+++ b/gtk.c
@@ -2573,7 +2573,7 @@
 	fe->statusbar = NULL;
 
     fe->area = gtk_drawing_area_new();
-#if GTK_CHECK_VERSION(2,0,0)
+#if GTK_CHECK_VERSION(2,0,0) && !GTK_CHECK_VERSION(3,0,0)
     gtk_widget_set_double_buffered(fe->area, FALSE);
 #endif
     {