Hello community,

here is the log from the commit of package xf86-input-synaptics for 
openSUSE:Factory checked in at 2012-05-16 21:11:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xf86-input-synaptics (Old)
 and      /work/SRC/openSUSE:Factory/.xf86-input-synaptics.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xf86-input-synaptics", Maintainer is ""

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/xf86-input-synaptics/xf86-input-synaptics.changes    
    2012-05-08 12:03:09.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.xf86-input-synaptics.new/xf86-input-synaptics.changes
   2012-05-16 21:11:05.000000000 +0200
@@ -1,0 +2,32 @@
+Fri May 11 07:51:22 UTC 2012 - vu...@opensuse.org
+
+- Update to version 1.6.1:
+  + Fix wrong conversion causing coasting to be triggered on almost
+    all scroll events.
+  + Fix bug where, on clickpads, moving the clicking finger out of
+    the soft button area caused erroneous button events.
+- Rebase xf86-input-synaptics-wait.diff,
+  xf86-input-synaptics-add-clickpad-support.diff,
+  xf86-input-synaptics-add-led-support.diff,
+  xf86-input-synaptics-fix-clickpad-capabilities.diff,
+  xf86-input-synaptics-filter-bogus-coord.diff: this is needed
+  because of whitespace changes in the code.
+
+-------------------------------------------------------------------
+Wed May  9 08:46:12 UTC 2012 - vu...@opensuse.org
+
+- Update to version 1.6.0:
+  + Fix coasting for negative scroll directions.
+  + Fix issues on resuming after suspend.
+  + Documentation fixes.
+  + Build fixes.
+- Changes from version 1.5.99.904:
+  + Ensure hw millis are monotonic.
+  + Don't release the button on TS_3 if TapAndDrag is disabled.
+  + Various scroll-related fixes.
+  + Various coasting-related fixes.
+  + Several other bug fixes.
+- Rebase xf86-input-synaptics-clickpad-doc-update.diff and
+  xf86-input-synaptics-filter-bogus-coord.diff.
+
+-------------------------------------------------------------------

Old:
----
  xf86-input-synaptics-1.5.99.903.tar.bz2

New:
----
  xf86-input-synaptics-1.6.1.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xf86-input-synaptics.spec ++++++
--- /var/tmp/diff_new_pack.9i0bWN/_old  2012-05-16 21:11:06.000000000 +0200
+++ /var/tmp/diff_new_pack.9i0bWN/_new  2012-05-16 21:11:06.000000000 +0200
@@ -15,13 +15,15 @@
 # Please submit bugfixes or comments via http://bugs.opensuse.org/
 #
 
+
+
 Name:           xf86-input-synaptics
-Version:        1.5.99.903
-Release:        1
-License:        MIT
+Version:        1.6.1
+Release:        0
 Summary:        Synaptics touchpad input driver for the Xorg X server
-Url:            http://xorg.freedesktop.org/
+License:        MIT
 Group:          System/X11/Servers/XF86_4
+Url:            http://xorg.freedesktop.org/
 Source0:        
http://xorg.freedesktop.org/releases/individual/driver/%{name}-%{version}.tar.bz2
 Patch0:         xf86-input-synaptics-wait.diff
 Patch2:         xf86-input-synaptics-xorg.conf.d_snippet.diff

++++++ xf86-input-synaptics-1.5.99.903.tar.bz2 -> 
xf86-input-synaptics-1.6.1.tar.bz2 ++++++
++++ 21118 lines of diff (skipped)

