summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Tiefenbruck <mark@fluxbox.org>2008-01-23 08:27:53 (GMT)
committerMark Tiefenbruck <mark@fluxbox.org>2008-01-23 08:27:53 (GMT)
commit4bd62b771c483144e939629cb95a4fafd5943b43 (patch)
tree0bb848c730f7897b53f04f8cc064edbbafa4de53
parentd03edf29641fa833aa636f2a195f3f810fa366c6 (diff)
downloadfluxbox_lack-4bd62b771c483144e939629cb95a4fafd5943b43.zip
fluxbox_lack-4bd62b771c483144e939629cb95a4fafd5943b43.tar.bz2
fix some potential bugs with window menus
-rw-r--r--src/Screen.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/Screen.cc b/src/Screen.cc
index 9002ad2..e3b08c6 100644
--- a/src/Screen.cc
+++ b/src/Screen.cc
@@ -812,9 +812,11 @@ void BScreen::propertyNotify(Atom atom) {
812} 812}
813 813
814void BScreen::keyPressEvent(XKeyEvent &ke) { 814void BScreen::keyPressEvent(XKeyEvent &ke) {
815 WinClient *old = WindowCmd<void>::client();
815 WindowCmd<void>::setWindow(FocusControl::focusedFbWindow()); 816 WindowCmd<void>::setWindow(FocusControl::focusedFbWindow());
816 Fluxbox::instance()->keys()->doAction(ke.type, ke.state, ke.keycode, 817 Fluxbox::instance()->keys()->doAction(ke.type, ke.state, ke.keycode,
817 Keys::GLOBAL|Keys::ON_DESKTOP); 818 Keys::GLOBAL|Keys::ON_DESKTOP);
819 WindowCmd<void>::setClient(old);
818} 820}
819 821
820void BScreen::keyReleaseEvent(XKeyEvent &ke) { 822void BScreen::keyReleaseEvent(XKeyEvent &ke) {
@@ -833,9 +835,11 @@ void BScreen::buttonPressEvent(XButtonEvent &be) {
833 imageControl().installRootColormap(); 835 imageControl().installRootColormap();
834 836
835 Keys *keys = Fluxbox::instance()->keys(); 837 Keys *keys = Fluxbox::instance()->keys();
838 WinClient *old = WindowCmd<void>::client();
836 WindowCmd<void>::setWindow(FocusControl::focusedFbWindow()); 839 WindowCmd<void>::setWindow(FocusControl::focusedFbWindow());
837 keys->doAction(be.type, be.state, be.button, Keys::GLOBAL|Keys::ON_DESKTOP, 840 keys->doAction(be.type, be.state, be.button, Keys::GLOBAL|Keys::ON_DESKTOP,
838 be.time); 841 be.time);
842 WindowCmd<void>::setClient(old);
839} 843}
840 844
841void BScreen::notifyUngrabKeyboard() { 845void BScreen::notifyUngrabKeyboard() {