diff --git a/applets/taskmanager/package/contents/ui/GroupDialog.qml b/applets/taskmanager/package/contents/ui/GroupDialog.qml --- a/applets/taskmanager/package/contents/ui/GroupDialog.qml +++ b/applets/taskmanager/package/contents/ui/GroupDialog.qml @@ -110,6 +110,8 @@ width: parent.width + animated: false + add: Transition { // We trigger a null-interval timer in the first add // transition after setting the model so onTriggered @@ -241,12 +243,12 @@ return; } - if (!visualParent.childCount) { + if (!visualParent.childCount || !groupRepeater.count) { visible = false; // Setting VisualDataModel.rootIndex drops groupRepeater.count to 0 // before the actual row count. updateSize is therefore invoked twice; // only update size once the repeater count matches the model role. - } else if (visualParent.childCount == groupRepeater.count) { + } else if (!groupRepeater.aboutToPopulate || visualParent.childCount == groupRepeater.count) { var task; var maxWidth = 0; var maxHeight = 0; diff --git a/applets/taskmanager/package/contents/ui/TaskList.qml b/applets/taskmanager/package/contents/ui/TaskList.qml --- a/applets/taskmanager/package/contents/ui/TaskList.qml +++ b/applets/taskmanager/package/contents/ui/TaskList.qml @@ -20,14 +20,19 @@ import QtQuick 2.0 Flow { + id: taskList + + property bool animated: true property bool animating: false layoutDirection: Qt.application.layoutDirection property int rows: Math.floor(height / children[0].height) property int columns: Math.floor(width / children[0].width) move: Transition { + enabled: taskList.animated + SequentialAnimation { PropertyAction { target: taskList; property: "animating"; value: true }