[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