From 02fa3c2cb86640628c3f04e22359ab052097785e Mon Sep 17 00:00:00 2001 From: Michael Stapelberg Date: Sat, 13 Jun 2009 12:18:16 +0200 Subject: [PATCH] =?UTF-8?q?Bugfix:=20Correctly=20initialize=20the=20new=20?= =?UTF-8?q?atom,=20don=E2=80=99t=20float=20dock=20windows?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/mainx.c | 2 ++ src/manage.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/mainx.c b/src/mainx.c index 5e9bf077..67ab25fd 100644 --- a/src/mainx.c +++ b/src/mainx.c @@ -160,6 +160,7 @@ int main(int argc, char *argv[], char *env[]) { REQUEST_ATOM(_NET_WM_WINDOW_TYPE); REQUEST_ATOM(_NET_WM_DESKTOP); REQUEST_ATOM(_NET_WM_WINDOW_TYPE_DOCK); + REQUEST_ATOM(_NET_WM_WINDOW_TYPE_DIALOG); REQUEST_ATOM(_NET_WM_STRUT_PARTIAL); REQUEST_ATOM(WM_PROTOCOLS); REQUEST_ATOM(WM_DELETE_WINDOW); @@ -263,6 +264,7 @@ int main(int argc, char *argv[], char *env[]) { GET_ATOM(_NET_WM_WINDOW_TYPE); GET_ATOM(_NET_WM_DESKTOP); GET_ATOM(_NET_WM_WINDOW_TYPE_DOCK); + GET_ATOM(_NET_WM_WINDOW_TYPE_DIALOG); GET_ATOM(_NET_WM_STRUT_PARTIAL); GET_ATOM(WM_PROTOCOLS); GET_ATOM(WM_DELETE_WINDOW); diff --git a/src/manage.c b/src/manage.c index 09cf66eb..84e0e15f 100644 --- a/src/manage.c +++ b/src/manage.c @@ -256,6 +256,8 @@ void reparent_window(xcb_connection_t *conn, xcb_window_t child, new->force_reconfigure = true; new->container = NULL; SLIST_INSERT_HEAD(&(c_ws->screen->dock_clients), new, dock_clients); + /* If it’s a dock we can’t make it float, so we break */ + break; } else if (atom[i] == atoms[_NET_WM_WINDOW_TYPE_DIALOG]) { /* Set the dialog window to automatically floating, will be used below */ new->floating = FLOATING_AUTO_ON;