diff --git a/containments/homescreen/package/contents/ui/launcher/AppDrawer.qml b/containments/homescreen/package/contents/ui/launcher/AppDrawer.qml index 6e7e2ee5..ed6508b7 100644 --- a/containments/homescreen/package/contents/ui/launcher/AppDrawer.qml +++ b/containments/homescreen/package/contents/ui/launcher/AppDrawer.qml @@ -98,9 +98,17 @@ Item { } if (view.movementDirection === AppDrawer.MovementDirection.Up) { - open(); + if (view.contentY > 7 * -view.height / 8) { // over one eighth of the screen + open(); + } else { + close(); + } } else { - close(); + if (view.contentY < -view.height / 8) { // over one eighth of the screen + close(); + } else { + open(); + } } } @@ -116,8 +124,9 @@ Item { id: scrollAnim target: view properties: "contentY" - duration: units.longDuration - easing.type: Easing.InOutQuad + duration: units.longDuration * 2 + easing.type: Easing.OutQuad + easing.amplitude: 2.0 } PC3.Label { @@ -170,6 +179,16 @@ Item { bottomMargin: root.bottomPadding } + opacity: { + if (root.status == AppDrawer.Status.Open) { + return 1; + } else if (root.status == AppDrawer.Status.Closed) { + return 0; + } else { // peeking + return (1 - view.contentY / -view.height); + } + } + visible: root.status !== AppDrawer.Status.Closed cellWidth: view.width / Math.floor(view.width / ((root.availableCellHeight - root.reservedSpaceForLabel) + units.smallSpacing*4)) cellHeight: root.availableCellHeight