Add -root option to specify monitoring root window events. 88/9188/1
authorKim Woelders <kim@woelders.dk>
Sat, 16 Jan 2010 18:09:28 +0000 (19:09 +0100)
committerSung-Jin Park <sj76.park@samsung.com>
Tue, 3 Sep 2013 03:32:30 +0000 (23:32 -0400)
Change-Id: I4189cf1aaf34c7fc84a922220491f1eaefdcd5b4
Signed-off-by: Kim Woelders <kim@woelders.dk>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
xev.c
xev.man

diff --git a/xev.c b/xev.c
index 16d45aa..b422aa2 100644 (file)
--- a/xev.c
+++ b/xev.c
@@ -690,6 +690,7 @@ usage (void)
 "    -bw pixels                          border width in pixels",
 "    -bs {NotUseful,WhenMapped,Always}   backingstore attribute",
 "    -id windowid                        use existing window",
+"    -root                               use root window",
 "    -s                                  set save-unders attribute",
 "    -name string                        window name",
 "    -rv                                 reverse video",
@@ -739,6 +740,7 @@ main (int argc, char **argv)
     int done;
     char *name = "Event Tester";
     Bool reverse = False;
+    Bool use_root = False;
     unsigned long back, fore;
     XIM xim;
     XIMStyles *xim_styles;
@@ -793,8 +795,17 @@ main (int argc, char **argv)
                if (++i >= argc) usage ();
                name = argv[i];
                continue;
-             case 'r':                 /* -rv */
-               reverse = True;
+             case 'r':
+               switch (arg[2]) {
+                 case 'o':             /* -root */
+                   use_root = True;
+                   continue;
+                 case 'v':             /* -rv */
+                   reverse = True;
+                   continue;
+                 default:
+                   usage ();
+               }
                continue;
              case 's':                 /* -s */
                attr.save_under = True;
@@ -865,6 +876,9 @@ main (int argc, char **argv)
                           FocusChangeMask | PropertyChangeMask |
                           ColormapChangeMask | OwnerGrabButtonMask;
 
+    if (use_root)
+       w = RootWindow(dpy, screen);
+
     if (w) {
        XGetWindowAttributes(dpy, w, &wattr);
        if (wattr.all_event_masks & ButtonPressMask)
diff --git a/xev.man b/xev.man
index dcb1e3a..136a01a 100644 (file)
--- a/xev.man
+++ b/xev.man
@@ -9,7 +9,7 @@ xev - print contents of X events
 .B "xev"
 [\-display \fIdisplayname\fP] [\-geometry \fIgeom\fP]
 [\-bw \fIpixels\fP] [\-bs \fI{NotUseful,WhenMapped,Always}\fP]
-[\-id \fIwindowid\fP] [\-s] [\-name \fIstring\fP] [\-rv]
+[\-id \fIwindowid\fP] [\-root] [\-s] [\-name \fIstring\fP] [\-rv]
 .SH DESCRIPTION
 .PP
 \fIXev\fP creates a window and then asks the X server to send it
@@ -40,6 +40,10 @@ means that the xev process will redraw its contents itself, as necessary.
 This option specifies that the window with the given id should be
 monitored, instead of creating a new window.
 .TP 8
+.B \-root
+This option specifies that the root window should be
+monitored, instead of creating a new window.
+.TP 8
 .B \-s
 This option specifies that save-unders should be enabled on the window. Save
 unders are similar to backing store, but they refer rather to the saving of