X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=openbox%2Fopenbox.c;h=c9d882790a96276aa24cf5e98133a128a2fe5418;hb=7ea5ffea73c8924ee53b1a24d8db76518efb3fe3;hp=bf8913bc1bcab5c70424f6299ea8c46007df4370;hpb=ad44e8a708b6836c9d84be7205457cfa82800a65;p=chaz%2Fopenbox diff --git a/openbox/openbox.c b/openbox/openbox.c index bf8913bc..c9d88279 100644 --- a/openbox/openbox.c +++ b/openbox/openbox.c @@ -8,6 +8,7 @@ #include "focus.h" #include "extensions.h" #include "gettext.h" +#include "grab.h" #include "engine.h" #include "themerc.h" #include "plugin.h" @@ -137,11 +138,13 @@ int main(int argc, char **argv) screen_startup(); focus_startup(); client_startup(); + grab_startup(); plugin_startup(); /* XXX load all plugins!! */ plugin_open("focus"); plugin_open("keyboard"); + plugin_open("mouse"); /* get all the existing windows */ client_manage_all(); @@ -154,7 +157,8 @@ int main(int argc, char **argv) client_unmanage_all(); - plugin_shutdown(); + plugin_shutdown(); /* calls all the plugins' shutdown functions */ + grab_shutdown(); client_shutdown(); screen_shutdown(); event_shutdown(); @@ -163,7 +167,9 @@ int main(int argc, char **argv) render_shutdown(); timer_shutdown(); } - + + /* reset focus to root before exiting */ + XSetInputFocus(ob_display, PointerRoot, RevertToNone, CurrentTime); XCloseDisplay(ob_display); dispatch_shutdown();