@@ -731,9 +731,15 @@ AbstractStage {
733 function playFocusAnimation() {
733 function playFocusAnimation() {
734− if (state == "stagedrightedge" || state == "sidestagedrightedge") {
734+ if (state == "sidestagedrightedge") {
735+ // TODO: Can we drop this if and find something that always works?
736+ if (root.mode == "staged") {
737+ rightEdgeFocusAnimation.targetX = 0
738+ rightEdgeFocusAnimation.start()
739+ } else if (root.mode == "stagedWithSideStage") {
735− rightEdgeFocusAnimation.targetX = appDelegate.stage == ApplicationInfoInterface.SideStage ? sideStage.x : 0
740+ rightEdgeFocusAnimation.targetX = appDelegate.stage == ApplicationInfoInterface.SideStage ? sideStage.x : 0
736− rightEdgeFocusAnimation.start()
741+ rightEdgeFocusAnimation.start()
738 focusAnimation.start()
744 focusAnimation.start()
@@ -753,7 +759,7 @@ AbstractStage {
753 ParallelAnimation {
759 ParallelAnimation {
754 id: rightEdgeFocusAnimation
760 id: rightEdgeFocusAnimation
755 property int targetX: 0
761 property int targetX: 0
756− UbuntuNumberAnimation { target: appDelegate; properties: "x"; to: targetX; duration: priv.animationDuration }
762+ UbuntuNumberAnimation { target: appDelegate; properties: "x"; to: rightEdgeFocusAnimation.targetX; duration: priv.animationDuration }
757 UbuntuNumberAnimation { target: decoratedWindow; properties: "angle"; to: 0; duration: priv.animationDuration }
763 UbuntuNumberAnimation { target: decoratedWindow; properties: "angle"; to: 0; duration: priv.animationDuration }
758 UbuntuNumberAnimation { target: decoratedWindow; properties: "itemScale"; to: 1; duration: priv.animationDuration }
764 UbuntuNumberAnimation { target: decoratedWindow; properties: "itemScale"; to: 1; duration: priv.animationDuration }
759 onStopped: appDelegate.focus = true
765 onStopped: appDelegate.focus = true