all repos — openbox @ 4ddb8181c2e4d6a4f4108c501a838d1101f2f7a5

openbox fork - make it a bit more like ryudo

make this focus shit not buggy again..
Dana Jansens danakj@orodu.net
commit

4ddb8181c2e4d6a4f4108c501a838d1101f2f7a5

parent

1da8531a7b4eea22592b6d0760352d2a34e9b6b0

2 files changed, 7 insertions(+), 3 deletions(-)

jump to
M scripts/focus.pyscripts/focus.py

@@ -102,7 +102,7 @@ _clients.insert(0, win)

else: # if we are cycling, then update our pointer _cyc_w = data.client.window() _hilite_popup_list(data) - elif fallback: + elif fallback: # pass around focus desktop = ob.openbox.screen(_cyc_screen).desktop() for w in _clients:

@@ -158,7 +158,7 @@ _doing_stacked = 0;

client = ob.openbox.findClient(_cyc_w) if client: data.client = client - _focused(data) # resort the list as appropriate + #_focused(data) # resort the list as appropriate if cycle_raise: ob.openbox.screen(data.screen).raiseWindow(client)
M src/openbox.ccsrc/openbox.cc

@@ -360,7 +360,11 @@

void Openbox::setFocusedClient(Client *c) { - if (c == _focused_client) return; + // sometimes this is called with the already-focused window, this is + // important for the python scripts to work (eg, c = 0 twice, or for the + // cycling list, it relies on this behavior. don't just return if its already + // set as focused + assert(_focused_screen); // uninstall the old colormap