summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Sebastian Kügler <sebas@kde.org>2016-01-07 00:39:33 +0100
committerGravatar Sebastian Kügler <sebas@kde.org>2016-01-07 00:39:33 +0100
commit95bca4b50c4fd46ae190ac87ea8934523881b776 (patch)
treec7803775c577095a8d5d21756569039f387b4a38
parenta9b53efce6cdd7f6329794c9cd46525216b6844c (diff)
downloadsubsurface-95bca4b50c4fd46ae190ac87ea8934523881b776.tar.gz
sync with mobilecomponents 9d179eb74a227
- Workaround for black squares is merged upstream - brings back the FAB button, additional - swipe interaction improvements in the same Signed-off-by: Sebastian Kügler <sebas@kde.org>
-rw-r--r--qt-mobile/qml/mobilecomponents/ApplicationWindow.qml2
-rw-r--r--qt-mobile/qml/mobilecomponents/ContextDrawer.qml3
-rw-r--r--qt-mobile/qml/mobilecomponents/Icon.qml16
-rw-r--r--qt-mobile/qml/mobilecomponents/Page.qml5
-rw-r--r--qt-mobile/qml/mobilecomponents/private/ActionButton.qml18
5 files changed, 24 insertions, 20 deletions
diff --git a/qt-mobile/qml/mobilecomponents/ApplicationWindow.qml b/qt-mobile/qml/mobilecomponents/ApplicationWindow.qml
index 0eaa81ec0..8926b0574 100644
--- a/qt-mobile/qml/mobilecomponents/ApplicationWindow.qml
+++ b/qt-mobile/qml/mobilecomponents/ApplicationWindow.qml
@@ -85,7 +85,6 @@ inputMethod.keyboardRectangle.y) : 0
width: Units.gridUnit * 25
height: Units.gridUnit * 30
-/*
property alias actionButton: __actionButton
ActionButton {
id: __actionButton
@@ -98,5 +97,4 @@ inputMethod.keyboardRectangle.y) : 0
visible: root.globalDrawer || root.contextDrawer
}
- */
}
diff --git a/qt-mobile/qml/mobilecomponents/ContextDrawer.qml b/qt-mobile/qml/mobilecomponents/ContextDrawer.qml
index 575ac3679..088399721 100644
--- a/qt-mobile/qml/mobilecomponents/ContextDrawer.qml
+++ b/qt-mobile/qml/mobilecomponents/ContextDrawer.qml
@@ -67,10 +67,11 @@ OverlayDrawer {
}
}
delegate: BasicListItem {
- enabled: true
checked: modelData.checked
icon: modelData.iconName
label: model ? model.text : modelData.text
+ enabled: model ? model.enabled : modelData.enabled
+ opacity: enabled ? 1.0 : 0.6
onClicked: {
if (modelData && modelData.trigger !== undefined) {
modelData.trigger();
diff --git a/qt-mobile/qml/mobilecomponents/Icon.qml b/qt-mobile/qml/mobilecomponents/Icon.qml
index 9f7be0f9b..150c181e6 100644
--- a/qt-mobile/qml/mobilecomponents/Icon.qml
+++ b/qt-mobile/qml/mobilecomponents/Icon.qml
@@ -38,13 +38,11 @@ Item {
sourceSize.width: root.width
sourceSize.height: root.height
}
- /*
- * this appears to cause us to show nothing but black squares instead
- * of icons on some Android devices
- GammaAdjust {
- anchors.fill: image
- source: image
- gamma: root.active ? 3.0 : 1
- }
- */
+ /* // FIXME: This causes black squares on some GLES drivers, notably on Adreno hardware
+ GammaAdjust {
+ anchors.fill: image
+ source: image
+ gamma: root.active ? 3.0 : 1
+ }
+ */
}
diff --git a/qt-mobile/qml/mobilecomponents/Page.qml b/qt-mobile/qml/mobilecomponents/Page.qml
index 449c7aa47..9220357e6 100644
--- a/qt-mobile/qml/mobilecomponents/Page.qml
+++ b/qt-mobile/qml/mobilecomponents/Page.qml
@@ -45,11 +45,8 @@ Rectangle {
* Defines the contextual actions for the page:
* an easy way to assign actions in the right sliding panel
*/
- property alias contextualActions: internalContextualActions.data
+ property list<QtObject> contextualActions
- Item {
- id: internalContextualActions
- }
Layout.fillWidth: true
color: "transparent"
diff --git a/qt-mobile/qml/mobilecomponents/private/ActionButton.qml b/qt-mobile/qml/mobilecomponents/private/ActionButton.qml
index 80f037e48..c6963c285 100644
--- a/qt-mobile/qml/mobilecomponents/private/ActionButton.qml
+++ b/qt-mobile/qml/mobilecomponents/private/ActionButton.qml
@@ -29,9 +29,9 @@ MouseArea {
property bool checked: false
//either Action or QAction should work here
property QtObject action
- Layout.minimumWidth: Units.iconSizes.large
+ Layout.minimumWidth: Units.iconSizes.medium
Layout.maximumWidth: Layout.minimumWidth
- implicitWidth: Units.iconSizes.large
+ implicitWidth: Units.iconSizes.medium
implicitHeight: width
drag {
target: button
@@ -52,11 +52,21 @@ MouseArea {
transform: Translate {
id: translateTransform
}
+ property var downTimestamp;
+ property int startX
+ onPressed: {
+ downTimestamp = (new Date()).getTime();
+ startX = button.x
+ }
onReleased: {
- if (globalDrawer && x > Math.min(parent.width/4*3, parent.width/2 + globalDrawer.contentItem.width/2)) {
+ //pixel/second
+ var speed = ((button.x - startX) / ((new Date()).getTime() - downTimestamp) * 1000);
+
+ //project where it would be a full second in the future
+ if (globalDrawer && x + speed > Math.min(parent.width/4*3, parent.width/2 + globalDrawer.contentItem.width/2)) {
globalDrawer.open();
contextDrawer.close();
- } else if (contextDrawer && x < Math.max(parent.width/4, parent.width/2 - contextDrawer.contentItem.width/2)) {
+ } else if (contextDrawer && x + speed < Math.max(parent.width/4, parent.width/2 - contextDrawer.contentItem.width/2)) {
if (contextDrawer) {
contextDrawer.open();
}