@@ -62,16 +62,16 @@ SpreadDelegate {
62 if (spreadView.stage == 1) {
62 if (spreadView.stage == 1) {
63 if (index == 0) {
63 if (index == 0) {
64 priv.stage2startTranslate = priv.easingAnimation(0, spreadView.positionMarker4, 0, -spreadView.width, spreadView.positionMarker4) + spreadView.width;
64 priv.stage2startTranslate = priv.easingAnimation(0, spreadView.positionMarker4, 0, -spreadView.width, spreadView.positionMarker4) + spreadView.width;
65− priv.stage2startAngle = priv.easingAnimation(0, spreadView.positionMarker4, root.startAngle, root.endAngle, spreadView.positionMarker4)
65+ priv.stage2startAngle = priv.easingAnimation(0, spreadView.positionMarker4, root.startAngle, root.endAngle, spreadView.positionMarker4);
66− priv.stage2startScale = priv.easingAnimation(0, spreadView.positionMarker4, root.startScale, root.endScale, spreadView.positionMarker4)
66+ priv.stage2startScale = priv.easingAnimation(0, spreadView.positionMarker4, root.startScale, root.endScale, spreadView.positionMarker4);
67− priv.stage2startTopMarginProgress = priv.easingAnimation(0, 1, 0, 1, spreadView.positionMarker4)
67+ priv.stage2startTopMarginProgress = priv.easingAnimation(0, 1, 0, 1, spreadView.positionMarker4);
68 } else if (index == 1) {
68 } else if (index == 1) {
69 // find where the main easing for Tile 1 would be when reaching stage 2
69 // find where the main easing for Tile 1 would be when reaching stage 2
70 var stage2Progress = spreadView.positionMarker4 - spreadView.tileDistance / spreadView.width;
70 var stage2Progress = spreadView.positionMarker4 - spreadView.tileDistance / spreadView.width;
71 priv.stage2startTranslate = priv.easingAnimation(0, stage2Progress, 0, -spreadView.width + root.endDistance, stage2Progress);
71 priv.stage2startTranslate = priv.easingAnimation(0, stage2Progress, 0, -spreadView.width + root.endDistance, stage2Progress);
72− priv.stage2startAngle = priv.easingAnimation(0, stage2Progress, root.startAngle, root.endAngle, stage2Progress)
72+ priv.stage2startAngle = priv.easingAnimation(0, stage2Progress, root.startAngle, root.endAngle, stage2Progress);
73 priv.stage2startScale = priv.easingAnimation(0, stage2Progress, root.startScale, root.endScale, stage2Progress);
73 priv.stage2startScale = priv.easingAnimation(0, stage2Progress, root.startScale, root.endScale, stage2Progress);
74− priv.stage2startTopMarginProgress = priv.easingAnimation(0, 1, 0, spreadView.positionMarker4, stage2Progress)
74+ priv.stage2startTopMarginProgress = priv.easingAnimation(0, 1, 0, spreadView.positionMarker4, stage2Progress);
@@ -127,7 +127,7 @@ SpreadDelegate {
127 property real xTranslate: {
127 property real xTranslate: {
128 if (otherSelected) {
128 if (otherSelected) {
129 if (spreadView.stage < 2 && index == 0) {
129 if (spreadView.stage < 2 && index == 0) {
130− return linearAnimation(selectedProgress, negativeProgress, selectedXTranslate, selectedXTranslate - spreadView.tileDistance, root.progress)
130+ return linearAnimation(selectedProgress, negativeProgress, selectedXTranslate, selectedXTranslate - spreadView.tileDistance, root.progress);
133 return selectedXTranslate;
133 return selectedXTranslate;
@@ -136,60 +136,70 @@ SpreadDelegate {
136 switch (index) {
136 switch (index) {
138 if (spreadView.stage == 0) {
138 if (spreadView.stage == 0) {
139− return Math.min(0, linearAnimation(0, spreadView.positionMarker2, 0, -spreadView.width * .25, root.animatedProgress))
139+ return Math.min(0, linearAnimation(0, spreadView.positionMarker2,
140+ 0, -spreadView.width * .25, root.animatedProgress));
140 } else if (spreadView.stage == 1){
141 } else if (spreadView.stage == 1){
141− return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4, -spreadView.width * .25, priv.stage2startTranslate, root.progress)
142+ return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4,
143+ -spreadView.width * .25, priv.stage2startTranslate, root.progress);
142 } else if (!priv.isSelected){ // Stage 2
144 } else if (!priv.isSelected){ // Stage 2
143 // Apply the same animation as with the rest but add spreadView.width to align it with the others.
145 // Apply the same animation as with the rest but add spreadView.width to align it with the others.
144− return -easingCurve.value * spreadView.width + spreadView.width
146+ return -easingCurve.value * spreadView.width + spreadView.width;
145 } else if (priv.isSelected) {
147 } else if (priv.isSelected) {
146− return linearAnimation(selectedProgress, negativeProgress, selectedXTranslate, 0, root.progress)
148+ return linearAnimation(selectedProgress, negativeProgress, selectedXTranslate, 0, root.progress);
150 if (spreadView.stage == 0 && !priv.isSelected) {
152 if (spreadView.stage == 0 && !priv.isSelected) {
153+ return linearAnimation(0, spreadView.positionMarker2,
151− return linearAnimation(0, spreadView.positionMarker2, 0, -spreadView.width * spreadView.snapPosition, root.animatedProgress)
154+ 0, -spreadView.width * spreadView.snapPosition, root.animatedProgress);
152 } else if (spreadView.stage == 1 && !priv.isSelected) {
155 } else if (spreadView.stage == 1 && !priv.isSelected) {
153 return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4,
156 return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4,
154− -spreadView.width * spreadView.snapPosition, priv.stage2startTranslate, root.progress);
157+ -spreadView.width * spreadView.snapPosition, priv.stage2startTranslate,
158 if (priv.isSelected) {
162 if (priv.isSelected) {
159 // Distance to left edge
163 // Distance to left edge
160− var targetTranslate = -spreadView.width - ((index - 1) * root.startDistance)
164+ var targetTranslate = -spreadView.width - ((index - 1) * root.startDistance);
161− return linearAnimation(selectedProgress, negativeProgress, selectedXTranslate, targetTranslate, root.progress)
165+ return linearAnimation(selectedProgress, negativeProgress,
166+ selectedXTranslate, targetTranslate, root.progress);
164 // Fix it at the right edge...
169 // Fix it at the right edge...
165− var rightEdgeOffset = -((index - 1) * root.startDistance)
170+ var rightEdgeOffset = -((index - 1) * root.startDistance);
166 // ...and use our easing to move them to the left. Stop a bit earlier for each tile
171 // ...and use our easing to move them to the left. Stop a bit earlier for each tile
167− return -easingCurve.value * spreadView.width + (index * animatedEndDistance) + rightEdgeOffset
172+ return -easingCurve.value * spreadView.width + (index * animatedEndDistance) + rightEdgeOffset;
171 property real angle: {
176 property real angle: {
172 if (priv.otherSelected) {
177 if (priv.otherSelected) {
173− return priv.selectedAngle
178+ return priv.selectedAngle;
175 if (priv.isSelected) {
180 if (priv.isSelected) {
176− return linearAnimation(selectedProgress, negativeProgress, selectedAngle, 0, root.progress)
181+ return linearAnimation(selectedProgress, negativeProgress, selectedAngle, 0, root.progress);
178 switch (index) {
183 switch (index) {
180 if (spreadView.stage == 0) {
185 if (spreadView.stage == 0) {
181− return Math.max(0, linearAnimation(0, spreadView.positionMarker2, 0, root.tile0SnapAngle, root.animatedProgress))
186+ return Math.max(0, linearAnimation(0, spreadView.positionMarker2,
187+ 0, root.tile0SnapAngle, root.animatedProgress));
182 } else if (spreadView.stage == 1) {
188 } else if (spreadView.stage == 1) {
183− return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4, root.tile0SnapAngle, stage2startAngle, root.progress)
189+ return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4,
190+ root.tile0SnapAngle, stage2startAngle, root.progress);
186 if (spreadView.stage == 0) {
193 if (spreadView.stage == 0) {
187− return linearAnimation(0, spreadView.positionMarker2, root.startAngle, root.startAngle * (1-spreadView.snapPosition), root.animatedProgress)
194+ return linearAnimation(0, spreadView.positionMarker2, root.startAngle,
195+ root.startAngle * (1-spreadView.snapPosition), root.animatedProgress);
188 } else if (spreadView.stage == 1) {
196 } else if (spreadView.stage == 1) {
189− return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4, root.startAngle * (1-spreadView.snapPosition), priv.stage2startAngle, root.progress)
197+ return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4,
198+ root.startAngle * (1-spreadView.snapPosition), priv.stage2startAngle,
192− return root.startAngle - easingCurve.value * (root.startAngle - root.endAngle)
202+ return root.startAngle - easingCurve.value * (root.startAngle - root.endAngle);
195 property real scale: {
205 property real scale: {
@@ -197,7 +207,7 @@ SpreadDelegate {
197 return priv.selectedScale;
207 return priv.selectedScale;
199 if (priv.isSelected) {
209 if (priv.isSelected) {
200− return linearAnimation(selectedProgress, negativeProgress, selectedScale, 1, root.progress)
210+ return linearAnimation(selectedProgress, negativeProgress, selectedScale, 1, root.progress);
203 switch (index) {
213 switch (index) {
@@ -205,30 +215,35 @@ SpreadDelegate {
205 if (spreadView.stage == 0) {
215 if (spreadView.stage == 0) {
206 return 1;
216 return 1;
207 } else if(spreadView.stage == 1) {
217 } else if(spreadView.stage == 1) {
208− return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4, 1, stage2startScale, root.progress)
218+ return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4,
219+ 1, stage2startScale, root.progress);
211 if (spreadView.stage == 0) {
222 if (spreadView.stage == 0) {
212 var targetScale = tile1StartScale - ((tile1StartScale - 1) * spreadView.snapPosition);
223 var targetScale = tile1StartScale - ((tile1StartScale - 1) * spreadView.snapPosition);
224+ return linearAnimation(0, spreadView.positionMarker2,
213− return linearAnimation(0, spreadView.positionMarker2, root.tile1StartScale, targetScale, root.animatedProgress)
225+ root.tile1StartScale, targetScale, root.animatedProgress);
214 } else if (spreadView.stage == 1) {
226 } else if (spreadView.stage == 1) {
215 var startScale = tile1StartScale - ((tile1StartScale - 1) * spreadView.snapPosition);
227 var startScale = tile1StartScale - ((tile1StartScale - 1) * spreadView.snapPosition);
216− return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4, startScale, priv.stage2startScale, root.progress)
228+ return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4,
229+ startScale, priv.stage2startScale, root.progress);
219− return root.startScale - easingCurve.value * (root.startScale - root.endScale)
232+ return root.startScale - easingCurve.value * (root.startScale - root.endScale);
222 property real opacity: {
235 property real opacity: {
223 if (otherSelected) {
236 if (otherSelected) {
224− return linearAnimation (selectedProgress, Math.max(0, selectedProgress - .5), selectedOpacity, 0, root.progress)
237+ return linearAnimation (selectedProgress, Math.max(0, selectedProgress - .5),
238+ selectedOpacity, 0, root.progress);
226 if (index == 0) {
240 if (index == 0) {
227 switch (spreadView.stage) {
241 switch (spreadView.stage) {
229− return linearAnimation(0, spreadView.positionMarker2, 1, .3, root.animatedProgress)
243+ return linearAnimation(0, spreadView.positionMarker2, 1, .3, root.animatedProgress);
231− return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4, .3, 1, root.animatedProgress)
245+ return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4,
246+ .3, 1, root.animatedProgress);
@@ -245,14 +260,16 @@ SpreadDelegate {
245 if (spreadView.stage == 0) {
260 if (spreadView.stage == 0) {
246 return 0;
261 return 0;
247 } else if (spreadView.stage == 1) {
262 } else if (spreadView.stage == 1) {
248− return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4, 0, priv.stage2startTopMarginProgress, root.progress);
263+ return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4,
264+ 0, priv.stage2startTopMarginProgress, root.progress);
252 if (spreadView.stage == 0) {
268 if (spreadView.stage == 0) {
253 return 0;
269 return 0;
254 } else if (spreadView.stage == 1) {
270 } else if (spreadView.stage == 1) {
255− return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4, 0, priv.stage2startTopMarginProgress, root.progress);
271+ return linearAnimation(spreadView.positionMarker2, spreadView.positionMarker4,
272+ 0, priv.stage2startTopMarginProgress, root.progress);