]> diplodocus.org Git - xorg-xinput/blobdiff - src/list.c
Clean up the detection of XI2
[xorg-xinput] / src / list.c
index ee6faa2e2e7cad552d0abd9b6656787a0176359f..de8aca7981f41a68e49eb105d08e70de3cc0c893 100644 (file)
@@ -5,15 +5,15 @@
  * documentation for any purpose is  hereby granted without fee, provided that
  * the  above copyright   notice appear  in   all  copies and  that both  that
  * copyright  notice   and   this  permission   notice  appear  in  supporting
- * documentation, and that   the  name of  Frederic   Lepied not  be  used  in
+ * documentation, and that   the  name of  the authors  not  be  used  in
  * advertising or publicity pertaining to distribution of the software without
- * specific,  written      prior  permission.     Frederic  Lepied   makes  no
+ * specific,  written      prior  permission.     The authors  make  no
  * representations about the suitability of this software for any purpose.  It
  * is provided "as is" without express or implied warranty.
  *
- * FREDERIC  LEPIED DISCLAIMS ALL   WARRANTIES WITH REGARD  TO  THIS SOFTWARE,
+ * THE AUTHORS DISCLAIM ALL   WARRANTIES WITH REGARD  TO  THIS SOFTWARE,
  * INCLUDING ALL IMPLIED   WARRANTIES OF MERCHANTABILITY  AND   FITNESS, IN NO
- * EVENT  SHALL FREDERIC  LEPIED BE   LIABLE   FOR ANY  SPECIAL, INDIRECT   OR
+ * EVENT  SHALL THE AUTHORS  BE   LIABLE   FOR ANY  SPECIAL, INDIRECT   OR
  * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
  * DATA  OR PROFITS, WHETHER  IN  AN ACTION OF  CONTRACT,  NEGLIGENCE OR OTHER
  * TORTIOUS  ACTION, ARISING    OUT OF OR   IN  CONNECTION  WITH THE USE    OR
@@ -34,7 +34,9 @@ print_info(XDeviceInfo        *info, Bool shortformat)
     XButtonInfoPtr     b;
     XValuatorInfoPtr   v;
     XAxisInfoPtr       a;
+#if HAVE_XI2
     XAttachInfoPtr      att;
+#endif
 
     printf("\"%s\"\tid=%ld\t[", info->name, info->id);
 
@@ -93,11 +95,12 @@ print_info(XDeviceInfo      *info, Bool shortformat)
                    printf ("\t\tResolution is %d\n", a->resolution);
                }
                break;
+#if HAVE_XI2
             case AttachClass:
                 att = (XAttachInfoPtr)any;
                 printf("\tAttached to %d\n", att->attached);
                 break;
-
+#endif
            default:
                printf ("unknown class\n");
            }
@@ -125,12 +128,14 @@ list(Display      *display,
        int             num_devices;
         XEvent  ev;
 
+#if HAVE_XI2
         if (daemon)
         {
-            XiSelectEvent(display, DefaultRootWindow(display),
+            XiSelectEvent(display, DefaultRootWindow(display), NULL,
                           XI_DeviceHierarchyChangedMask |
                           XI_DeviceClassesChangedMask);
         }
+#endif
 
         do {
             info = XListInputDevices(display, &num_devices);
@@ -138,6 +143,7 @@ list(Display        *display,
                 print_info(info+loop, shortformat);
             }
 
+#if HAVE_XI2
             /* just wait for the next generic event to come along */
             while (daemon && !XNextEvent(display, &ev))
             {
@@ -157,15 +163,16 @@ list(Display      *display,
                     break;
                 }
             }
+#endif
         } while(daemon);
     } else {
        int     ret = EXIT_SUCCESS;
 
        for(loop=0; loop<argc; loop++) {
-           info = find_device_info(display, argv[0], False);
+           info = find_device_info(display, argv[loop], False);
 
            if (!info) {
-               fprintf(stderr, "unable to find device %s\n", argv[0]);
+               fprintf(stderr, "unable to find device %s\n", argv[loop]);
                ret = EXIT_FAILURE;
            } else {
                print_info(info, shortformat);