@@ -12,6 +12,7 @@ QtObject {
12 property int sideStageWidth: 0
12 property int sideStageWidth: 0
13 property int sideStageX: sceneWidth
13 property int sideStageX: sceneWidth
14 property bool animateX: false
14 property bool animateX: false
15+ property int leftEdgeDragProgress: 0
16 property int stage: ApplicationInfoInterface.MainStage
17 property int stage: ApplicationInfoInterface.MainStage
17 property var thisDelegate: null
18 property var thisDelegate: null
@@ -25,6 +26,10 @@ QtObject {
25 // of the last focused order.
26 // of the last focused order.
26 readonly property int itemZ: {
27 readonly property int itemZ: {
27 // only shuffle when we've got a main and side stage
28 // only shuffle when we've got a main and side stage
29+ if (thisDelegate.isDash && thisDelegate != mainStageDelegate) {
30+ return -1; // Keep the dash behind all other apps for the left edge gesture
28 if (!sideStageDelegate) return itemIndex;
33 if (!sideStageDelegate) return itemIndex;
30 // don't shuffle indexes greater than "actives or next"
35 // don't shuffle indexes greater than "actives or next"
@@ -57,7 +62,15 @@ QtObject {
65+ property int itemX: {
60− property int itemX: mainStageDelegate == thisDelegate ? 0 : sideStageDelegate == thisDelegate ? sideStageX : sceneWidth
66+ if (mainStageDelegate == thisDelegate) {
67+ return thisDelegate.isDash ? 0 : leftEdgeDragProgress;
69+ if (sideStageDelegate == thisDelegate) {
72+ return thisDelegate.isDash ? 0 : sceneWidth;
61 Behavior on itemX { enabled: root.animateX; UbuntuNumberAnimation {} }
74 Behavior on itemX { enabled: root.animateX; UbuntuNumberAnimation {} }
63 readonly property int itemWidth: stage == ApplicationInfoInterface.MainStage ?
76 readonly property int itemWidth: stage == ApplicationInfoInterface.MainStage ?