drawin_map: Ignore enter/leave after apply_moveresize

drawin_apply_moveresize() calls client_ignore_enterleave_events() internally,
because it also wants these to be ignored. This means that the code disables
enter/leave events twice and then enables them twice. This recursive disabling
is something that should not occur.

Fix this by having drawin_map() disable the events a bit later.

Signed-off-by: Uli Schlachter <psychon@znc.in>
This commit is contained in:
Uli Schlachter 2016-09-25 06:48:42 +02:00
parent 61d8d74421
commit fcf6c863cd
1 changed files with 2 additions and 2 deletions

View File

@ -297,10 +297,10 @@ static void
drawin_map(lua_State *L, int widx) drawin_map(lua_State *L, int widx)
{ {
drawin_t *drawin = luaA_checkudata(L, widx, &drawin_class); drawin_t *drawin = luaA_checkudata(L, widx, &drawin_class);
/* Activate BMA */
client_ignore_enterleave_events();
/* Apply any pending changes */ /* Apply any pending changes */
drawin_apply_moveresize(drawin); drawin_apply_moveresize(drawin);
/* Activate BMA */
client_ignore_enterleave_events();
/* Map the drawin */ /* Map the drawin */
xcb_map_window(globalconf.connection, drawin->window); xcb_map_window(globalconf.connection, drawin->window);
/* Deactivate BMA */ /* Deactivate BMA */