From f7a0eb7624fa323a37f9fb0e306d7e1bbc745e15 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Thu, 30 Jan 2003 21:39:12 +0000 Subject: grab the keyboard during move/resize to make sure the popup doesnt get left onscreen if the modifiers are released before the button --- scripts/focus.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'scripts/focus.py') diff --git a/scripts/focus.py b/scripts/focus.py index adba3725..00e53cbc 100644 --- a/scripts/focus.py +++ b/scripts/focus.py @@ -136,7 +136,8 @@ def _focus_stacked_ungrab(data): # have all the modifiers this started with been released? if not _cyc_mask & data.state: _destroy_popup_list() - ob.kungrab() # ungrab ourself + ob.kungrab() + ob.mungrab() _doing_stacked = 0; if cycle_raise: client = ob.openbox.findClient(_cyc_w) @@ -246,6 +247,10 @@ def focus_next_stacked(data, forward=1): _create_popup_list(data) ob.kgrab(data.screen, _focus_stacked_ungrab) + # the pointer grab causes pointer events during the keyboard grab to + # go away, which means we don't get enter notifies when the popup + # disappears, screwing up the focus + ob.mgrab(data.screen) focus_next_stacked(data, forward) # start with the first press def focus_prev_stacked(data): -- cgit v1.2.3