]> Dogcows Code - chaz/tint2/blobdiff - src/taskbar/task.c
rendering engine : _on_change_layout() called when pos/size changed
[chaz/tint2] / src / taskbar / task.c
index b132ae68e69e0a36666e59c0eb230c858af8af9f..7a5212e794fe9191e8b240c93a11d80f07f2bf99 100644 (file)
@@ -344,9 +344,6 @@ void draw_task (void *obj, cairo_t *c)
        Panel *panel = (Panel*)tsk->area.panel;
        //printf("draw_task %d %d\n", tsk->area.posx, tsk->area.posy);
 
-       long value[] = { panel->posx+tsk->area.posx, panel->posy+tsk->area.posy, tsk->area.width, tsk->area.height };
-       XChangeProperty (server.dsp, tsk->win, server.atom._NET_WM_ICON_GEOMETRY, XA_CARDINAL, 32, PropModeReplace, (unsigned char*)value, 4);
-
        if (panel->g_task.text) {
                /* Layout */
                layout = pango_cairo_create_layout (c);
@@ -389,6 +386,19 @@ void draw_task (void *obj, cairo_t *c)
 }
 
 
+void on_change_task (void *obj)
+{
+       Task *tsk = obj;
+       Panel *panel = (Panel*)tsk->area.panel;
+
+       long value[] = { panel->posx+tsk->area.posx, panel->posy+tsk->area.posy, tsk->area.width, tsk->area.height };
+       XChangeProperty (server.dsp, tsk->win, server.atom._NET_WM_ICON_GEOMETRY, XA_CARDINAL, 32, PropModeReplace, (unsigned char*)value, 4);
+       
+       // reset Pixmap when position/size changed
+       set_task_redraw(tsk);
+}
+
+
 Task *next_task(Task *tsk)
 {
        if (tsk == 0)
This page took 0.017217 seconds and 4 git commands to generate.