[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [plasma-desktop/Plasma/5.6] kcms/touchpad/src: Touchpad KCM: Fix synaptics driver issues
From:       Rajeesh K V <rajeeshknambiar () gmail ! com>
Date:       2016-03-09 19:31:19
Message-ID: E1adjpH-0004Yy-Kl () scm ! kde ! org
[Download RAW message or body]

Git commit 86b59198f1c60236034567dc804b578376f8d06c by Rajeesh K V.
Committed on 09/03/2016 at 19:29.
Pushed by knambiar into branch 'Plasma/5.6'.

Touchpad KCM: Fix synaptics driver issues
Fixes couple of issues:
1.  Remove spurious members of SynapticsTouchpad class from parent class \
XlibTouchpad; fixing wrong scroll delta values. 2.  Enlarge \
vertical,horizontal&circular scroll delta and maxtapmove allowing value more than \
100. The max value supported by driver is 1000

REVIEW: 127306
BUG: 359460

M  +15   -0    kcms/touchpad/src/backends/x11/synapticstouchpad.cpp
M  +3    -1    kcms/touchpad/src/backends/x11/synapticstouchpad.h
M  +1    -10   kcms/touchpad/src/backends/x11/xlibtouchpad.cpp
M  +2    -4    kcms/touchpad/src/backends/x11/xlibtouchpad.h
M  +3    -3    kcms/touchpad/src/kcm/touchpad.kcfg
M  +13   -1    kcms/touchpad/src/kcm/ui/scroll.ui
M  +3    -0    kcms/touchpad/src/kcm/ui/tap.ui

http://commits.kde.org/plasma-desktop/86b59198f1c60236034567dc804b578376f8d06c

diff --git a/kcms/touchpad/src/backends/x11/synapticstouchpad.cpp \
b/kcms/touchpad/src/backends/x11/synapticstouchpad.cpp index 1e01894..d4742bf 100644
--- a/kcms/touchpad/src/backends/x11/synapticstouchpad.cpp
+++ b/kcms/touchpad/src/backends/x11/synapticstouchpad.cpp
@@ -233,3 +233,18 @@ SynapticsTouchpad::SynapticsTouchpad(Display *display, int \
deviceId): XlibTouchp  
     m_paramList = synapticsProperties;
 }
+
+double SynapticsTouchpad::getPropertyScale(const QString &name) const
+{
+    if (m_scaleByResX.contains(name) && m_scaleByResY.contains(name)) {
+        return std::sqrt(static_cast<double>(m_resX) * m_resX
+                         + static_cast<double>(m_resY) * m_resY);
+    } else if (m_scaleByResX.contains(name)) {
+        return m_resX;
+    } else if (m_scaleByResY.contains(name)) {
+        return m_resY;
+    } else if (m_toRadians.contains(name)) {
+        return M_PI_4 / 45.0;
+    }
+    return 1.0;
+}
diff --git a/kcms/touchpad/src/backends/x11/synapticstouchpad.h \
b/kcms/touchpad/src/backends/x11/synapticstouchpad.h index de75125..95b5675 100644
--- a/kcms/touchpad/src/backends/x11/synapticstouchpad.h
+++ b/kcms/touchpad/src/backends/x11/synapticstouchpad.h
@@ -27,10 +27,12 @@ class SynapticsTouchpad : public XlibTouchpad
 public:
     SynapticsTouchpad(Display *display, int deviceId);
 
+protected:
+    double getPropertyScale(const QString &name) const Q_DECL_OVERRIDE;
+
 private:
     XcbAtom m_capsAtom;
     int m_resX, m_resY;
-    QMap<QString, QString> m_negate;
     QStringList m_scaleByResX, m_scaleByResY, m_toRadians;
 };
 
diff --git a/kcms/touchpad/src/backends/x11/xlibtouchpad.cpp \
b/kcms/touchpad/src/backends/x11/xlibtouchpad.cpp index 441bcad..53eb249 100644
--- a/kcms/touchpad/src/backends/x11/xlibtouchpad.cpp
+++ b/kcms/touchpad/src/backends/x11/xlibtouchpad.cpp
@@ -171,16 +171,7 @@ void XlibTouchpad::flush()
 
 double XlibTouchpad::getPropertyScale(const QString& name) const
 {
-    if (m_scaleByResX.contains(name) && m_scaleByResY.contains(name)) {
-        return std::sqrt(static_cast<double>(m_resX) * m_resX
-                         + static_cast<double>(m_resY) * m_resY);
-    } else if (m_scaleByResX.contains(name)) {
-        return m_resX;
-    } else if (m_scaleByResY.contains(name)) {
-        return m_resY;
-    } else if (m_toRadians.contains(name)) {
-        return M_PI_4 / 45.0;
-    }
+    Q_UNUSED(name);
     return 1.0;
 }
 
