From f379877e55028554f452c00a4e4c96c373fa881a Mon Sep 17 00:00:00 2001 From: Michail Vourlakos Date: Wed, 24 May 2017 23:25:15 +0300 Subject: [PATCH] improve more parabolic effect messaging --- .../package/contents/ui/ParabolicManager.qml | 33 +++++++++++++++---- 1 file changed, 26 insertions(+), 7 deletions(-) diff --git a/containment/package/contents/ui/ParabolicManager.qml b/containment/package/contents/ui/ParabolicManager.qml index fd7404b87..d01a3a9cb 100644 --- a/containment/package/contents/ui/ParabolicManager.qml +++ b/containment/package/contents/ui/ParabolicManager.qml @@ -39,15 +39,24 @@ Item { // console.log(appIndex + " _ "+index+ " _ "+zScale + " _ "+ zStep); if(root.latteApplet && ((appIndex=root.latteAppletPos) || (appIndex>root.latteAppletPos && index<=root.latteAppletPos)) ){ - // console.log("ch 1..."); var appStep = Math.abs(root.latteAppletPos-appIndex); var signalStep = Math.abs(index - appIndex); var taskIndex = -1; + var internSepStep = 0; if(appIndexroot.latteAppletPos){ - taskIndex = root.tasksCount-1 - (signalStep-appStep); + console.log("C1..."); + if (root.latteApplet.internalSeparatorPos === root.tasksCount-1) + internSepStep = 1; + + taskIndex = root.tasksCount-1 - (signalStep-appStep) - internSepStep; + console.log("reverse:" + taskIndex + " step:"+internSepStep + " zoom:"+zScale); } root.latteApplet.updateScale(taskIndex, zScale,zStep); @@ -60,6 +69,7 @@ Item { } } + function applyParabolicEffect(index, currentMousePosition, center) { var rDistance = Math.abs(currentMousePosition - center); @@ -102,17 +112,24 @@ Item { var tLIndex = -1; var tHIndex = -1; - if(!root.latteApplet || Math.abs(root.latteAppletPos-index)>1 || !root.hasInternalSeparator + + var gAppN = availableHigherId(index+1); + var lAppN = availableLowerId(index-1); + + var latteNeighbour = root.latteApplet && ((gAppN === root.latteAppletPos) || (lAppN === root.latteAppletPos )); + + if(!root.latteApplet || !latteNeighbour || !root.hasInternalSeparator || (root.latteApplet && root.hasInternalSeparator && ((root.latteApplet.internalSeparatorPos>0 && root.latteApplet.internalSeparatorPosroot.latteAppletPos) || (root.latteApplet.internalSeparatorPos===root.tasksCount-1 && index