diff options
| author | Dana Jansens <danakj@orodu.net> | 2002-05-13 00:23:59 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2002-05-13 00:23:59 +0000 |
| commit | 6d16679486a9268a17f3bfd03b05febf1644a87e (patch) | |
| tree | 69cd3092ed2e8a7b13c4af852cd80b9fbfae8b6d /src/openbox.cc | |
| parent | 6486b6457693414862fdc34ea07457ed5cbf0a0d (diff) | |
focus code updates
Diffstat (limited to 'src/openbox.cc')
| -rw-r--r-- | src/openbox.cc | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/openbox.cc b/src/openbox.cc index 8d3b1af1..7c25bc62 100644 --- a/src/openbox.cc +++ b/src/openbox.cc @@ -227,6 +227,8 @@ Openbox::Openbox(int m_argc, char **m_argv, char *dpy_name, char *rc) timer->fireOnce(True); ungrab(); + + focusWindow((OpenboxWindow *) 0); } @@ -865,7 +867,7 @@ void Openbox::restart(const char *prog) { void Openbox::shutdown() { BaseDisplay::shutdown(); - XSetInputFocus(getXDisplay(), PointerRoot, None, CurrentTime); + focusWindow((OpenboxWindow *) 0); std::for_each(screenList.begin(), screenList.end(), std::mem_fun(&BScreen::shutdown)); @@ -1094,8 +1096,10 @@ void Openbox::focusWindow(OpenboxWindow *win) { if (tbar) tbar->redrawWindowLabel(true); focused_screen->updateNetizenWindowFocus(); - //} else { - // focused_window = (OpenboxWindow *) 0; + } else { + ASSERT(focused_screen != (BScreen *) 0); + XSetInputFocus(getXDisplay(), focused_screen->getRootWindow(), + None, CurrentTime); } if (old_tbar && old_tbar != tbar) |
