less redundant calls to screen_update_areas() and client_move_onscreen()
Dana Jansens danakj@orodu.net
2 files changed,
7 insertions(+),
6 deletions(-)
M
openbox/dock.c
→
openbox/dock.c
@@ -551,6 +551,8 @@ dock->area.width += ob_rr_theme->obwidth * 2;
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(); }
M
openbox/screen.c
→
openbox/screen.c
@@ -500,11 +500,12 @@
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)@@ -1458,10 +1459,8 @@ OBT_PROP_SETA32(obt_root(ob_screen), NET_WORKAREA, CARDINAL,
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); }