X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fscreen.c;h=92d4d9a421bac5db1a62a8b59fc81cc9fee8f6b4;hb=15d615853671b0988b9a87720cac2762c702f28b;hp=054a1c5e7d14197ca7511c74d2f3941fbbe56289;hpb=33ef4736c078f7f0b1b7e8cb8124dd2f31b6c092;p=chaz%2Fopenbox diff --git a/openbox/screen.c b/openbox/screen.c index 054a1c5e..92d4d9a4 100644 --- a/openbox/screen.c +++ b/openbox/screen.c @@ -1206,20 +1206,8 @@ void screen_update_areas() dims, 4 * screen_num_desktops * screen_num_monitors); /* the area has changed, adjust all the windows if they need it */ - for (it = client_list; it; it = g_list_next(it)) { - gint x, y, w, h, lw, lh; - ObClient *client = it->data; - - RECT_TO_DIMS(client->area, x, y, w, h); - client_try_configure(client, &x, &y, &w, &h, &lw, &lh, FALSE); - if (!RECT_EQUAL_DIMS(client->area, x, y, w, h)) { - gulong ignore_start; - - ignore_start = event_start_ignore_all_enters(); - client_configure(client, x, y, w, h, FALSE, TRUE); - event_end_ignore_all_enters(ignore_start); - } - } + for (it = client_list; it; it = g_list_next(it)) + client_reconfigure(it->data, FALSE); g_free(dims); } @@ -1341,28 +1329,28 @@ Rect* screen_area(guint desktop, guint head, Rect *search) for (it = struts_left; it; it = g_slist_next(it)) { ObScreenStrut *s = it->data; - if (s->desktop == d && + if ((s->desktop == d || s->desktop == DESKTOP_ALL) && STRUT_LEFT_IN_SEARCH(s->strut, search) && !STRUT_LEFT_IGNORE(s->strut, us, search)) l = MAX(l, al + s->strut->left); } for (it = struts_top; it; it = g_slist_next(it)) { ObScreenStrut *s = it->data; - if (s->desktop == d && + if ((s->desktop == d || s->desktop == DESKTOP_ALL) && STRUT_TOP_IN_SEARCH(s->strut, search) && !STRUT_TOP_IGNORE(s->strut, us, search)) t = MAX(t, at + s->strut->top); } for (it = struts_right; it; it = g_slist_next(it)) { ObScreenStrut *s = it->data; - if (s->desktop == d && + if ((s->desktop == d || s->desktop == DESKTOP_ALL) && STRUT_RIGHT_IN_SEARCH(s->strut, search) && !STRUT_RIGHT_IGNORE(s->strut, us, search)) r = MIN(r, ar - s->strut->right); } for (it = struts_bottom; it; it = g_slist_next(it)) { ObScreenStrut *s = it->data; - if (s->desktop == d && + if ((s->desktop == d || s->desktop == DESKTOP_ALL) && STRUT_BOTTOM_IN_SEARCH(s->strut, search) && !STRUT_BOTTOM_IGNORE(s->strut, us, search)) b = MIN(b, ab - s->strut->bottom);