X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=src%2Fopenbox.cc;h=dda528483f15630460b60474e71730a8838ac7f1;hb=889df8a74da733c849cb52c3a76ae59956755882;hp=b28decc23a68b65d528ef489158f91c574727bc5;hpb=f71a1fc7d2d7f3c860fe137427a534ddef09fd17;p=chaz%2Fopenbox diff --git a/src/openbox.cc b/src/openbox.cc index b28decc2..dda52848 100644 --- a/src/openbox.cc +++ b/src/openbox.cc @@ -306,7 +306,7 @@ void Openbox::showHelp() void Openbox::eventLoop() { while (!_shutdown) { - _timermanager.fire(); + _timermanager.fire(!_sync); // wait if not in sync mode dispatchEvents(); // from OtkEventDispatcher XFlush(otk::OBDisplay::display); // flush here before we go wait for timers } @@ -359,6 +359,13 @@ void Openbox::setFocusedClient(OBClient *c) otk::OBProperty::Atom_Window, (c && _focused_screen == *it) ? c->window() : None); } + + // call the python Focus callbacks + EventData *data = new_event_data(_focused_screen->number(), + c ? c->window() : 0, + EventFocus, 0); + Openbox::instance->bindings()->fireEvent(data); + Py_XDECREF((PyObject*)data); } void Openbox::execute(int screen, const std::string &bin)