]> Dogcows Code - chaz/tint2/blobdiff - src/systray/systraybar.c
*fix* issue 272
[chaz/tint2] / src / systray / systraybar.c
index a6fec3ae56c24d9de722c69f157db26851e19c55..5a380c192302ebc3c7f5079d57374588f00eda52 100644 (file)
@@ -374,9 +374,11 @@ gboolean add_icon(Window id)
        if ( XGetWindowAttributes(server.dsp, id, &attr) == False ) return FALSE;
        unsigned long mask = 0;
        XSetWindowAttributes set_attr;
+       Visual* visual = server.visual;
        //printf("icon with depth: %d, width %d, height %d\n", attr.depth, attr.width, attr.height);
        printf("icon with depth: %d\n", attr.depth);
        if (attr.depth != server.depth || systray.alpha != 100 || systray.brightness != 0 || systray.saturation != 0) {
+               visual = attr.visual;
                set_attr.colormap = attr.colormap;
                set_attr.background_pixel = 0;
                set_attr.border_pixel = 0;
@@ -387,7 +389,7 @@ gboolean add_icon(Window id)
                mask = CWBackPixmap;
        }
        Window parent_window;
-       parent_window = XCreateWindow(server.dsp, panel->main_win, 0, 0, 30, 30, 0, attr.depth, InputOutput, attr.visual, mask, &set_attr);
+       parent_window = XCreateWindow(server.dsp, panel->main_win, 0, 0, 30, 30, 0, attr.depth, InputOutput, visual, mask, &set_attr);
        old = XSetErrorHandler(window_error_handler);
        XReparentWindow(server.dsp, id, parent_window, 0, 0);
        XSync(server.dsp, False);
This page took 0.020799 seconds and 4 git commands to generate.