diff --git a/kcms/touchpad/src/backends/x11/xlibtouchpad.h \
b/kcms/touchpad/src/backends/x11/xlibtouchpad.h index 0eb58fb..6e72f21 100644
--- a/kcms/touchpad/src/backends/x11/xlibtouchpad.h
+++ b/kcms/touchpad/src/backends/x11/xlibtouchpad.h
@@ -46,6 +46,7 @@ class XlibTouchpad
 {
 public:
     XlibTouchpad(Display *display, int deviceId);
+    virtual ~XlibTouchpad() {};
 
     int deviceId() { return m_deviceId; }
     const QStringList &supportedParameters() const { return m_supported; }
@@ -64,7 +65,7 @@ protected:
     QVariant getParameter(const struct Parameter *);
     struct PropertyInfo *getDevProperty(const QLatin1String &propName);
     void flush();
-    double getPropertyScale(const QString &name) const;
+    virtual double getPropertyScale(const QString &name) const;
     const Parameter * findParameter(const QString &name);
 
     Display *m_display;
@@ -75,10 +76,7 @@ protected:
 
     QMap<QLatin1String, QSharedPointer<XcbAtom> > m_atoms;
 
-    int m_resX, m_resY;
-    QStringList m_scaleByResX, m_scaleByResY, m_toRadians;
     QMap<QString, QString> m_negate;
-
     QMap<QLatin1String, struct PropertyInfo> m_props;
     QSet<QLatin1String> m_changed;
     QStringList m_supported;
diff --git a/kcms/touchpad/src/kcm/touchpad.kcfg \
b/kcms/touchpad/src/kcm/touchpad.kcfg index d4d127c..e750bc2 100644
--- a/kcms/touchpad/src/kcm/touchpad.kcfg
+++ b/kcms/touchpad/src/kcm/touchpad.kcfg
@@ -132,7 +132,7 @@
         </entry>
         <entry name="VertScrollDelta" type="Double">
             <min>0</min>
-            <max>10</max>
+            <max>1000</max>
             <default code="true">
                 systemDefault("VertScrollDelta", 1.0)
             </default>
@@ -144,7 +144,7 @@
         </entry>
         <entry name="HorizScrollDelta" type="Double">
             <min>0</min>
-            <max>10</max>
+            <max>1000</max>
             <default code="true">
                 systemDefault("HorizScrollDelta", 1.0)
             </default>
@@ -234,7 +234,7 @@
         </entry>
         <entry name="MaxTapMove" type="Double">
             <min>0</min>
-            <max>20</max>
+            <max>1000</max>
             <default code="true">
                 systemDefault("MaxTapMove", 2.0)
             </default>
diff --git a/kcms/touchpad/src/kcm/ui/scroll.ui b/kcms/touchpad/src/kcm/ui/scroll.ui
index d1c2f76..e73b54d 100644
--- a/kcms/touchpad/src/kcm/ui/scroll.ui
+++ b/kcms/touchpad/src/kcm/ui/scroll.ui
@@ -147,6 +147,9 @@
         <property name="toolTip">
          <string>Move distance of the finger for a scroll event</string>
         </property>
+        <property name="maximum">
+         <double>1000.000000000000000</double>
+        </property>
         <property name="singleStep">
          <double>0.100000000000000</double>
         </property>
@@ -173,6 +176,9 @@
         <property name="toolTip">
          <string>Move distance of the finger for a scroll event</string>
         </property>
+        <property name="maximum">
+         <double>1000.000000000000000</double>
+        </property>
         <property name="singleStep">
          <double>0.100000000000000</double>
         </property>
@@ -322,13 +328,19 @@ will scroll down and counter clockwise motion will scroll \
up</string>  </widget>
       </item>
       <item row="2" column="1">
-       <widget class="QSpinBox" name="kcfg_CircScrollDelta">
+       <widget class="QDoubleSpinBox" name="kcfg_CircScrollDelta">
         <property name="sizePolicy">
          <sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
           <horstretch>0</horstretch>
           <verstretch>0</verstretch>
          </sizepolicy>
         </property>
+        <property name="maximum">
+         <double>45.000000000000000</double>
+        </property>
+        <property name="singleStep">
+         <double>0.100000000000000</double>
+        </property>
         <property name="toolTip">
          <string>Move angle (radians) of finger to generate a scroll event</string>
         </property>
diff --git a/kcms/touchpad/src/kcm/ui/tap.ui b/kcms/touchpad/src/kcm/ui/tap.ui
index 389db5e..cfe5534 100644
--- a/kcms/touchpad/src/kcm/ui/tap.ui
+++ b/kcms/touchpad/src/kcm/ui/tap.ui
@@ -407,6 +407,9 @@
         <property name="toolTip">
          <string>Maximum movement of the finger for detecting a tap</string>
         </property>
+        <property name="maximum">
+         <double>1000.000000000000000</double>
+        </property>
         <property name="singleStep" stdset="0">
          <double>0.100000000000000</double>
         </property>


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic