[SCM] qtdeclarative packaging branch, master, updated. debian/5.5.1-3-6-g9be46d6
Timo Jyrinki
timo at moszumanska.debian.org
Wed Feb 17 10:43:18 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/qt/qtdeclarative.git;a=commitdiff;h=787ed4d
The following commit has been merged in the master branch:
commit 787ed4d665b503d6b05e525f2a8e18c498e8711d
Author: Timo Jyrinki <timo.jyrinki at canonical.com>
Date: Wed Dec 16 10:07:00 2015 +0000
Cherry-pick a flickable and multi point touch area fixes.
* debian/patches/Flickable-avoid-perturbing-the-timeline-further-whil.patch:
- Avoid infinite velocity during release, after a drag. (LP: #1521917)
* debian/patches/MultiPointTouchArea-Fixed-released-duplication-on-mo.patch:
- Fix every key being pressed twice on desktop (LP: #1451554)
---
debian/changelog | 4 ++
...void-perturbing-the-timeline-further-whil.patch | 50 +++++++++++++++++
...ouchArea-Fixed-released-duplication-on-mo.patch | 65 ++++++++++++++++++++++
debian/patches/series | 2 +
4 files changed, 121 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index da82676..c5b3cef 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,10 @@ qtdeclarative-opensource-src (5.5.1-4) UNRELEASED; urgency=medium
* Add qmlplugindump-Don-t-try-to-import-Qt.test.qtestroot.patch
(LP: #1473976)
+ * debian/patches/Flickable-avoid-perturbing-the-timeline-further-whil.patch:
+ - Avoid infinite velocity during release, after a drag. (LP: #1521917)
+ * debian/patches/MultiPointTouchArea-Fixed-released-duplication-on-mo.patch:
+ - Fix every key being pressed twice on desktop (LP: #1451554)
-- Debian Qt/KDE Maintainers <debian-qt-kde at lists.debian.org> Wed, 17 Feb 2016 10:15:48 +0000
diff --git a/debian/patches/Flickable-avoid-perturbing-the-timeline-further-whil.patch b/debian/patches/Flickable-avoid-perturbing-the-timeline-further-whil.patch
new file mode 100644
index 0000000..3640dd4
--- /dev/null
+++ b/debian/patches/Flickable-avoid-perturbing-the-timeline-further-whil.patch
@@ -0,0 +1,50 @@
+From 8f339861d48a6d624516780442e191b55209a053 Mon Sep 17 00:00:00 2001
+From: Shawn Rutledge <shawn.rutledge at digia.com>
+Date: Wed, 2 Dec 2015 15:26:50 +0100
+Subject: [PATCH] Flickable: avoid perturbing the timeline further while in
+ overshoot
+
+The bug was that when using the mouse wheel, a single "scroll down"
+wheel event followed by a rapid succession of "scroll up" events
+would cause extreme overshoot. Experimentally determined that when
+this happens, the calls to timeline.accel() in
+QQuickFlickablePrivate::flick() were occurring after the call to
+accel in QQuickFlickablePrivate::viewportAxisMoved(). But nearby,
+data.inOvershoot is set to true, so that can be used to avoid calling
+accel() additional times in flick(). So basically, this patch avoids
+doing any more acceleration in response to further wheel events after
+the momentum from previous events has already taken the content
+beyond bounds.
+
+Task-number: QTBUG-21328
+Change-Id: I3ab5510a288a080f6b526407b6a2293c44a2498a
+Reviewed-by: J-P Nurmi <jpnurmi at theqtcompany.com>
+Reviewed-by: Robin Burchell <robin.burchell at viroteck.net>
+---
+ src/quick/items/qquickflickable.cpp | 10 ++++++----
+ 1 file changed, 6 insertions(+), 4 deletions(-)
+
+diff --git a/src/quick/items/qquickflickable.cpp b/src/quick/items/qquickflickable.cpp
+index 9d6c51f..092d4af 100644
+--- a/src/quick/items/qquickflickable.cpp
++++ b/src/quick/items/qquickflickable.cpp
+@@ -344,10 +344,12 @@ bool QQuickFlickablePrivate::flick(AxisData &data, qreal minExtent, qreal maxExt
+ accel = v2 / (2.0f * qAbs(dist));
+
+ resetTimeline(data);
+- if (boundsBehavior & QQuickFlickable::OvershootBounds)
+- timeline.accel(data.move, v, accel);
+- else
+- timeline.accel(data.move, v, accel, maxDistance);
++ if (!data.inOvershoot) {
++ if (boundsBehavior & QQuickFlickable::OvershootBounds)
++ timeline.accel(data.move, v, accel);
++ else
++ timeline.accel(data.move, v, accel, maxDistance);
++ }
+ timeline.callback(QQuickTimeLineCallback(&data.move, fixupCallback, this));
+
+ if (&data == &hData)
+--
+2.6.4
+
diff --git a/debian/patches/MultiPointTouchArea-Fixed-released-duplication-on-mo.patch b/debian/patches/MultiPointTouchArea-Fixed-released-duplication-on-mo.patch
new file mode 100644
index 0000000..f13c7f8
--- /dev/null
+++ b/debian/patches/MultiPointTouchArea-Fixed-released-duplication-on-mo.patch
@@ -0,0 +1,65 @@
+From 1e47ced7464dff465ece78c99b6ab9706d05fcdd Mon Sep 17 00:00:00 2001
+From: Alexandr Akulich <akulichalexander at gmail.com>
+Date: Fri, 16 Oct 2015 16:27:46 +0600
+Subject: [PATCH] MultiPointTouchArea: Fixed released() duplication on mouse
+ release.
+
+MousePress and MouseRelease event handlers now better integrated into
+generic touch processing methods.
+
+We used to manually add a touch point for mouse press event and
+prevent updateTouchData() from pressed() emission, but mouseRelease
+handler used to cause the signal emission in updateTouchData() and then
+emit the signal on its own.
+
+The code reworked to always emit pressed() and released() signals from
+the single place in updateTouchData().
+
+[ChangeLog][QtQuick][MultiPointTouchArea] Fixed released() signal
+duplication on mouseReleaseEvent.
+
+Task-number: 44370
+Change-Id: I2d88931ba56d6edf778213c61e9467c2b6abf0e7
+---
+ src/quick/items/qquickmultipointtoucharea.cpp | 8 ++------
+ 1 file changed, 2 insertions(+), 6 deletions(-)
+
+diff --git a/src/quick/items/qquickmultipointtoucharea.cpp b/src/quick/items/qquickmultipointtoucharea.cpp
+index 13ace44..9e658cc 100644
+--- a/src/quick/items/qquickmultipointtoucharea.cpp
++++ b/src/quick/items/qquickmultipointtoucharea.cpp
+@@ -502,8 +502,9 @@ void QQuickMultiPointTouchArea::updateTouchData(QEvent *event)
+ else if (event->type() == QEvent::MouseButtonRelease)
+ _mouseQpaTouchPoint.setState(Qt::TouchPointReleased);
+ else { // QEvent::MouseButtonPress
++ addTouchPoint(me);
++ started = true;
+ _mouseQpaTouchPoint.setState(Qt::TouchPointPressed);
+- _pressedTouchPoints.append(_mouseTouchPoint);
+ }
+ touchPoints << _mouseQpaTouchPoint;
+ isMouseEvent = true;
+@@ -729,9 +730,7 @@ void QQuickMultiPointTouchArea::mousePressEvent(QMouseEvent *event)
+ return;
+
+ if (_touchPoints.count() >= _minimumTouchPoints - 1 && _touchPoints.count() < _maximumTouchPoints) {
+- addTouchPoint(event);
+ updateTouchData(event);
+- emit pressed(_pressedTouchPoints);
+ }
+ }
+
+@@ -762,10 +761,7 @@ void QQuickMultiPointTouchArea::mouseReleaseEvent(QMouseEvent *event)
+
+ if (_mouseTouchPoint) {
+ updateTouchData(event);
+- _mouseTouchPoint->setPressed(false);
+ _mouseTouchPoint->setInUse(false);
+- _releasedTouchPoints.append(_mouseTouchPoint);
+- emit released(_releasedTouchPoints);
+ _releasedTouchPoints.removeAll(_mouseTouchPoint);
+ _mouseTouchPoint = Q_NULLPTR;
+ }
+--
+2.6.2
+
diff --git a/debian/patches/series b/debian/patches/series
index 71625f6..eebe606 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,5 +1,7 @@
# Backported patches
qmlplugindump-Don-t-try-to-import-Qt.test.qtestroot.patch
+Flickable-avoid-perturbing-the-timeline-further-whil.patch
+MultiPointTouchArea-Fixed-released-duplication-on-mo.patch
# Debian patches
check_system_double-conversion.patch
--
qtdeclarative packaging
More information about the pkg-kde-commits
mailing list