aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMathias Gumz <akira at fluxbox dot org>2013-05-16 05:39:54 (GMT)
committerMathias Gumz <akira at fluxbox dot org>2013-05-16 05:39:54 (GMT)
commit6dca40aae6e0b0d923cc5eb7d18bb53c0a42482e (patch)
tree38303f7b52a849d9ef55133b99ebf1568d8405be
parent52c374570ee5791a0b953f4ffc75082f216d1d1e (diff)
downloadfluxbox-6dca40aae6e0b0d923cc5eb7d18bb53c0a42482e.zip
fluxbox-6dca40aae6e0b0d923cc5eb7d18bb53c0a42482e.tar.bz2
Fix regression in rendering the Window-Motion-Outline
Commit 79fe2fca1de5140f538e68f6981b27cf7f917e7a checks for pending motion events and drops out of the FluxboxWindow::motionNotifyEvent() function early if so. When the user does not use the opaque window movement method an outline will be drawn to the screen. That outline was not cleaned correctly with commit 79..
-rw-r--r--src/Window.cc10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/Window.cc b/src/Window.cc
index 98486be..12b37c9 100644
--- a/src/Window.cc
+++ b/src/Window.cc
@@ -2394,8 +2394,14 @@ void FluxboxWindow::motionNotifyEvent(XMotionEvent &me) {
2394 Fluxbox::instance()->keys()->doAction(me.type, me.state, m_last_pressed_button, context, &winClient(), me.time); 2394 Fluxbox::instance()->keys()->doAction(me.type, me.state, m_last_pressed_button, context, &winClient(), me.time);
2395 2395
2396 if (moving) { 2396 if (moving) {
2397
2397 XEvent e; 2398 XEvent e;
2398 2399
2400 if (XCheckTypedEvent(display, MotionNotify, &e)) {
2401 XPutBackEvent(display, &e);
2402 return;
2403 }
2404
2399 // Warp to next or previous workspace?, must have moved sideways some 2405 // Warp to next or previous workspace?, must have moved sideways some
2400 int moved_x = me.x_root - m_last_resize_x; 2406 int moved_x = me.x_root - m_last_resize_x;
2401 // save last event point 2407 // save last event point
@@ -2456,10 +2462,6 @@ void FluxboxWindow::motionNotifyEvent(XMotionEvent &me) {
2456 doSnapping(dx, dy); 2462 doSnapping(dx, dy);
2457 2463
2458 // do not update display if another motion event is already pending 2464 // do not update display if another motion event is already pending
2459 if (XCheckTypedEvent(display, MotionNotify, &e)) {
2460 XPutBackEvent(display, &e);
2461 return;
2462 }
2463 2465
2464 if (!screen().doOpaqueMove()) { 2466 if (!screen().doOpaqueMove()) {
2465 parent().drawRectangle(screen().rootTheme()->opGC(), 2467 parent().drawRectangle(screen().rootTheme()->opGC(),