++++++ xf86-input-synaptics-add-clickpad-support.diff ++++++
--- /var/tmp/diff_new_pack.9i0bWN/_old  2012-05-16 21:11:07.000000000 +0200
+++ /var/tmp/diff_new_pack.9i0bWN/_new  2012-05-16 21:11:07.000000000 +0200
@@ -26,14 +26,14 @@
 --- xf86-input-synaptics-1.5.99.903.orig/src/eventcomm.c
 +++ xf86-input-synaptics-1.5.99.903/src/eventcomm.c
 @@ -486,6 +486,12 @@ event_query_axis_ranges(InputInfoPtr pIn
-       strcat(buf, " scroll-buttons");
+         strcat(buf, " scroll-buttons");
  
      xf86IDrvMsg(pInfo, X_PROBED, "buttons:%s\n", buf);
 +
 +    /* clickpad device reports only the single left button mask */
 +    if (priv->has_left && !priv->has_right && !priv->has_middle && 
!priv->has_double) {
-+      priv->is_clickpad = TRUE;
-+      xf86IDrvMsg(pInfo, X_PROBED, "is Clickpad device\n");
++        priv->is_clickpad = TRUE;
++        xf86IDrvMsg(pInfo, X_PROBED, "is Clickpad device\n");
 +    }
  }
  
@@ -48,31 +48,31 @@
  
 +    /* Clickpad mode -- bottom area is used as buttons */
 +    if (priv->is_clickpad) {
-+      int button_bottom;
-+      /* Clickpad devices usually the button area at the bottom, and
-+       * its size seems ca. 20% of the touchpad height no matter how
-+       * large the pad is.
-+       */
-+      button_bottom = priv->maxy - (abs(priv->maxy - priv->miny) * 20) / 100;
-+      if (button_bottom < b && button_bottom >= t)
-+          b = button_bottom;
++        int button_bottom;
++        /* Clickpad devices usually the button area at the bottom, and
++         * its size seems ca. 20% of the touchpad height no matter how
++         * large the pad is.
++         */
++        button_bottom = priv->maxy - (abs(priv->maxy - priv->miny) * 20) / 
100;
++        if (button_bottom < b && button_bottom >= t)
++            b = button_bottom;
 +    }
 +
      /* set the parameters */
      pars->left_edge = xf86SetIntOption(opts, "LeftEdge", l);
      pars->right_edge = xf86SetIntOption(opts, "RightEdge", r);
 @@ -689,6 +701,10 @@ static void set_default_parameters(Input
- 
-     pars->area_top_edge = set_percent_option(opts, "AreaTopEdge", height, 
priv->miny, 0);
-     pars->area_bottom_edge = set_percent_option(opts, "AreaBottomEdge", 
height, priv->miny, 0);
+         set_percent_option(opts, "AreaTopEdge", height, priv->miny, 0);
+     pars->area_bottom_edge =
+         set_percent_option(opts, "AreaBottomEdge", height, priv->miny, 0);
 +    /* in clickpad mode, we don't want to sense the button area as default */
 +    if (pars->area_bottom_edge == 0 && priv->is_clickpad)
-+      pars->area_bottom_edge = b;
++        pars->area_bottom_edge = b;
 +
-     pars->area_left_edge = set_percent_option(opts, "AreaLeftEdge", width, 
priv->minx, 0);
-     pars->area_right_edge = set_percent_option(opts, "AreaRightEdge", width, 
priv->minx, 0);
- 
-@@ -1415,6 +1431,44 @@ fail:
+     pars->area_left_edge =
+         set_percent_option(opts, "AreaLeftEdge", width, priv->minx, 0);
+     pars->area_right_edge =
+@@ -1415,6 +1431,45 @@ fail:
      return !Success;
  }
  
