fix #378, support multiple bouncing animations

--when two or more consequently launchers were bouncing
their animation was broken because they were changing
places. This patch catches these cases and provides
a proper way to show these animations.
v0.7
Michail Vourlakos 7 years ago
parent 5bd4bbe188
commit eaf49364ee

@ -135,7 +135,7 @@ SequentialAnimation{
//trying to fix the ListView nasty behavior
//during the removal the anchoring for ListView children changes a lot
var previousTask = icList.childAtIndex(mainItemContainer.lastValidIndex-1);
if (previousTask !== undefined){
if (previousTask !== undefined && !previousTask.isStartup && !previousTask.inBouncingAnimation){
if (root.vertical) {
mainItemContainer.anchors.top = previousTask.bottom;
} else {

@ -56,7 +56,7 @@ SequentialAnimation {
//trying to fix the ListView nasty behavior
//during the removal the anchoring for ListView children changes a lot
var previousTask = icList.childAtIndex(mainItemContainer.lastValidIndex-1);
if (previousTask !== undefined){
if (previousTask !== undefined && !previousTask.isStartup && !previousTask.inBouncingAnimation){
if (root.vertical) {
mainItemContainer.anchors.top = previousTask.bottom;
} else {

@ -97,6 +97,20 @@ SequentialAnimation{
}
function execute(){
//trying to fix the ListView nasty behavior
//during the removal the anchoring for ListView children changes a lot
if (isWindow){
var previousTask = icList.childAtIndex(index-1);
var nextTask = icList.childAtIndex(index+1);
if (previousTask !== undefined && nextTask !== undefined && nextTask.inBouncingAnimation){
if (root.vertical) {
mainItemContainer.anchors.top = previousTask.bottom;
} else {
mainItemContainer.anchors.left = previousTask.right;
}
}
}
//Animation Add/Remove (2) - when is window with no launcher, animations enabled
//Animation Add/Remove (3) - when is launcher with no window, animations enabled
var animation2 = ((((tasksModel.launcherPosition(mainItemContainer.launcherUrl) == -1)

Loading…
Cancel
Save