diff --git a/discover/qml/ProgressView.qml b/discover/qml/ProgressView.qml index d39e7a24..c4bb8f3c 100644 --- a/discover/qml/ProgressView.qml +++ b/discover/qml/ProgressView.qml @@ -1,127 +1,130 @@ import QtQuick 2.1 import QtQuick.Controls 1.1 import QtQuick.Layouts 1.1 import org.kde.kquickcontrolsaddons 2.0 import org.kde.discover 2.0 import org.kde.kirigami 2.0 as Kirigami import "navigation.js" as Navigation Kirigami.BasicListItem { id: listItem label: TransactionModel.count ? i18n("Tasks (%1%)", TransactionModel.progress) : i18n("Tasks") visible: progressModel.count > 0 background: Item { Rectangle { anchors { fill: parent rightMargin: TransactionModel.count>=1 ? listItem.width*(1-TransactionModel.progress/100) : 0 } color: TransactionModel.count>=1 || listItem.hovered || listItem.highlighted || listItem.pressed || listItem.checked ? listItem.activeBackgroundColor : listItem.backgroundColor opacity: listItem.hovered || listItem.highlighted ? 0.2 : 1 } } onClicked: { sheet.open() } + onVisibleChanged: if (!visible) { + sheet.close() + } readonly property var v1: Connections { target: TransactionModel onTransactionAdded: { if(listItem.enabled && trans.visible && progressModel.applicationAt(trans.resource)<0) { progressModel.append({ transaction: trans }) } } onTransactionRemoved: { if (trans.status == Transaction.CancelledStatus || !trans.resource) { var id = progressModel.applicationAt(trans.resource) if(id>=0) progressModel.remove(id) } } } readonly property var v2: ListModel { id: progressModel function applicationAt(app) { for(var i=0; i