diff --git a/plasmoid/package/contents/ui/task/ParabolicEventsArea.qml b/plasmoid/package/contents/ui/task/ParabolicEventsArea.qml index 3cd9afe13..a3d0fd716 100644 --- a/plasmoid/package/contents/ui/task/ParabolicEventsArea.qml +++ b/plasmoid/package/contents/ui/task/ParabolicEventsArea.qml @@ -151,16 +151,14 @@ Item { hiddenSpacerRight.nScale = scales.rightScale - 1; } - abilityItem.parabolicItem.zoom = abilityItem.abilities.parabolic.factor.zoom; - - /*if (!taskItem.inAttentionAnimation) { - + if (!parabolicItem.isUpdatingOnlySpacers) { + abilityItem.parabolicItem.zoom = abilityItem.abilities.parabolic.factor.zoom; } else { var subSpacerScale = (taskItem.abilities.parabolic.factor.zoom-1)/2; hiddenSpacerLeft.nScale = subSpacerScale; hiddenSpacerRight.nScale = subSpacerScale; - }*/ + } } //zoom function updateScale(nIndex, nScale, step){ @@ -174,19 +172,26 @@ Item { }*/ - var newScale = 1; + if (parabolicItem.isUpdatingOnlySpacers) { + var subSpacerScale = (nScale-1)/2; - if(nScale >= 0) { - newScale = nScale + step; + hiddenSpacerLeft.nScale = subSpacerScale; + hiddenSpacerRight.nScale = subSpacerScale; } else { - newScale = abilityItem.parabolicItem.zoom + step; - } + var newScale = 1; - /*if (inMimicParabolicAnimation && mimicParabolicScale === -1) { - mimicParabolicScale = newScale; - }*/ + if(nScale >= 0) { + newScale = nScale + step; + } else { + newScale = abilityItem.parabolicItem.zoom + step; + } - abilityItem.parabolicItem.zoom = newScale; + /*if (inMimicParabolicAnimation && mimicParabolicScale === -1) { + mimicParabolicScale = newScale; + }*/ + + abilityItem.parabolicItem.zoom = newScale; + } } } diff --git a/plasmoid/package/contents/ui/task/ParabolicItem.qml b/plasmoid/package/contents/ui/task/ParabolicItem.qml index f6d6a053f..27e881c31 100644 --- a/plasmoid/package/contents/ui/task/ParabolicItem.qml +++ b/plasmoid/package/contents/ui/task/ParabolicItem.qml @@ -63,6 +63,7 @@ Item{ } } + property bool isUpdatingOnlySpacers: false property bool isZoomed: false property int maxThickness: !root.vertical ? taskItem.abilities.parabolic.factor.zoom*(taskItem.abilities.metrics.iconSize+root.heightMargins) diff --git a/plasmoid/package/contents/ui/task/TaskItem.qml b/plasmoid/package/contents/ui/task/TaskItem.qml index 7d963871a..28509260d 100644 --- a/plasmoid/package/contents/ui/task/TaskItem.qml +++ b/plasmoid/package/contents/ui/task/TaskItem.qml @@ -67,6 +67,8 @@ AbilityBasicItem { return isWindow ? model.display : model.AppName; } + parabolicItem.isUpdatingOnlySpacers: inAttentionAnimation || inBouncingAnimation + property alias hoverEnabled: taskMouseArea.hoverEnabled property alias pressed: taskMouseArea.pressed diff --git a/plasmoid/package/contents/ui/task/animations/NewWindowAnimation.qml b/plasmoid/package/contents/ui/task/animations/NewWindowAnimation.qml index b411cc686..b81f6b752 100644 --- a/plasmoid/package/contents/ui/task/animations/NewWindowAnimation.qml +++ b/plasmoid/package/contents/ui/task/animations/NewWindowAnimation.qml @@ -52,7 +52,6 @@ Item{ function clear(){ newWindowAnimationLoader.item.loops = 1; newWindowAnimationLoader.item.stop(); - // iconImageBuffer.anchors.centerIn = iconImageBuffer.parent; taskItem.parabolicItem.tempScaleWidth = 1; taskItem.parabolicItem.tempScaleHeight = 1; @@ -70,7 +69,7 @@ Item{ function stop() { if (running) { - newWindowAnimationLoader.item.stop(); + clear(); } }