undo test code
authorroot <root>
Sat, 26 Jan 2008 11:37:51 +0000 (11:37 +0000)
committerroot <root>
Sat, 26 Jan 2008 11:37:51 +0000 (11:37 +0000)
src/rxvttoolkit.C
src/rxvttoolkit.h

index 55ce122..1cef324 100644 (file)
@@ -550,8 +550,6 @@ void rxvt_display::x_cb (ev::io &w, int revents)
       XEvent xev;
       XNextEvent (dpy, &xev);
 
-      flush_ev.start ();
-
 #ifdef USE_XIM
       if (!XFilterEvent (&xev, None))
 #endif
@@ -560,6 +558,7 @@ void rxvt_display::x_cb (ev::io &w, int revents)
               && xev.xany.window == root
               && xev.xproperty.atom == xa[XA_XIM_SERVERS])
             im_change_check ();
+
           if (xev.type == MappingNotify)
             XRefreshKeyboardMapping (&xev.xmapping);
 
@@ -572,12 +571,11 @@ void rxvt_display::x_cb (ev::io &w, int revents)
             }
         }
     }
-
-  XFlush (dpy);
 }
 
-void rxvt_display::flush_cb (ev::idle &w, int revents)
+void rxvt_display::flush_cb (ev::prepare &w, int revents)
 {
+  w.stop ();
   XFlush (dpy);
 }
 
index 8d750f4..d009a9d 100644 (file)
@@ -220,7 +220,7 @@ struct rxvt_display : refcounted
 {
   event_vec<xevent_watcher> xw;
 
-  ev::idle flush_ev; void flush_cb (ev::idle &w, int revents);
+  ev::prepare flush_ev; void flush_cb (ev::prepare &w, int revents);
   ev::io      x_ev    ; void x_cb     (ev::io      &w, int revents);
 
 #ifdef USE_XIM