- taskbar->task_width = pixel_height;
- taskbar->task_modulo = modulo_height;
- taskbar->text_width = taskbar->area.width - (2 * panel->g_taskbar.area.paddingy) - panel->g_task.text_posx - panel->g_task.area.bg->border.width - panel->g_task.area.paddingx;
-
- // change pos_y and height for all tasks
- for (l = taskbar->area.list; l ; l = l->next) {
- tsk = l->data;
- if (!tsk->area.on_screen) continue;
- set_task_redraw(tsk); // always redraw task, because the background could have changed (taskbar_active_id)
- tsk->area.height = pixel_height;
-// TODO : move later (when posy is known)
-// long value[] = { panel->posx, panel->posy+y, panel->area.width, pixel_height };
-// XChangeProperty (server.dsp, tsk->win, server.atom._NET_WM_ICON_GEOMETRY, XA_CARDINAL, 32, PropModeReplace, (unsigned char*)value, 4);
-
- if (modulo_height) {
- tsk->area.height++;
- modulo_height--;
+ // resize SIZE_BY_LAYOUT objects
+ for (l = a->list ; l ; l = l->next) {
+ child = (Area*)l->data;
+ if (child->on_screen && child->size_mode == SIZE_BY_LAYOUT) {
+ old_height = child->height;
+ child->height = height;
+ if (modulo) {
+ child->height++;
+ modulo--;
+ }
+ if (child->height != old_height)
+ child->on_changed = 1;