18 import Ubuntu.Components 0.1
19 import Unity.Application 0.1
20 import
"../../Components/"
21 import "../../Components/ListItems"
25 property var application
27 signal requestedApplicationActivation(var application)
28 signal requestedApplicationTermination(var application)
29 signal requestedActivationMode()
30 signal requestedTerminationMode()
34 height: shapedApplicationImage.height + labelContainer.height
36 width: shapedApplicationImage.width <= units.gu(11) ? units.gu(11) : height
38 property
bool terminationModeEnabled: false
41 if (!terminationModeEnabled)
42 requestedApplicationActivation(application)
46 if (terminationModeEnabled) {
47 requestedActivationMode()
49 requestedTerminationMode()
54 id: shapedApplicationImage
55 anchors { top: parent.top; horizontalCenter: parent.horizontalCenter }
58 width: applicationImage.width
63 source: application.screenshot
65 height: shapedApplicationImage.height
66 fillMode: Image.PreserveAspectCrop
67 width: Math.min(height, height * sourceSize.width / sourceSize.height)
75 anchors.fill: shapedApplicationImage
77 borderSource:
"radius_pressed.sci"
78 opacity: root.pressed ? 1.0 : 0.0
79 Behavior on opacity { NumberAnimation { duration: 200; easing.type: Easing.OutQuint } }
88 top: shapedApplicationImage.bottom
95 baseline: parent.bottom
99 text: (application) ? application.name :
""
105 elide: Text.ElideMiddle
106 horizontalAlignment: Text.AlignHCenter
111 objectName:
"closeIcon " + model.name
113 left: shapedApplicationImage.left
114 leftMargin: -units.gu(1)
116 topMargin: -units.gu(1)
121 enabled: root.terminationModeEnabled
124 anchors { fill: parent; margins: -units.gu(1) }
125 onClicked: requestedApplicationTermination(application)