--- rxvt-unicode/src/rxvttoolkit.C 2008/01/23 09:23:39 1.89 +++ rxvt-unicode/src/rxvttoolkit.C 2008/01/26 13:31:09 1.99 @@ -558,6 +558,7 @@ && xev.xproperty.atom == xa[XA_XIM_SERVERS]) im_change_check (); #endif + if (xev.type == MappingNotify) XRefreshKeyboardMapping (&xev.xmapping); @@ -576,8 +577,10 @@ void rxvt_display::flush_cb (ev::prepare &w, int revents) { + while (XEventsQueued (dpy, QueuedAfterFlush)) + x_cb (x_ev, EV_READ); + w.stop (); - XFlush (dpy); } void rxvt_display::reg (xevent_watcher *w) @@ -675,7 +678,7 @@ bool rxvt_color::alloc (rxvt_screen *screen, const rgba &color) { - //TODO: only supports 24 bit truecolour + //TODO: only supports 24 bit int alpha = color.a >= 0xff00 ? 0xffff : color.a; #if XFT