X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=scripts%2Ffocus.py;h=0dfd3fb8142d1f9d5749c7ed096fac6a6fcecafb;hb=781495e2eafd9dfe5592a2f5cefb905743208175;hp=2fb6188af9601ceac216bdfa4ca48f29fc765adc;hpb=4ef15148365c223b8e810611a10dc27dc5fba355;p=chaz%2Fopenbox diff --git a/scripts/focus.py b/scripts/focus.py index 2fb6188a..0dfd3fb8 100644 --- a/scripts/focus.py +++ b/scripts/focus.py @@ -24,7 +24,7 @@ import ob # maintain a list of clients, stacked in focus order _clients = [] -_disable = 0 +_skip = 0 def _focusable(client, desktop): if not client.normal(): return 0 @@ -48,9 +48,11 @@ def _remove(client): raise ValueError("_remove(x): x not in _clients list.") def _focused(data): - global _clients + global _clients, _skip - if _disable: return + if _skip: + _skip -= 1 + return if data.client: # move it to the top @@ -62,7 +64,8 @@ def _focused(data): # pass around focus desktop = ob.openbox.screen(data.screen).desktop() for c in _clients: - if _focusable(c, desktop) and c.focus(): + if _focusable(c, desktop): + c.focus() break def _newwindow(data):