From 4d82dd3017655aef64893897bc12064e5c51469d Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Mon, 28 Jul 2003 19:53:54 +0000 Subject: [PATCH] make the new placement restrictions not affect !normal windows like panels --- openbox/client.c | 8 ++++++-- openbox/event.c | 8 +++++--- openbox/screen.c | 5 +---- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/openbox/client.c b/openbox/client.c index 70873a43..87865462 100644 --- a/openbox/client.c +++ b/openbox/client.c @@ -300,7 +300,8 @@ void client_manage(Window window) dispatch_client(Event_Client_New, self, 0, 0); /* make sure the window is visible */ - client_move_onscreen(self, TRUE); + if (client_normal(self)) + client_move_onscreen(self, TRUE); screen_update_areas(); @@ -1346,8 +1347,11 @@ void client_update_strut(ObClient *self) if (!PROP_GETA32(self->window, net_wm_strut, cardinal, &data, &num)) { STRUT_SET(self->strut, 0, 0, 0, 0); } else { - if (num == 4) + if (num == 4) { + g_message("new strut: %d %d %d %d", + data[0], data[2], data[1], data[3]); STRUT_SET(self->strut, data[0], data[2], data[1], data[3]); + } else STRUT_SET(self->strut, 0, 0, 0, 0); g_free(data); diff --git a/openbox/event.c b/openbox/event.c index e1ab8fef..2a705e50 100644 --- a/openbox/event.c +++ b/openbox/event.c @@ -776,7 +776,7 @@ static void event_handle_client(ObClient *client, XEvent *e) h = (e->xconfigurerequest.value_mask & CWHeight) ? e->xconfigurerequest.height : client->area.height; - { + if (client_normal(client)) { int newx = x; int newy = y; client_find_onscreen(client, &newx, &newy, w, h, TRUE); @@ -974,7 +974,7 @@ static void event_handle_client(ObClient *client, XEvent *e) h = client->area.y; client->gravity = tmpg; - { + if (client_normal(client)) { int newx = x; int newy = y; client_find_onscreen(client, &newx, &newy, w, h, TRUE); @@ -1031,8 +1031,10 @@ static void event_handle_client(ObClient *client, XEvent *e) client_update_protocols(client); client_setup_decor_and_functions(client); } - else if (msgtype == prop_atoms.net_wm_strut) + else if (msgtype == prop_atoms.net_wm_strut) { + g_message("strut change"); client_update_strut(client); + } else if (msgtype == prop_atoms.net_wm_icon || msgtype == prop_atoms.kwm_win_icon) client_update_icons(client); diff --git a/openbox/screen.c b/openbox/screen.c index b312aba9..3c2010a1 100644 --- a/openbox/screen.c +++ b/openbox/screen.c @@ -637,8 +637,6 @@ void screen_update_areas() { guint i, x; guint32 *dims; - Rect **old_area = area; - Rect **rit; GList *it; g_free(monitor_area); @@ -657,7 +655,6 @@ void screen_update_areas() dims = g_new(guint32, 4 * screen_num_desktops); - rit = old_area; for (i = 0; i < screen_num_desktops + 1; ++i) { Strut s; int l, r, t, b; @@ -800,7 +797,7 @@ void screen_update_areas() } } PROP_SETA32(RootWindow(ob_display, ob_screen), net_workarea, cardinal, - dims, 4 * screen_num_desktops); + dims, 4 * screen_num_desktops); g_free(dims); } -- 2.45.2