summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/fluxbox.cc14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/fluxbox.cc b/src/fluxbox.cc
index 1e1ef36..9cad953 100644
--- a/src/fluxbox.cc
+++ b/src/fluxbox.cc
@@ -22,7 +22,7 @@
22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
23// DEALINGS IN THE SOFTWARE. 23// DEALINGS IN THE SOFTWARE.
24 24
25// $Id: fluxbox.cc,v 1.213 2003/12/21 16:23:59 fluxgen Exp $ 25// $Id: fluxbox.cc,v 1.214 2003/12/21 22:42:31 fluxgen Exp $
26 26
27#include "fluxbox.hh" 27#include "fluxbox.hh"
28 28
@@ -764,18 +764,26 @@ void Fluxbox::handleEvent(XEvent * const e) {
764 } 764 }
765 765
766 766
767 // update key/mouse screen before we enter other eventhandlers 767 // update key/mouse screen and last time before we enter other eventhandlers
768 if (e->type == KeyPress || 768 if (e->type == KeyPress ||
769 e->type == KeyRelease) { 769 e->type == KeyRelease) {
770 m_keyscreen = searchScreen(e->xkey.root); 770 m_keyscreen = searchScreen(e->xkey.root);
771 } else if (e->type == ButtonPress || 771 } else if (e->type == ButtonPress ||
772 e->type == ButtonRelease || 772 e->type == ButtonRelease ||
773 e->type == MotionNotify ) { 773 e->type == MotionNotify ) {
774 if (e->type == MotionNotify)
775 m_last_time = e->xmotion.time;
776 else
777 m_last_time = e->xbutton.time;
778
774 m_mousescreen = searchScreen(e->xbutton.root); 779 m_mousescreen = searchScreen(e->xbutton.root);
775 } else if (e->type == EnterNotify || 780 } else if (e->type == EnterNotify ||
776 e->type == LeaveNotify) { 781 e->type == LeaveNotify) {
782 m_last_time = e->xcrossing.time;
777 m_mousescreen = searchScreen(e->xcrossing.root); 783 m_mousescreen = searchScreen(e->xcrossing.root);
778 } 784 } else if (e->type == PropertyNotify)
785 m_last_time = e->xproperty.time;
786
779 787
780 // try FbTk::EventHandler first 788 // try FbTk::EventHandler first
781 FbTk::EventManager::instance()->handleEvent(*e); 789 FbTk::EventManager::instance()->handleEvent(*e);