]> git.sur5r.net Git - i3/i3/commitdiff
Send configure notify after putting a client into fullscreen mode, log at a central...
authorMichael Stapelberg <michael+x200@stapelberg.de>
Sat, 14 Mar 2009 16:37:11 +0000 (17:37 +0100)
committerMichael Stapelberg <michael+x200@stapelberg.de>
Sat, 14 Mar 2009 16:37:11 +0000 (17:37 +0100)
src/handlers.c
src/util.c
src/xcb.c

index a15d726e0370a8c838f10e18fa98524b0f610193..32c4f0bae2a2cba569b45d99a4307f6e1b9f9df5 100644 (file)
@@ -455,9 +455,6 @@ int handle_configure_request(void *prophs, xcb_connection_t *conn, xcb_configure
 
         fake_configure_notify(conn, client->child_rect, client->child);
 
-        LOG("Told the client to stay at %dx%d with size %dx%d\n",
-            client->child_rect.x, client->child_rect.y, client->child_rect.width, client->child_rect.height);
-
         return 1;
 }
 
index 0a3cd060ac9cee0f22705396d1dc30c50942ec6c..1a2cc8c562e5a3a1795302795f190eadbc542bef 100644 (file)
@@ -377,6 +377,9 @@ void toggle_fullscreen(xcb_connection_t *conn, Client *client) {
                 values[0] = XCB_STACK_MODE_ABOVE;
                 xcb_configure_window(conn, client->frame, XCB_CONFIG_WINDOW_STACK_MODE, values);
 
+                Rect child_rect = workspace->rect;
+                child_rect.x = child_rect.y = 0;
+                fake_configure_notify(conn, child_rect, client->child);
         } else {
                 LOG("leaving fullscreen mode\n");
                 /* Because the coordinates of the window haven’t changed, it would not be
index 802acc81cef7c6d69f48749bcac6525afadc750a..f7f5c5f17839dd64c14c32834ecf89bda5d87ad2 100644 (file)
--- a/src/xcb.c
+++ b/src/xcb.c
@@ -206,4 +206,6 @@ void fake_configure_notify(xcb_connection_t *conn, Rect r, xcb_window_t window)
 
         xcb_send_event(conn, false, window, XCB_EVENT_MASK_STRUCTURE_NOTIFY, (char*)&generated_event);
         xcb_flush(conn);
+
+        LOG("Told the client it is at %dx%d with %dx%d\n", r.x, r.y, r.width, r.height);
 }