@@ -84,46 +84,47 @@
 +    SynapticsParameters *para = &priv->synpara;
 +
 +    if (hw->left) { /* clicked? */
-+      if (hw->y > para->bottom_edge) {
-+          /* button area */
-+          int width = priv->maxx - priv->minx;
-+          int left_button_x, right_button_x;
-+
-+          /* left and right clickpad button ranges;
-+           * the gap between them is interpreted as a middle-button click
-+           */
-+          left_button_x = width * 2 / 5 + priv->minx;
-+          right_button_x = width * 3 / 5 + priv->minx;
-+
-+          /* clickpad reports only one button, and we need
-+           * to fake left/right buttons depending on the touch position
-+           */
-+          hw->left = 0;
-+          if (hw->x < left_button_x)
-+              hw->left = 1;
-+          else if (hw->x > right_button_x)
-+              hw->right = 1;
-+          else
-+              hw->middle = 1;
-+      } else {
-+          /* dragging */
-+          hw->left = priv->prev_hw.left;
-+          hw->right = priv->prev_hw.right;
-+          hw->middle = priv->prev_hw.middle;
-+      }
++        if (hw->y > para->bottom_edge) {
++            /* button area */
++            int width = priv->maxx - priv->minx;
++            int left_button_x, right_button_x;
++
++            /* left and right clickpad button ranges;
++             * the gap between them is interpreted as a middle-button click
++             */
++            left_button_x = width * 2 / 5 + priv->minx;
++            right_button_x = width * 3 / 5 + priv->minx;
++
++            /* clickpad reports only one button, and we need
++             * to fake left/right buttons depending on the touch position
++             */
++            hw->left = 0;
++            if (hw->x < left_button_x)
++                hw->left = 1;
++            else if (hw->x > right_button_x)
++                hw->right = 1;
++            else
++                hw->middle = 1;
++        } else {
++            /* dragging */
++            hw->left = priv->prev_hw.left;
++            hw->right = priv->prev_hw.right;
++            hw->middle = priv->prev_hw.middle;
++        }
 +    }
 +    priv->prev_hw = *hw;
 +}
- 
++ 
  /*
   * Convert from absolute X/Y coordinates to a coordinate system where
+  * -1 corresponds to the left/upper edge and +1 corresponds to the
 @@ -2786,6 +2840,10 @@ update_hw_button_state(const InputInfoPt
      SynapticsPrivate *priv = (SynapticsPrivate *) (pInfo->private);
      SynapticsParameters *para = &priv->synpara;
  
 +    /* Clickpad handling for button area */
 +    if (priv->is_clickpad)
-+      handle_clickpad(pInfo, hw);
++        handle_clickpad(pInfo, hw);
 +
      /* Treat the first two multi buttons as up/down for now. */
      hw->up |= hw->multi[0];
@@ -133,11 +134,11 @@
 --- xf86-input-synaptics-1.5.99.903.orig/src/synapticsstr.h
 +++ xf86-input-synaptics-1.5.99.903/src/synapticsstr.h
 @@ -272,6 +272,8 @@ struct _SynapticsPrivateRec
-     Bool has_width;                   /* device reports finger width */
-     Bool has_scrollbuttons;           /* device has physical scrollbuttons */
-     Bool has_semi_mt;                 /* device is only semi-multitouch 
capable */
+     Bool has_width;             /* device reports finger width */
+     Bool has_scrollbuttons;     /* device has physical scrollbuttons */
+     Bool has_semi_mt;           /* device is only semi-multitouch capable */
 +    Bool is_clickpad;                  /* is Clickpad device (one-button) */
 +    struct SynapticsHwState prev_hw;   /* previous h/w state (for clickpad) */
  
-     enum TouchpadModel model;         /* The detected model */
-     unsigned short id_vendor;         /* vendor id */
+     enum TouchpadModel model;   /* The detected model */
+     unsigned short id_vendor;   /* vendor id */

++++++ xf86-input-synaptics-add-led-support.diff ++++++
--- /var/tmp/diff_new_pack.9i0bWN/_old  2012-05-16 21:11:07.000000000 +0200
+++ /var/tmp/diff_new_pack.9i0bWN/_new  2012-05-16 21:11:07.000000000 +0200
@@ -39,7 +39,7 @@
 +/* 8 bit (BOOL), led_status (on/off) */
 +#define SYNAPTICS_PROP_LED_STATUS "Synaptics LED Status"
 +
- #endif /* _SYNAPTICS_PROPERTIES_H_ */
+ #endif                          /* _SYNAPTICS_PROPERTIES_H_ */
 Index: xf86-input-synaptics-1.5.99.903/man/synaptics.man
 ===================================================================
 --- xf86-input-synaptics-1.5.99.903.orig/man/synaptics.man
@@ -68,15 +68,15 @@
  #define LONG(x)  ((x) / LONG_BITS)
  #define TEST_BIT(bit, array) ((array[LONG(bit)] >> OFF(bit)) & 1)
  
