ftp://ftp.linux.ncsu.edu/mirror/ftp.redhat.com/pub/redhat/linux/enterprise/4/en/os...
[xscreensaver] / hacks / screenhack.c
index 79a58cde9792e2d0c5fdcf29403742d11c69e1cc..728d18edabbb7b6b4ed25f0899faa8055b2a4a56 100644 (file)
@@ -1,4 +1,4 @@
-/* xscreensaver, Copyright (c) 1992, 1995, 1997, 1998, 2001, 2002, 2003
+/* xscreensaver, Copyright (c) 1992, 1995, 1997, 1998, 2001, 2002, 2003, 2004
  *  Jamie Zawinski <jwz@jwz.org>
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
@@ -187,6 +187,9 @@ static Atom XA_WM_PROTOCOLS, XA_WM_DELETE_WINDOW;
 void
 screenhack_handle_event (Display *dpy, XEvent *event)
 {
+  if (XtAppPending (app) & (XtIMTimer|XtIMAlternateInput))
+    XtAppProcessEvent (app, XtIMTimer|XtIMAlternateInput);
+
   switch (event->xany.type)
     {
     case KeyPress:
@@ -534,9 +537,9 @@ main (int argc, char **argv)
       screen = xgwa.screen;
       visual_warning (screen, window, visual, cmap, True);
 
-      /* Select KeyPress events on the external window.
+      /* Select KeyPress and resize events on the external window.
        */
-      xgwa.your_event_mask |= KeyPressMask;
+      xgwa.your_event_mask |= KeyPressMask | StructureNotifyMask;
       XSelectInput (dpy, window, xgwa.your_event_mask);
 
       /* Select ButtonPress and ButtonRelease events on the external window,