]> Pileus Git - ~andy/gtk/blobdiff - gdk/gdk.c
gdk: Add GDK_RENDERING environment variable
[~andy/gtk] / gdk / gdk.c
index 43d45f50d2720325f6618a8f117319bf3c3f6611..16b4e74ca536081f30644c2b26cfdfc69b143b54 100644 (file)
--- a/gdk/gdk.c
+++ b/gdk/gdk.c
@@ -215,6 +215,8 @@ gdk_add_option_entries_libgtk_only (GOptionGroup *group)
 void
 gdk_pre_parse_libgtk_only (void)
 {
+  const char *rendering_mode;
+
   gdk_initialized = TRUE;
 
   /* We set the fallback program class here, rather than lazily in
@@ -241,6 +243,17 @@ gdk_pre_parse_libgtk_only (void)
       g_unsetenv ("GDK_NATIVE_WINDOWS");
     }
 
+  rendering_mode = g_getenv ("GDK_RENDERING");
+  if (rendering_mode)
+    {
+      if (g_str_equal (rendering_mode, "similar"))
+        _gdk_rendering_mode = GDK_RENDERING_MODE_SIMILAR;
+      else if (g_str_equal (rendering_mode, "image"))
+        _gdk_rendering_mode = GDK_RENDERING_MODE_IMAGE;
+      else if (g_str_equal (rendering_mode, "recording"))
+        _gdk_rendering_mode = GDK_RENDERING_MODE_RECORDING;
+    }
+
   g_type_init ();
 
   /* Do any setup particular to the windowing system */