@@ -70,12 +70,8 @@ Item {
7070 animateTimer.start();
7171 }
7272
73− function tease(interval) {
74− if (available && root.state == "" && !dragArea.dragging) {
75− if (interval === undefined) {
76− interval = 200;
77− }
78− teaseTimer.interval = interval;
73+ function tease() {
74+ if (available && !dragArea.dragging) {
7975 teaseTimer.mode = "teasing"
8076 teaseTimer.start();
8177 }
@@ -83,7 +79,6 @@ Item {
8379
8480 function hint() {
8581 if (available && root.state == "") {
86− teaseTimer.interval = 300;
8782 teaseTimer.mode = "hinting"
8883 teaseTimer.start();
8984 }
@@ -91,7 +86,8 @@ Item {
9186
9287 Timer {
9388 id: teaseTimer
94− property string mode
89+ interval: mode == "teasing" ? 200 : 300
90+ property string mode: "teasing"
9591 }
9692
9793 Timer {
@@ -214,7 +210,7 @@ Item {
214210 bottom: parent.bottom
215211 }
216212 x: -width
217− visible: x > -width || dragArea.status === DirectionalDragArea.Undecided
213+ visible: root.x > 0 || x > -width || dragArea.status === DirectionalDragArea.Undecided
218214 model: LauncherModel
219215
220216 property bool animate: true
@@ -256,6 +252,7 @@ Item {
256252 direction: Direction.Rightwards
257253
258254 enabled: root.available
255+ x: -root.x // so if launcher is adjusted relative to screen, we stay put (like tutorial does when teasing)
259256 width: root.dragAreaWidth
260257 height: root.height
261258
@@ -269,7 +266,7 @@ Item {
269266 // would appear right next to the user's finger out of nowhere.
270267 // Instead, we make the panel go towards the user's finger in several
271268 // steps. ie., in an animated way.
272− var targetPanelX = Math.min(0, touchX - panel.width)
269+ var targetPanelX = Math.min(0, touchX - panel.width) - root.x
273270 var delta = targetPanelX - panel.x
274271 // the trick is not to go all the way (1.0) as it would cause a sudden jump
275272 panel.x += 0.4 * delta
@@ -285,8 +282,6 @@ Item {
285282 } else {
286283 root.switchToNextState("")
287284 }
288− } else {
289− teaseTimer.stop();
290285 }
291286 }
292287 }
@@ -303,7 +298,7 @@ Item {
303298 name: "visible"
304299 PropertyChanges {
305300 target: panel
306− x: 0
301+ x: -root.x // so we never go past panelWidth, even when teased by tutorial
307302 }
308303 },
309304 State {