-+#define SYNAPTICS_LED_SYS_FILE        
"/sys/class/leds/psmouse::synaptics/brightness"
++#define SYNAPTICS_LED_SYS_FILE    
"/sys/class/leds/psmouse::synaptics/brightness"
 +
  /**
   * Protocol-specific data.
   */
 @@ -377,6 +379,32 @@ event_get_abs(InputInfoPtr pInfo, int fd
+     return 0;
  }
  
- 
 +static void
 +event_query_led(InputInfoPtr pInfo)
 +{
@@ -99,7 +99,7 @@
 +        err = write(fd, val, strlen(val));
 +        close(fd);
 +        if (err < 0)
-+          xf86IDrvMsg(pInfo, X_WARNING, "can't write LED value %s\n", val);
++            xf86IDrvMsg(pInfo, X_WARNING, "can't write LED value %s\n", val);
 +    }
 +}
 +
@@ -111,9 +111,9 @@
          event_query_axis_ranges(pInfo);
      }
 +    event_query_led(pInfo);
-     event_query_model(pInfo->fd, &priv->model, &priv->id_vendor, 
&priv->id_product);
+     event_query_model(pInfo->fd, &priv->model, &priv->id_vendor,
+                       &priv->id_product);
  
-     xf86IDrvMsg(pInfo, X_PROBED, "Vendor %#hx Product %#hx\n",
 @@ -1023,5 +1052,6 @@ struct SynapticsProtocolOperations event
      EventQueryHardware,
      EventReadHwState,
@@ -127,62 +127,62 @@
 --- xf86-input-synaptics-1.5.99.903.orig/src/properties.c
 +++ xf86-input-synaptics-1.5.99.903/src/properties.c
 @@ -96,6 +96,8 @@ Atom prop_softbutton_areas      = 0;
- Atom prop_noise_cancellation    = 0;
- Atom prop_product_id            = 0;
- Atom prop_device_node           = 0;
-+Atom prop_led                   = 0;
-+Atom prop_led_status            = 0;
+ Atom prop_noise_cancellation = 0;
+ Atom prop_product_id = 0;
+ Atom prop_device_node = 0;
++Atom prop_led = 0;
++Atom prop_led_status = 0;
  
  static Atom
  InitTypedAtom(DeviceIntPtr dev, char *name, Atom type, int format, int 
nvalues,
 @@ -327,6 +329,9 @@ InitDeviceProperties(InputInfoPtr pInfo)
-     prop_noise_cancellation = InitAtom(pInfo->dev,
-             SYNAPTICS_PROP_NOISE_CANCELLATION, 32, 2, values);
+                                        SYNAPTICS_PROP_NOISE_CANCELLATION, 32, 
2,
+                                        values);
  
 +    prop_led = InitAtom(pInfo->dev, SYNAPTICS_PROP_LED, 8, 1, &para->has_led);
 +    prop_led_status = InitAtom(pInfo->dev, SYNAPTICS_PROP_LED_STATUS, 8, 1, 
&para->led_status);
 +
      /* only init product_id property if we actually know them */
-     if (priv->id_vendor || priv->id_product)
-     {
+     if (priv->id_vendor || priv->id_product) {
+         values[0] = priv->id_vendor;
 @@ -744,6 +749,16 @@ SetProperty(DeviceIntPtr dev, Atom prope
-         para->area_right_edge  = area[1];
-         para->area_top_edge    = area[2];
+         para->area_right_edge = area[1];
+         para->area_top_edge = area[2];
          para->area_bottom_edge = area[3];
 +    } else if (property == prop_led_status)
 +    {
-+          if (prop->size != 1 || prop->format != 8 || prop->type != 
XA_INTEGER)
-+                  return BadMatch;
++        if (prop->size != 1 || prop->format != 8 || prop->type != XA_INTEGER)
++            return BadMatch;
 +
-+          if (para->has_led) {
-+                  para->led_status = *(BOOL*)prop->data;
-+                  if (priv->proto_ops && priv->proto_ops->UpdateLED)
-+                          priv->proto_ops->UpdateLED(pInfo);
-+          }
-     } else if (property == prop_softbutton_areas)
-     {
++        if (para->has_led) {
++            para->led_status = *(BOOL*)prop->data;
++            if (priv->proto_ops && priv->proto_ops->UpdateLED)
++                priv->proto_ops->UpdateLED(pInfo);
++        }
+     }
+     else if (property == prop_softbutton_areas) {
          int *areas;
 Index: xf86-input-synaptics-1.5.99.903/src/synapticsstr.h
 ===================================================================
 --- xf86-input-synaptics-1.5.99.903.orig/src/synapticsstr.h
 +++ xf86-input-synaptics-1.5.99.903/src/synapticsstr.h
 @@ -184,6 +184,8 @@ typedef struct _SynapticsParameters
-     int area_left_edge, area_right_edge, area_top_edge, area_bottom_edge; /* 
area coordinates absolute */
-     int softbutton_areas[2][4];             /* soft button area coordinates, 
0 => right, 1 => middle button */
-     int hyst_x, hyst_y;                     /* x and y width of hysteresis 
box */
+     int area_left_edge, area_right_edge, area_top_edge, area_bottom_edge;     
  /* area coordinates absolute */
+     int softbutton_areas[2][4]; /* soft button area coordinates, 0 => right, 
1 => middle button */
+     int hyst_x, hyst_y;         /* x and y width of hysteresis box */
 +    Bool has_led;                           /* has an embedded LED */
 +    Bool led_status;                        /* Current status of LED (1=on) */
  } SynapticsParameters;
  
- 
+ struct _SynapticsPrivateRec {
 Index: xf86-input-synaptics-1.5.99.903/src/synproto.h
 ===================================================================
 --- xf86-input-synaptics-1.5.99.903.orig/src/synproto.h
 +++ xf86-input-synaptics-1.5.99.903/src/synproto.h
 @@ -102,6 +102,7 @@ struct SynapticsProtocolOperations {
-                       struct CommData *comm, struct SynapticsHwState *hwRet);
-     Bool (*AutoDevProbe)(InputInfoPtr pInfo, const char *device);
-     void (*ReadDevDimensions)(InputInfoPtr pInfo);
+                          struct SynapticsHwState * hwRet);
+     Bool (*AutoDevProbe) (InputInfoPtr pInfo, const char *device);
+     void (*ReadDevDimensions) (InputInfoPtr pInfo);
 +    void (*UpdateLED)(InputInfoPtr pInfo);
  };
  

++++++ xf86-input-synaptics-clickpad-doc-update.diff ++++++
--- /var/tmp/diff_new_pack.9i0bWN/_old  2012-05-16 21:11:07.000000000 +0200
+++ /var/tmp/diff_new_pack.9i0bWN/_new  2012-05-16 21:11:07.000000000 +0200
@@ -8,13 +8,15 @@
  man/synaptics.man |    9 +++++++++
  1 file changed, 9 insertions(+)
 
---- a/man/synaptics.man
-+++ b/man/synaptics.man
-@@ -753,6 +753,15 @@
- Trackstick mode is exited when the finger pressure drops below
- FingerLow or when the finger is moved further than MaxTapMove away
- from the initial position.
-+.
+Index: xf86-input-synaptics-1.6.0/man/synaptics.man
+===================================================================
+--- xf86-input-synaptics-1.6.0.orig/man/synaptics.man
++++ xf86-input-synaptics-1.6.0/man/synaptics.man
+@@ -792,6 +792,15 @@ ClickPads provide software emulated butt
+ These buttons enable areas on the touchpad to perform as right or middle
+ mouse button. When the user performs a click within a defined soft button
+ area, a right or middle click is performed.
++.LP
 +When the input device reports a device with a single left button
 +and without multi-fingers, the driver assumes it's a Synaptics
 +Clickpad device and handles it in ClickZone mode.  In this mode,

++++++ xf86-input-synaptics-filter-bogus-coord.diff ++++++
--- /var/tmp/diff_new_pack.9i0bWN/_old  2012-05-16 21:11:07.000000000 +0200
+++ /var/tmp/diff_new_pack.9i0bWN/_new  2012-05-16 21:11:07.000000000 +0200
@@ -7,7 +7,7 @@
 --- xf86-input-synaptics-1.5.99.903.orig/src/eventcomm.c
 +++ xf86-input-synaptics-1.5.99.903/src/eventcomm.c
 @@ -706,6 +706,20 @@ EventReadHwState(InputInfoPtr pInfo,
-     SynapticsPrivate *priv = (SynapticsPrivate *)pInfo->private;
+     SynapticsPrivate *priv = (SynapticsPrivate *) pInfo->private;
      SynapticsParameters *para = &priv->synpara;
      struct eventcomm_proto_data *proto_data = priv->proto_data;
 +    int minx, miny, maxx, maxy, x;
@@ -25,15 +25,15 @@
 +    maxy += miny;
 +    miny -= (miny > x) ? x : miny;
  
-     SynapticsResetTouchHwState(hw);
+     SynapticsResetTouchHwState(hw, FALSE);
  
 @@ -722,6 +736,9 @@ EventReadHwState(InputInfoPtr pInfo,
-           switch (ev.code) {
-           case SYN_REPORT:
-               hw->numFingers = count_fingers(pInfo, comm);
-+              /* if the coord is out of range, we filter it out */
-+              if (priv->is_clickpad && hw->z > 0 && (hw->x < minx || hw->x > 
maxx || hw->y < miny || hw->y > maxy))
-+                      return FALSE;
-               hw->millis = 1000 * ev.time.tv_sec + ev.time.tv_usec / 1000;
-               SynapticsCopyHwState(hwRet, hw);
-               return TRUE;
+             switch (ev.code) {
+             case SYN_REPORT:
+                 hw->numFingers = count_fingers(pInfo, comm);
++                /* if the coord is out of range, we filter it out */
++                if (priv->is_clickpad && hw->z > 0 && (hw->x < minx || hw->x 
> maxx || hw->y < miny || hw->y > maxy))
++                    return FALSE;
+                 hw->millis = 1000 * ev.time.tv_sec + ev.time.tv_usec / 1000;
+                 SynapticsCopyHwState(hwRet, hw);
+                 return TRUE;

++++++ xf86-input-synaptics-fix-clickpad-capabilities.diff ++++++
--- /var/tmp/diff_new_pack.9i0bWN/_old  2012-05-16 21:11:07.000000000 +0200
+++ /var/tmp/diff_new_pack.9i0bWN/_new  2012-05-16 21:11:07.000000000 +0200
@@ -7,7 +7,7 @@
 --- xf86-input-synaptics-1.5.99.903.orig/src/eventcomm.c
 +++ xf86-input-synaptics-1.5.99.903/src/eventcomm.c
 @@ -380,6 +380,25 @@ event_get_abs(InputInfoPtr pInfo, int fd
- 
+ }
  
  static void
 +event_query_clickpad(InputInfoPtr pInfo)
@@ -16,15 +16,15 @@
 +
 +    /* clickpad device reports only the single left button mask */
 +    if (priv->has_left && !priv->has_right && !priv->has_middle &&
-+      /*!priv->has_double &&*/
-+      priv->model == MODEL_SYNAPTICS) {
-+      priv->is_clickpad = TRUE;
-+      /* enable right/middle button caps; otherwise gnome-settings-daemon
-+       * will ignore this device for left/right-hand setup because of a
-+       * single-button
-+       */
-+      priv->has_right = priv->has_middle = TRUE;
-+      xf86IDrvMsg(pInfo, X_INFO, "is Clickpad device\n");
++        /*!priv->has_double &&*/
++        priv->model == MODEL_SYNAPTICS) {
++        priv->is_clickpad = TRUE;
++        /* enable right/middle button caps; otherwise gnome-settings-daemon
++         * will ignore this device for left/right-hand setup because of a
++         * single-button
++         */
++        priv->has_right = priv->has_middle = TRUE;
++        xf86IDrvMsg(pInfo, X_INFO, "is Clickpad device\n");
 +    }
 +}
 +
@@ -33,24 +33,25 @@
  {
      SynapticsPrivate *priv = (SynapticsPrivate *)pInfo->private;
 @@ -514,12 +533,6 @@ event_query_axis_ranges(InputInfoPtr pIn
-       strcat(buf, " scroll-buttons");
+         strcat(buf, " scroll-buttons");
  
      xf86IDrvMsg(pInfo, X_PROBED, "buttons:%s\n", buf);
 -
 -    /* clickpad device reports only the single left button mask */
 -    if (priv->has_left && !priv->has_right && !priv->has_middle && 
!priv->has_double) {
--      priv->is_clickpad = TRUE;
--      xf86IDrvMsg(pInfo, X_PROBED, "is Clickpad device\n");
+-        priv->is_clickpad = TRUE;
+-        xf86IDrvMsg(pInfo, X_PROBED, "is Clickpad device\n");
 -    }
  }
  
  static Bool
-@@ -961,11 +974,13 @@ EventReadDevDimensions(InputInfoPtr pInf
+@@ -961,12 +974,14 @@ EventReadDevDimensions(InputInfoPtr pInf
  #endif
          event_query_axis_ranges(pInfo);
      }
 -    event_query_led(pInfo);
-     event_query_model(pInfo->fd, &priv->model, &priv->id_vendor, 
&priv->id_product);
+     event_query_model(pInfo->fd, &priv->model, &priv->id_vendor,
+                       &priv->id_product);
  
      xf86IDrvMsg(pInfo, X_PROBED, "Vendor %#hx Product %#hx\n",
                  priv->id_vendor, priv->id_product);

++++++ xf86-input-synaptics-wait.diff ++++++
--- /var/tmp/diff_new_pack.9i0bWN/_old  2012-05-16 21:11:07.000000000 +0200
+++ /var/tmp/diff_new_pack.9i0bWN/_new  2012-05-16 21:11:07.000000000 +0200
@@ -12,35 +12,35 @@
 +    const int max_wait = 2000;
  
      if (device) {
-       int fd = -1;
+         int fd = -1;
 @@ -533,6 +535,7 @@
-       }
+         }
      }
  
 +    while (wait <= max_wait && !touchpad_found) {
      i = scandir(DEV_INPUT_EVENT, &namelist, EventDevOnly, alphasort);
      if (i < 0) {
-               xf86IDrvMsg(pInfo, X_ERROR, "Couldn't open %s\n", 
DEV_INPUT_EVENT);
+         xf86IDrvMsg(pInfo, X_ERROR, "Couldn't open %s\n", DEV_INPUT_EVENT);
 @@ -556,8 +559,8 @@
  
-                       if (event_query_is_touchpad(fd, TRUE)) {
-                               touchpad_found = TRUE;
--                          xf86IDrvMsg(pInfo, X_PROBED, "auto-dev sets device 
to %s\n",
--                                      fname);
-+                          xf86IDrvMsg(pInfo, X_PROBED, "auto-dev sets device 
to %s (waited %d msec)\n",
-+                                      fname, wait);
-                           pInfo->options =
-                               xf86ReplaceStrOption(pInfo->options, "Device", 
fname);
-                       }
+             if (event_query_is_touchpad(fd, TRUE)) {
+                 touchpad_found = TRUE;
+-                xf86IDrvMsg(pInfo, X_PROBED, "auto-dev sets device to %s\n",
+-                            fname);
++                xf86IDrvMsg(pInfo, X_PROBED, "auto-dev sets device to %s 
(waited %d msec)\n",
++                            fname, wait);
+                 pInfo->options =
+                     xf86ReplaceStrOption(pInfo->options, "Device", fname);
+             }
 @@ -565,6 +568,13 @@
-               }
-               free(namelist[i]);
+         }
+         free(namelist[i]);
      }
 +    if (!touchpad_found) {
-+      xf86IDrvMsg(pInfo, X_ERROR, "waiting 100 msec to become devices 
ready\n");
-+      usleep(100*1000);
-+      wait += 100;
-+      xf86IDrvMsg(pInfo, X_ERROR, "aiting time total: %d\n", wait);
++        xf86IDrvMsg(pInfo, X_ERROR, "waiting 100 msec to become devices 
ready\n");
++        usleep(100*1000);
++        wait += 100;
++        xf86IDrvMsg(pInfo, X_ERROR, "aiting time total: %d\n", wait);
 +    }
 +    } /* while (wait <= max_wait && !touchpad_found) */
  

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to