]> Dogcows Code - chaz/tint2/blobdiff - src/taskbar/task.c
cleanup code
[chaz/tint2] / src / taskbar / task.c
index 06fdb84f0013b690c9d8d5fe71e4a4a97e9fa0ab..83e827f5247ef181e1df0e51e5c95186f0c8b823 100644 (file)
@@ -209,7 +209,7 @@ void get_icon (Task *tsk)
        int i;
        Imlib_Image img = NULL;
        XWMHints *hints = 0;
-       int32_t *data = 0;
+       gulong *data = 0;
 
        int k;
        for (k=0; k<TASK_STATE_COUNT; ++k) {
@@ -224,10 +224,9 @@ void get_icon (Task *tsk)
        if (data) {
                // get ARGB icon
                int w, h;
-               int32_t *tmp_data;
+               gulong *tmp_data;
 
                tmp_data = get_best_icon (data, get_icon_count (data, i), i, &w, &h, panel->g_task.icon_size1);
-
 #ifdef __x86_64__
                DATA32 icon_data[w * h];
                int length = w * h;
@@ -343,6 +342,7 @@ void draw_task (void *obj, cairo_t *c)
        Color *config_text;
        int width=0, height;
        Panel *panel = (Panel*)tsk->area.panel;
+       //printf("draw_task %d %d\n", tsk->area.posx, tsk->area.posy);
 
        if (panel->g_task.text) {
                /* Layout */
@@ -444,9 +444,11 @@ void active_task()
        //printf("Change active task %ld\n", w1);
 
        if (w1) {
-               Window w2;
-               if (XGetTransientForHint(server.dsp, w1, &w2) != 0)
-                       if (w2 && !task_get_tasks(w1)) w1 = w2;
+               if (!task_get_tasks(w1)) {
+                       Window w2;
+                       while (XGetTransientForHint(server.dsp, w1, &w2))
+                               w1 = w2;
+               }
                set_task_state((task_active = task_get_task(w1)), TASK_ACTIVE);
        }
 }
This page took 0.020433 seconds and 4 git commands to generate.