feat(settings/touchpad): add natural scrolling

pull/39/head
kateleet 4 years ago
parent 9d830bd32d
commit 72efae40d3

@ -4,6 +4,7 @@
<property name="available" type="b" access="read"/>
<property name="enabled" type="b" access="read"/>
<property name="tapToClick" type="b" access="read"/>
<property name="naturalScroll" type="b" access="read"/>
<property name="pointerAcceleration" type="d" access="read"/>
<method name="setEnabled">
@ -14,6 +15,10 @@
<arg name="enabled" type="b" direction="in"/>
</method>
<method name="setNaturalScroll">
<arg name="enabled" type="b" direction="in"/>
</method>
<method name="setPointerAcceleration">
<arg name="value" type="d" direction="in"/>
</method>

@ -42,6 +42,17 @@ void TouchpadManager::setTapToClick(bool value)
m_backend->applyConfig();
}
bool TouchpadManager::naturalScroll() const
{
return m_backend->naturalScroll();
}
void TouchpadManager::setNaturalScroll(bool naturalScroll)
{
m_backend->setNaturalScroll(naturalScroll);
m_backend->applyConfig();
}
qreal TouchpadManager::pointerAcceleration() const
{
return m_backend->pointerAcceleration();

@ -10,6 +10,7 @@ class TouchpadManager : public QObject
Q_PROPERTY(bool available READ available CONSTANT)
Q_PROPERTY(bool enabled READ enabled WRITE setEnabled CONSTANT)
Q_PROPERTY(bool tapToClick READ tapToClick WRITE setTapToClick CONSTANT)
Q_PROPERTY(bool naturalScroll READ naturalScroll WRITE setNaturalScroll CONSTANT)
Q_PROPERTY(qreal pointerAcceleration READ pointerAcceleration WRITE setPointerAcceleration CONSTANT)
public:
@ -23,6 +24,9 @@ public:
bool tapToClick() const;
void setTapToClick(bool value);
bool naturalScroll() const;
void setNaturalScroll(bool naturalScroll);
qreal pointerAcceleration() const;
void setPointerAcceleration(qreal value);

@ -225,6 +225,26 @@ void XlibBackend::setTapToClick(bool enabled)
object->setTapToClick(enabled);
}
bool XlibBackend::naturalScroll()
{
LibinputTouchpad *object = dynamic_cast<LibinputTouchpad *>(m_device.data());
if (!object)
return false;
return object->isNaturalScroll();
}
void XlibBackend::setNaturalScroll(bool value)
{
LibinputTouchpad *object = dynamic_cast<LibinputTouchpad *>(m_device.data());
if (!object)
return;
object->setNaturalScroll(value);
}
qreal XlibBackend::pointerAcceleration()
{
LibinputTouchpad *object = dynamic_cast<LibinputTouchpad *>(m_device.data());

@ -73,6 +73,9 @@ public:
bool tapToClick();
void setTapToClick(bool enabled);
bool naturalScroll();
void setNaturalScroll(bool value);
qreal pointerAcceleration();
void setPointerAcceleration(qreal value);

Loading…
Cancel
Save