diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-01-30 21:39:12 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-01-30 21:39:12 +0000 |
| commit | f7a0eb7624fa323a37f9fb0e306d7e1bbc745e15 (patch) | |
| tree | 65d4d080f359dff7a3a3de099f1bfc03bfe207ee /scripts/focus.py | |
| parent | 3409b046a043d8ffabf2e9c33ea037c2e5be15e4 (diff) | |
grab the keyboard during move/resize to make sure the popup doesnt get left onscreen if the modifiers are released before the button
Diffstat (limited to 'scripts/focus.py')
| -rw-r--r-- | scripts/focus.py | 7 |
1 files changed, 6 insertions, 1 deletions
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): |
