Bugfix: Map window when it got the fullscreen hint set

This commit is contained in:
Michael Stapelberg 2009-08-21 12:19:04 +02:00
parent a1e9f75fe5
commit 012f618c85
1 changed files with 4 additions and 3 deletions

View File

@ -422,19 +422,20 @@ void reparent_window(xcb_connection_t *conn, xcb_window_t child,
and dont event bother to redraw the layout that would not change and dont event bother to redraw the layout that would not change
anything anyways */ anything anyways */
client_toggle_fullscreen(conn, new); client_toggle_fullscreen(conn, new);
return; goto map;
} }
render_layout(conn); render_layout(conn);
map:
/* Map the window first to avoid flickering */ /* Map the window first to avoid flickering */
xcb_map_window(conn, child); xcb_map_window(conn, child);
if (map_frame) if (map_frame)
client_map(conn, new); client_map(conn, new);
if (CUR_CELL->workspace->fullscreen_client == NULL && !new->dock) { if ((CUR_CELL->workspace->fullscreen_client == NULL || new->fullscreen) && !new->dock) {
/* Focus the new window if were not in fullscreen mode and if it is not a dock window */ /* Focus the new window if were not in fullscreen mode and if it is not a dock window */
if (new->workspace->fullscreen_client == NULL) { if ((new->workspace->fullscreen_client == NULL) || new->fullscreen) {
if (!client_is_floating(new)) if (!client_is_floating(new))
new->container->currently_focused = new; new->container->currently_focused = new;
if (new->container == CUR_CELL || client_is_floating(new)) if (new->container == CUR_CELL || client_is_floating(new))