From 8269d3d140bce7dafde5c8448a96d4a90bc557e7 Mon Sep 17 00:00:00 2001 From: Thierry Lorthiois Date: Sat, 8 Nov 2008 20:23:42 +0000 Subject: [PATCH] fixed bugs with new design (first step) --- ChangeLog | 8 +++- src/clock/clock.c | 14 +++++- src/clock/clock.h | 1 - src/config.c | 73 +++++++++++++--------------- src/panel.c | 108 +++++++++++++----------------------------- src/panel.h | 6 +-- src/server.c | 18 ------- src/taskbar/task.c | 7 +-- src/taskbar/task.h | 3 +- src/taskbar/taskbar.c | 83 ++++++++++++++++++++++---------- src/taskbar/taskbar.h | 3 +- src/tint.c | 34 +++++++------ src/tint2 | Bin 52668 -> 172493 bytes src/util/area.c | 63 ++++++++++++++---------- src/util/area.h | 6 +-- 15 files changed, 211 insertions(+), 216 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4004d80..2a19b34 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,13 @@ + + +2008-11-02 +- fixed bugs with new design +- panel.area manage the tree of visible objects + 2008-10-28 - fixed issue : "untitled task", "task button did not update", "window don't shade", - "error if I don't do 'make install", "Makefile error" + "error if I don't do 'make install'", "Makefile error" 2008-09-24 - change tintrc format diff --git a/src/clock/clock.c b/src/clock/clock.c index f91e969..fb5969b 100644 --- a/src/clock/clock.c +++ b/src/clock/clock.c @@ -27,6 +27,7 @@ #include "server.h" #include "area.h" #include "clock.h" +#include "panel.h" void init_clock(Clock *clock, int panel_height) @@ -40,6 +41,10 @@ void init_clock(Clock *clock, int panel_height) if (strchr(clock->time1_format, 'S') == NULL) clock->time_precision = 60; else clock->time_precision = 1; + clock->area.posy = panel.area.border.width + panel.area.paddingy; + clock->area.height = panel.area.height - (2 * clock->area.posy); + clock->area.redraw = 1; + gettimeofday(&clock->clock, 0); clock->clock.tv_sec -= clock->clock.tv_sec % clock->time_precision; @@ -72,6 +77,8 @@ int draw_foreground_clock (void *obj, cairo_t *c) if (clock->time2_format) strftime(buf_date, sizeof(buf_date), clock->time2_format, localtime(&clock->clock.tv_sec)); + //printf(" draw_foreground_clock : %s\n", buf_time); +redraw: layout = pango_cairo_create_layout (c); // check width @@ -90,11 +97,14 @@ int draw_foreground_clock (void *obj, cairo_t *c) new_width += (2*clock->area.paddingx) + (2*clock->area.border.width); if (new_width > clock->area.width || (new_width != clock->area.width && date_width > time_width)) { - printf("clock_width %d, new_width %d\n", clock->area.width, new_width); + //printf("clock_width %d, new_width %d\n", clock->area.width, new_width); + // resize clock clock->area.width = new_width; + panel.clock.area.posx = panel.area.width - panel.clock.area.width - panel.area.paddingx - panel.area.border.width; g_object_unref (layout); - return 1; + resize_taskbar(); + goto redraw; } // draw layout diff --git a/src/clock/clock.h b/src/clock/clock.h index 0d3e9e1..53c4969 100644 --- a/src/clock/clock.h +++ b/src/clock/clock.h @@ -13,7 +13,6 @@ typedef struct Clock { - // -------------------------------------------------- // always start with area Area area; diff --git a/src/config.c b/src/config.c index c38cfec..850fbc9 100644 --- a/src/config.c +++ b/src/config.c @@ -45,21 +45,24 @@ void cleanup_taskbar() -{ - Task *tsk; - Taskbar *tskbar; - GSList *l0; - for (l0 = panel.area.list; l0 ; l0 = l0->next) { - tskbar = l0->data; - GSList *l1; - for (l1 = tskbar->area.list; l1 ; l1 = l1->next) { - tsk = l1->data; +{ + free_area(&panel.area); + + int i, nb; + Task *tsk, *next; + + nb = panel.nb_desktop * panel.nb_monitor; + for (i=0 ; i < nb ; i++) { +/* TODO: voir ce code !! + for (tsk = panel.taskbar[i].tasklist; tsk ; tsk = next) { + next = tsk->next; remove_task (tsk); } - g_slist_free(tskbar->area.list); +*/ } - g_slist_free(panel.area.list); - panel.area.list = 0; + + free(panel.taskbar); + panel.taskbar = 0; } @@ -69,7 +72,7 @@ void cleanup () if (g_task.font_desc) pango_font_description_free(g_task.font_desc); if (panel.clock.time1_font_desc) pango_font_description_free(panel.clock.time1_font_desc); if (panel.clock.time2_font_desc) pango_font_description_free(panel.clock.time2_font_desc); - cleanup_taskbar(); + if (panel.taskbar) cleanup_taskbar(); if (panel.clock.time1_format) g_free(panel.clock.time1_format); if (panel.clock.time2_format) g_free(panel.clock.time2_format); if (server.monitor) free(server.monitor); @@ -473,37 +476,31 @@ void config_taskbar() fprintf(stderr, "tint2 warning : cannot found number of desktop.\n"); } - cleanup_taskbar(); + if (panel.taskbar) cleanup_taskbar(); panel.nb_desktop = server.nb_desktop; if (panel.mode == MULTI_MONITOR) panel.nb_monitor = server.nb_monitor; else panel.nb_monitor = 1; - - // TODO: mémoriser le pointeur sur la première - // malgré l'apparant désordre, les taskbars sont ordonnées - Taskbar *new_tskbar; + panel.taskbar = calloc(panel.nb_desktop * panel.nb_monitor, sizeof(Taskbar)); + g_slist_free(panel.area.list); + panel.area.list = 0; + + Taskbar *tskbar; for (i=0 ; i < panel.nb_desktop ; i++) { for (j=0 ; j < panel.nb_monitor ; j++) { - new_tskbar = calloc(1, sizeof(Taskbar)); - memcpy(&new_tskbar->area, &g_taskbar, sizeof(Area)); - new_tskbar->desktop = i; - new_tskbar->monitor = j; + tskbar = &panel.taskbar[index(i,j)]; + memcpy(&tskbar->area, &g_taskbar, sizeof(Area)); + tskbar->desktop = i; + tskbar->monitor = j; - panel.area.list = g_slist_append(panel.area.list, new_tskbar); + // TODO: redefinir panel.area.list en fonction des objets visibles + panel.area.list = g_slist_append(panel.area.list, tskbar); } } - /* - comment faire pour parcourir les barres de taches ? on ne peut pas se baser sur l'ordre des éléments !! - a t'on besoin de parcourir les barres de taches ?? OUI !! bof ?? - => resize_taskbar() dans panel.c => - => task_refresh_tasklist () dans taskbar.c - => Task *task_get_task (Window win) dans taskbar.c - => event_button_press (int x, int y) dans tint.c => area->event_button_press() est conseillé !! - cela enlève aussi l'organisation des barres de taches en tableau à 2 dimensions - il est possible de mémoriser un pointeur sur la première barre de taches -*/ + if (panel.clock.time1_format) + panel.area.list = g_slist_append(panel.area.list, &panel.clock); - //printf("tasbar (desktop x monitor) : (%d x %d)\n", panel.nb_desktop, panel.nb_monitor); + //printf("taskbar (desktop x monitor) : (%d x %d)\n", panel.nb_desktop, panel.nb_monitor); resize_taskbar(); task_refresh_tasklist (); panel.refresh = 1; @@ -529,7 +526,7 @@ void config_finish () if (!server.monitor[panel.monitor].width || !server.monitor[panel.monitor].height) fprintf(stderr, "tint2 error : invalid monitor size.\n"); } - + if (!panel.area.width) panel.area.width = server.monitor[panel.monitor].width; // taskbar @@ -551,9 +548,6 @@ void config_finish () panel.area.border.rounded = panel.area.height/2; // clock - panel.clock.area.posy = panel.area.border.width + panel.area.paddingy; - panel.clock.area.height = panel.area.height - (2 * panel.clock.area.posy); - panel.clock.area.redraw = 1; init_clock(&panel.clock, panel.area.height); // compute vertical position : text and icon @@ -569,7 +563,8 @@ void config_finish () } config_taskbar(); - + visible_object(); + // cleanup background list GSList *l0; for (l0 = list_back; l0 ; l0 = l0->next) { diff --git a/src/panel.c b/src/panel.c index 208922c..f3bd2be 100644 --- a/src/panel.c +++ b/src/panel.c @@ -31,43 +31,22 @@ void visual_refresh () { - server_refresh_root_pixmap (); - - draw (&panel.area); - refresh (&panel.area); + if (!server.root_pmap) { + Pixmap wall = get_root_pixmap(); + + server.root_pmap = server_create_pixmap (panel.area.width, panel.area.height); + + XCopyArea (server.dsp, wall, server.root_pmap, server.gc, server.posx, server.posy, panel.area.width, panel.area.height, 0, 0); - if (panel.clock.time1_format) { - if (panel.clock.area.redraw) - panel.refresh = 1; - if (draw (&panel.clock.area)) { - panel.clock.area.redraw = 1; - draw (&panel.clock.area); - resize_clock(); - resize_taskbar(); - redraw(&panel.area); - } - refresh (&panel.clock.area); + redraw (&panel.area); } + + if (server.pmap) XFreePixmap (server.dsp, server.pmap); + server.pmap = server_create_pixmap (panel.area.width, panel.area.height); - // TODO: ne pas afficher les taskbar invisibles - //if (panel.mode != MULTI_DESKTOP && desktop != server.desktop) continue; - Task *tsk; - Taskbar *tskbar; - GSList *l0; - for (l0 = panel.area.list; l0 ; l0 = l0->next) { - tskbar = l0->data; - draw (&tskbar->area); - refresh (&tskbar->area); - - GSList *l1; - for (l1 = tskbar->area.list; l1 ; l1 = l1->next) { - tsk = l1->data; - draw(&tsk->area); + XCopyArea (server.dsp, server.root_pmap, server.pmap, server.gc, 0, 0, panel.area.width, panel.area.height, 0, 0); - if (tsk == panel.task_active) refresh (&tsk->area_active); - else refresh (&tsk->area); - } - } + draw (&panel.area); XCopyArea (server.dsp, server.pmap, window.main_win, server.gc, 0, 0, panel.area.width, panel.area.height, 0, 0); XFlush(server.dsp); @@ -103,9 +82,9 @@ void set_panel_properties (Window win) struts[10] = server.posx; struts[11] = server.posx + panel.area.width; } - XChangeProperty (server.dsp, win, server.atom._NET_WM_STRUT_PARTIAL, XA_CARDINAL, 32, PropModeReplace, (unsigned char *) &struts, 12); - // Old specification + // Old specification : fluxbox need _NET_WM_STRUT. XChangeProperty (server.dsp, win, server.atom._NET_WM_STRUT, XA_CARDINAL, 32, PropModeReplace, (unsigned char *) &struts, 4); + XChangeProperty (server.dsp, win, server.atom._NET_WM_STRUT_PARTIAL, XA_CARDINAL, 32, PropModeReplace, (unsigned char *) &struts, 12); // Sticky and below other window val = 0xFFFFFFFF; @@ -163,50 +142,29 @@ void window_draw_panel () } -void resize_clock() +void visible_object() { - panel.clock.area.posx = panel.area.width - panel.clock.area.width - panel.area.paddingx - panel.area.border.width; -} - - -// initialise taskbar posx and width -void resize_taskbar() -{ - int taskbar_width, modulo_width, taskbar_on_screen; + if (panel.area.list) { + g_slist_free(panel.area.list); + panel.area.list = 0; + } - if (panel.mode == MULTI_DESKTOP) taskbar_on_screen = panel.nb_desktop; - else taskbar_on_screen = panel.nb_monitor; - - taskbar_width = panel.area.width - (2 * panel.area.paddingx) - (2 * panel.area.border.width); - if (panel.clock.time1_format) - taskbar_width -= (panel.clock.area.width + panel.area.paddingx); - taskbar_width = (taskbar_width - ((taskbar_on_screen-1) * panel.area.paddingx)) / taskbar_on_screen; - - if (taskbar_on_screen > 1) - modulo_width = (taskbar_width - ((taskbar_on_screen-1) * panel.area.paddingx)) % taskbar_on_screen; - else - modulo_width = 0; - - int posx, modulo, i; - Taskbar *tskbar; - GSList *l0; - for (i = 0, l0 = panel.area.list; l0 ; i++, l0 = l0->next) { - if ((i % taskbar_on_screen) == 0) { - posx = panel.area.border.width + panel.area.paddingx; - modulo = modulo_width; - } - else posx += taskbar_width + panel.area.paddingx; - - tskbar = l0->data; - tskbar->area.posx = posx; - tskbar->area.width = taskbar_width; - if (modulo) { - tskbar->area.width++; - modulo--; + // list of visible objects + // start with clock because draw(clock) can resize others object + if (panel.clock.time1_format) + panel.area.list = g_slist_append(panel.area.list, &panel.clock); + + int i, j; + Taskbar *taskbar; + for (i=0 ; i < panel.nb_desktop ; i++) { + for (j=0 ; j < panel.nb_monitor ; j++) { + taskbar = &panel.taskbar[index(i,j)]; + if (panel.mode != MULTI_DESKTOP && taskbar->desktop != server.desktop) continue; + + panel.area.list = g_slist_append(panel.area.list, taskbar); } - - resize_tasks(tskbar); } + panel.refresh = 1; } diff --git a/src/panel.h b/src/panel.h index 1acd611..54a74e9 100644 --- a/src/panel.h +++ b/src/panel.h @@ -26,7 +26,6 @@ enum { LEFT=0x01, RIGHT=0x02, CENTER=0X04, TOP=0X08, BOTTOM=0x10 }; typedef struct { - // -------------------------------------------------- // always start with area Area area; @@ -49,7 +48,7 @@ typedef struct { // -------------------------------------------------- // taskbar point to the first taskbar in panel.area.list. number of tasbar == nb_desktop x nb_monitor. - //Taskbar *taskbar; + Taskbar *taskbar; int mode; int nb_desktop; int nb_monitor; @@ -78,8 +77,7 @@ Panel panel; void visual_refresh (); void set_panel_properties (Window win); void window_draw_panel (); -void resize_clock(); -void resize_taskbar(); +void visible_object(); #endif diff --git a/src/server.c b/src/server.c index 3f75f21..2c34415 100644 --- a/src/server.c +++ b/src/server.c @@ -191,24 +191,6 @@ Pixmap get_root_pixmap () } */ -void server_refresh_root_pixmap () -{ - if (!server.root_pmap) { - Pixmap wall = get_root_pixmap(); - - server.root_pmap = server_create_pixmap (panel.area.width, panel.area.height); - - XCopyArea (server.dsp, wall, server.root_pmap, server.gc, server.posx, server.posy, panel.area.width, panel.area.height, 0, 0); - - panel.area.redraw = 1; - } - - if (server.pmap) XFreePixmap (server.dsp, server.pmap); - server.pmap = server_create_pixmap (panel.area.width, panel.area.height); - - XCopyArea (server.dsp, server.root_pmap, server.pmap, server.gc, 0, 0, panel.area.width, panel.area.height, 0, 0); -} - void get_monitors() { diff --git a/src/taskbar/task.c b/src/taskbar/task.c index f0b9924..3c4e6ed 100644 --- a/src/taskbar/task.c +++ b/src/taskbar/task.c @@ -68,11 +68,11 @@ void add_task (Window win) } Taskbar *tskbar; - tskbar = g_slist_nth_data(panel.area.list, index(desktop, monitor)); + tskbar = &panel.taskbar[index(desktop, monitor)]; new_tsk->area.parent = tskbar; tskbar->area.list = g_slist_append(tskbar->area.list, new_tsk); - if (resize_tasks (tskbar)) + if (resize_tasks (tskbar)) redraw (&tskbar->area); } @@ -263,7 +263,8 @@ int draw_foreground_task (void *obj, cairo_t *c) Task *tsk = obj; cairo_surface_t *cs; cairo_t *ca; - + //printf(" draw_foreground_task\n"); + draw_task_title (c, tsk, 0); // draw active pmap diff --git a/src/taskbar/task.h b/src/taskbar/task.h index bab6c74..b0c445a 100644 --- a/src/taskbar/task.h +++ b/src/taskbar/task.h @@ -17,6 +17,7 @@ typedef struct { Area area; Area area_active; + Area area_inactive; int text; int icon; @@ -38,10 +39,10 @@ typedef struct { // -------------------------------------------------- // task parameter typedef struct { - // -------------------------------------------------- // always start with area Area area; Area area_active; + Area area_inactive; // TODO: group task with list of windows here Window win; diff --git a/src/taskbar/taskbar.c b/src/taskbar/taskbar.c index 05ba366..db08f6d 100644 --- a/src/taskbar/taskbar.c +++ b/src/taskbar/taskbar.c @@ -35,21 +35,17 @@ Task *task_get_task (Window win) { - Taskbar *tskbar; Task *tsk; GSList *l0; + int i, nb; - for (l0 = panel.area.list; l0 ; l0 = l0->next) { - tskbar = l0->data; - GSList *l1; - for (l1 = tskbar->area.list; l1 ; l1 = l1->next) { - tsk = l1->data; + nb = panel.nb_desktop * panel.nb_monitor; + for (i=0 ; i < nb ; i++) { + for (l0 = panel.taskbar[i].area.list; l0 ; l0 = l0->next) { + tsk = l0->data; if (win == tsk->win) return tsk; } } - - // nb = panel.nb_desktop * panel.nb_monitor; - //printf("task_get_task return 0\n"); return 0; } @@ -57,24 +53,22 @@ Task *task_get_task (Window win) void task_refresh_tasklist () { Window *win, active_win; - int num_results, i, j; + int num_results, i, j, nb; + GSList *l0; + Task *tsk; win = server_get_property (server.root_win, server.atom._NET_CLIENT_LIST, XA_WINDOW, &num_results); if (!win) return; - /* Remove any old and set active win */ + // Remove any old and set active win active_win = window_get_active (); - Task *tsk; - Taskbar *tskbar; - GSList *l0; - for (l0 = panel.area.list; l0 ; l0 = l0->next) { - tskbar = l0->data; - GSList *l1; - for (l1 = tskbar->area.list; l1 ; l1 = l1->next) { - tsk = l1->data; - + nb = panel.nb_desktop * panel.nb_monitor; + for (i=0 ; i < nb ; i++) { + for (l0 = panel.taskbar[i].area.list; l0 ; l0 = l0->next) { + tsk = l0->data; + if (tsk->win == active_win) panel.task_active = tsk; for (j = 0; j < num_results; j++) { @@ -83,11 +77,11 @@ void task_refresh_tasklist () if (tsk->win != win[j]) remove_task (tsk); } } - - /* Add any new */ - for (i = 0; i < num_results; i++) { - if (!task_get_task (win[i])) add_task (win[i]); - } + + // Add any new + for (i = 0; i < num_results; i++) + if (!task_get_task (win[i])) + add_task (win[i]); XFree (win); } @@ -141,3 +135,42 @@ int resize_tasks (Taskbar *taskbar) } +// initialise taskbar posx and width +void resize_taskbar() +{ + int taskbar_width, modulo_width, taskbar_on_screen; + + if (panel.mode == MULTI_DESKTOP) taskbar_on_screen = panel.nb_desktop; + else taskbar_on_screen = panel.nb_monitor; + + taskbar_width = panel.area.width - (2 * panel.area.paddingx) - (2 * panel.area.border.width); + if (panel.clock.time1_format) + taskbar_width -= (panel.clock.area.width + panel.area.paddingx); + taskbar_width = (taskbar_width - ((taskbar_on_screen-1) * panel.area.paddingx)) / taskbar_on_screen; + + if (taskbar_on_screen > 1) + modulo_width = (taskbar_width - ((taskbar_on_screen-1) * panel.area.paddingx)) % taskbar_on_screen; + else + modulo_width = 0; + + int posx, modulo, i, nb; + nb = panel.nb_desktop * panel.nb_monitor; + for (i=0 ; i < nb ; i++) { + if ((i % taskbar_on_screen) == 0) { + posx = panel.area.border.width + panel.area.paddingx; + modulo = modulo_width; + } + else posx += taskbar_width + panel.area.paddingx; + + panel.taskbar[i].area.posx = posx; + panel.taskbar[i].area.width = taskbar_width; + if (modulo) { + panel.taskbar[i].area.width++; + modulo--; + } + + resize_tasks(&panel.taskbar[i]); + } +} + + diff --git a/src/taskbar/taskbar.h b/src/taskbar/taskbar.h index 3b3560d..b35c60f 100644 --- a/src/taskbar/taskbar.h +++ b/src/taskbar/taskbar.h @@ -8,7 +8,6 @@ // -------------------------------------------------- // taskbar parameter typedef struct { - // -------------------------------------------------- // always start with area Area area; @@ -33,6 +32,8 @@ void task_refresh_tasklist (); // return 1 if task_width changed int resize_tasks (Taskbar *tskbar); +void resize_taskbar(); + //void add_taskbar(Area *a); #endif diff --git a/src/tint.c b/src/tint.c index 56cbc1c..b0959ec 100644 --- a/src/tint.c +++ b/src/tint.c @@ -158,6 +158,8 @@ void event_button_press (int x, int y) void event_button_release (int button, int x, int y) { int action = TOGGLE_ICONIFY; + // TODO: convert event_button_press(int x, int y) to area->event_button_press() + // if systray is ok switch (button) { case 2: @@ -173,9 +175,6 @@ void event_button_release (int button, int x, int y) action = panel.mouse_scroll_down; break; } - - // TODO: ne pas afficher les taskbar invisibles - //if (panel.mode != MULTI_DESKTOP && desktop != server.desktop) continue; // search taskbar Taskbar *tskbar; @@ -237,13 +236,15 @@ void event_property_notify (Window win, Atom at) /* Change number of desktops */ else if (at == server.atom._NET_NUMBER_OF_DESKTOPS) { config_taskbar(); + visible_object(); redraw(&panel.area); - panel.refresh = 1; } /* Change desktop */ else if (at == server.atom._NET_CURRENT_DESKTOP) { server.desktop = server_get_current_desktop (); - if (panel.mode != MULTI_DESKTOP) panel.refresh = 1; + if (panel.mode != MULTI_DESKTOP) { + visible_object(); + } } /* Window list */ else if (at == server.atom._NET_CLIENT_LIST) { @@ -313,20 +314,14 @@ void event_configure_notify (Window win) tsk = task_get_task (win); if (!tsk) return; - -/* TODO ??? voir ancien code !! - Taskbar *tskbar; - tskbar = tsk->area.parent; - int new_monitor = window_get_monitor (win); - int desktop = tskbar->desktop; - // task on the same monitor - if (tsk->id_taskbar == index(desktop, new_monitor)) return; - - add_task (tsk->win); - remove_task (tsk); - panel.refresh = 1; - */ + Taskbar *tskbar = tsk->area.parent; + if (tskbar->monitor != window_get_monitor (win)) { + // task on another monitor + add_task (tsk->win); + remove_task (tsk); + panel.refresh = 1; + } } @@ -375,6 +370,9 @@ load_config: config_finish (); window_draw_panel (); + + // BUG: draw(clock) is needed here, but 'on the paper' it's not necessary. + draw(&panel.clock.area); x11_fd = ConnectionNumber (server.dsp); XSync (server.dsp, False); diff --git a/src/tint2 b/src/tint2 index ab391d4abcc4473b3b55534ae2f627fc36f63597..ee44748c48f822df15c394af9307407a623935a2 100755 GIT binary patch literal 172493 zcmd?Sdwf*Yxdyz0iH;adP@+*$M@2(7w7~jZNbitKm zI3~g^g}`kNL((Ok8s&jM4>Y=52&AK4OoMJR;K@jv&Iy>#rY-)!UjcB`pB?|&>dIx; zR##kIU0EAgbxmX4HP@@SNLqBiV_}KJr5=n!d<$F{j(=<5m=_)_6XTM4%iZUY?uX2DH^tAo1-?sB+lxJTh0gR6qO z8Ez9CwJwKS2FJeu9I_^VA??#^NC=;y!};)=;AU%>UNhV!a96`^hWip6|E_|&PeSoW zjt;KZKJCUom-1rIVjXIPUjerSZY|t+xG8Y_W8LGQAMOze8OD70i{a+LJp^|bToGIu zTo&BjaJg__gyY{?a2La!3TMJy05|gQ3qahWk(Kbr!HtFUXdJzp;A-LAa6!14aOc3C z=r8R=L`^$I`==d;H}g37|1Z#EAmpSGg09u@`3d;b6T%E$s^N=9;BD|cI{<%TLYToD z5@0lS`J0e{WAMrmuoLiw8pr;H?Qouk>D`_XX7B;H$#9F{&W2k7$G<$d84`*=?$p8i z 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

