aboutsummaryrefslogtreecommitdiff
path: root/src/widgets/kristalltextbrowser.cpp
diff options
context:
space:
mode:
authorMike Skec <skec@protonmail.ch>2021-02-22 08:26:38 +1100
committerFelix Queißner <felix@ib-queissner.de>2021-02-24 13:10:20 +0100
commit5d39646cefe10eb49624e156693eacb34ee87ae1 (patch)
treec49648772d798709be41fd8305db1d8d1b5d3f51 /src/widgets/kristalltextbrowser.cpp
parent1db0a60a425e2b1008e805979f4fa8edfb9b4993 (diff)
downloadkristall-5d39646cefe10eb49624e156693eacb34ee87ae1.tar.gz
KristallTextBrowser: touch scroll fix
Tries to use touch scrolling only if a TouchScreen device is present. This prevents Touch*Pad* devices from allowing annoying click+mouse scrolling
Diffstat (limited to 'src/widgets/kristalltextbrowser.cpp')
-rw-r--r--src/widgets/kristalltextbrowser.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/widgets/kristalltextbrowser.cpp b/src/widgets/kristalltextbrowser.cpp
index e2c017b..b00a870 100644
--- a/src/widgets/kristalltextbrowser.cpp
+++ b/src/widgets/kristalltextbrowser.cpp
@@ -15,11 +15,15 @@ KristallTextBrowser::KristallTextBrowser(QWidget *parent) :
{
connect(this, &QTextBrowser::anchorClicked, this, &KristallTextBrowser::on_anchorClicked);
- // Enable touch scrolling
- if (QTouchDevice::devices().length() > 0)
+ // Enable touch scrolling on touchscreen devices
+ for (int i = 0; i < QTouchDevice::devices().length(); ++i)
{
- this->viewport()->setAttribute(Qt::WA_AcceptTouchEvents);
- QScroller::grabGesture(this, QScroller::LeftMouseButtonGesture);
+ if (QTouchDevice::devices()[i]->type() == QTouchDevice::TouchScreen)
+ {
+ this->viewport()->setAttribute(Qt::WA_AcceptTouchEvents);
+ QScroller::grabGesture(this, QScroller::LeftMouseButtonGesture);
+ break;
+ }
}
}