dock->area.height += ob_rr_theme->obwidth * 2;
}
+ /* screen_resize() depends on this function to call screen_update_areas(),
+ so if this changes, also update screen_resize(). */
screen_update_areas();
}
if (ob_state() != OB_STATE_RUNNING)
return;
- screen_update_areas();
+ /* this calls screen_update_areas(), which we need ! */
dock_configure();
- for (it = client_list; it; it = g_list_next(it))
- client_move_onscreen(it->data, FALSE);
+ if (oldw)
+ for (it = client_list; it; it = g_list_next(it))
+ client_move_onscreen(it->data, FALSE);
}
void screen_set_num_desktops(guint num)
dims, 4 * screen_num_desktops);
/* the area has changed, adjust all the windows if they need it */
- for (it = onscreen; it; it = g_list_next(it)) {
- client_move_onscreen(it->data, FALSE);
+ for (it = onscreen; it; it = g_list_next(it))
client_reconfigure(it->data, FALSE);
- }
g_free(dims);
}