e6QOT!xa_JDt38_?warR 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 literal 52668 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

awJ$RsimnumS?ytlY?F8*ahOjYc$9!k+ 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 diff --git a/src/util/area.c b/src/util/area.c index 2f44cf5..c1347a1 100644 --- a/src/util/area.c +++ b/src/util/area.c @@ -30,7 +30,6 @@ #include "area.h" - void redraw (Area *a) { a->redraw = 1; @@ -43,34 +42,41 @@ void redraw (Area *a) int draw (Area *a) { - if (!a->redraw) return 0; - cairo_surface_t *cs; cairo_t *c; int ret = 0; - if (a->pmap) XFreePixmap (server.dsp, a->pmap); - a->pmap = server_create_pixmap (a->width, a->height); + if (a->redraw) { + //printf("begin draw area\n"); + if (a->pmap) XFreePixmap (server.dsp, a->pmap); + a->pmap = server_create_pixmap (a->width, a->height); - // add layer of root pixmap - XCopyArea (server.dsp, server.pmap, a->pmap, server.gc, a->posx, a->posy, a->width, a->height, 0, 0); + // add layer of root pixmap + XCopyArea (server.dsp, server.pmap, a->pmap, server.gc, a->posx, a->posy, a->width, a->height, 0, 0); - cs = cairo_xlib_surface_create (server.dsp, a->pmap, server.visual, a->width, a->height); - c = cairo_create (cs); + cs = cairo_xlib_surface_create (server.dsp, a->pmap, server.visual, a->width, a->height); + c = cairo_create (cs); - draw_background (a, c); - - if (a->draw_foreground) { - ret = a->draw_foreground(a, c); + draw_background (a, c); + + if (a->draw_foreground) + ret = a->draw_foreground(a, c); + + cairo_destroy (c); + cairo_surface_destroy (cs); + a->redraw = 0; } - else { - // parcours de la liste des sous objets + + XCopyArea (server.dsp, a->pmap, server.pmap, server.gc, 0, 0, a->width, a->height, a->posx, a->posy); + + GSList *l = a->list; + if (l) { + // draw child object + for (; l ; l = l->next) + draw(l->data); } - cairo_destroy (c); - cairo_surface_destroy (cs); - a->redraw = 0; - + //printf("end draw area\n"); return ret; } @@ -153,12 +159,6 @@ void draw_background (Area *a, cairo_t *c) } -void refresh (Area *a) -{ - XCopyArea (server.dsp, a->pmap, server.pmap, server.gc, 0, 0, a->width, a->height, a->posx, a->posy); -} - - void remove_area (Area *a) { Area *parent; @@ -180,3 +180,16 @@ void add_area (Area *a) } + +void free_area (Area *a) +{ + GSList *l0; + for (l0 = a->list; l0 ; l0 = l0->next) + free_area (l0->data); + + if (a->list) { + g_slist_free(a->list); + a->list = 0; + } +} + diff --git a/src/util/area.h b/src/util/area.h index 1dc6f18..5be636f 100644 --- a/src/util/area.h +++ b/src/util/area.h @@ -7,8 +7,8 @@ * Area manage the background and border drawing, size and padding. * Area manage also the tree of visible objects * panel -> taskbars -> tasks -* -> clock * -> systray -> icons +* -> clock * * un objet comprend les actions: * 1) redraw(obj) @@ -110,7 +110,7 @@ typedef struct { void (*add_child)(void *obj); int (*remove_child)(void *obj); - // list of child + // list of child : Area object GSList *list; } Area; @@ -123,9 +123,9 @@ void redraw (Area *a); int draw (Area *a); void draw_background (Area *a, cairo_t *c); -void refresh (Area *a); void remove_area (Area *a); void add_area (Area *a); +void free_area (Area *a); #endif -- 2.44.0