diff --git a/applets/systemtray/package/contents/ui/items/AbstractItem.qml b/applets/systemtray/package/contents/ui/items/AbstractItem.qml --- a/applets/systemtray/package/contents/ui/items/AbstractItem.qml +++ b/applets/systemtray/package/contents/ui/items/AbstractItem.qml @@ -17,7 +17,7 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ -import QtQuick 2.1 +import QtQuick 2.2 import org.kde.plasma.core 2.0 as PlasmaCore import org.kde.plasma.components 2.0 as PlasmaComponents @@ -102,8 +102,32 @@ units.longDuration > 0 } + function activated() { + activatedAnimation.start() + } + + SequentialAnimation { + id: activatedAnimation + loops: 1 + + ScaleAnimator { + target: iconItem + from: 1 + to: 0.5 + duration: units.shortDuration + easing.type: Easing.InQuad + } + + ScaleAnimator { + target: iconItem + from: 0.5 + to: 1 + duration: units.shortDuration + easing.type: Easing.OutQuad + } + } + MouseArea { - id: mouseArea anchors.fill: abstractItem hoverEnabled: true drag.filterChildren: true diff --git a/applets/systemtray/package/contents/ui/items/PlasmoidItem.qml b/applets/systemtray/package/contents/ui/items/PlasmoidItem.qml --- a/applets/systemtray/package/contents/ui/items/PlasmoidItem.qml +++ b/applets/systemtray/package/contents/ui/items/PlasmoidItem.qml @@ -66,14 +66,17 @@ } Connections { target: applet + onActivated: plasmoidContainer.activated() + onExpandedChanged: { if (expanded) { var oldApplet = root.activeApplet; root.activeApplet = applet; if (oldApplet) { oldApplet.expanded = false; } dialog.visible = true; + plasmoidContainer.activated() } else if (root.activeApplet === applet) { if (!applet.parent.hidden) { diff --git a/applets/systemtray/package/contents/ui/items/StatusNotifierItem.qml b/applets/systemtray/package/contents/ui/items/StatusNotifierItem.qml --- a/applets/systemtray/package/contents/ui/items/StatusNotifierItem.qml +++ b/applets/systemtray/package/contents/ui/items/StatusNotifierItem.qml @@ -90,6 +90,7 @@ openContextMenu(pos); } }); + taskIcon.activated() break; } case Qt.RightButton: @@ -103,6 +104,7 @@ operation.y = pos.y; service.startOperationCall(operation); + taskIcon.activated() break; } }