diff options
| author | Dana Jansens <danakj@orodu.net> | 2007-05-27 22:39:30 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2007-05-27 22:39:30 +0000 |
| commit | 65bf23c27d99fd1d025c28cd3cae5bf918f8ca8b (patch) | |
| tree | 589b2ba43ec27bfe6e3d012002ddaffebc0b3832 /openbox | |
| parent | a59540f25aed8551262a89b6426b201546a8418c (diff) | |
when colormap changes and it is installed, reinstall the new one
also add a debug print
Diffstat (limited to 'openbox')
| -rw-r--r-- | openbox/client.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/openbox/client.c b/openbox/client.c index 8bdd092d..3f891b5a 100644 --- a/openbox/client.c +++ b/openbox/client.c @@ -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) |
