diff --git a/components/mobileshell/qml/actiondrawer/ActionDrawer.qml b/components/mobileshell/qml/actiondrawer/ActionDrawer.qml index 97adb547..675806d7 100644 --- a/components/mobileshell/qml/actiondrawer/ActionDrawer.qml +++ b/components/mobileshell/qml/actiondrawer/ActionDrawer.qml @@ -55,6 +55,12 @@ Item { */ property bool opened: false + /** + * Whether the panel should open to pinned mode first, with a second stroke needed to full open. + * Only applies to portrait mode. + */ + property bool openToPinnedMode: true + /** * Direction the panel is currently moving in. */ @@ -108,6 +114,11 @@ Item { if (offset < 0) { offset = 0; } + + if (offset >= contentContainerLoader.minimizedQuickSettingsOffset && !openToPinnedMode) { + root.opened = true; + } + root.direction = (oldOffset === offset) ? MobileShell.Direction.None : (offset > oldOffset ? MobileShell.Direction.Down : MobileShell.Direction.Up); diff --git a/components/mobileshell/qml/actiondrawer/ActionDrawerOpenSurface.qml b/components/mobileshell/qml/actiondrawer/ActionDrawerOpenSurface.qml index 84487070..3e84ea1a 100644 --- a/components/mobileshell/qml/actiondrawer/ActionDrawerOpenSurface.qml +++ b/components/mobileshell/qml/actiondrawer/ActionDrawerOpenSurface.qml @@ -43,6 +43,9 @@ MouseArea { anchors.fill: parent onPressed: { oldMouseY = mouse.y; + + actionDrawer.openToPinnedMode = mouse.x < root.width/2 ? false : true; + startSwipe(); } onReleased: endSwipe()