]> Dogcows Code - chaz/openbox/commitdiff
when colormap changes and it is installed, reinstall the new one
authorDana Jansens <danakj@orodu.net>
Sun, 27 May 2007 22:39:30 +0000 (22:39 +0000)
committerDana Jansens <danakj@orodu.net>
Sun, 27 May 2007 22:39:30 +0000 (22:39 +0000)
also add a debug print

openbox/client.c

index 8bdd092da23402950145fa4768e6185faed0545c..3f891b5a4712cd0a676fb0ab114da019d342c1e5 100644 (file)
@@ -1534,7 +1534,16 @@ void client_get_colormap(ObClient *self)
 
 void client_update_colormap(ObClient *self, Colormap colormap)
 {
-    self->colormap = colormap;
+    if (colormap == self->colormap) return;
+
+    ob_debug("Setting client %s colormap: 0x%x\n", self->title, colormap);
+
+    if (client_focused(self)) {
+        screen_install_colormap(self, FALSE); /* uninstall old one */
+        self->colormap = colormap;
+        screen_install_colormap(self, FALSE); /* install new one */
+    } else
+        self->colormap = colormap;
 }
 
 void client_update_normal_hints(ObClient *self)
This page took 0.029506 seconds and 4 git commands to generate.