@@ -16,11 +16,12 @@
17import QtQuick 2.0
17import QtQuick 2.0
18import Ubuntu.Components 0.1
18import Ubuntu.Components 0.1
19+import Unity.Application 0.1
19import "../Components"
20import "../Components"
23− readonly property real panelHeight: callHint.active ? callHint.height + indicatorArea.indicatorHeight : indicatorArea.indicatorHeight
24+ readonly property real panelHeight: indicatorArea.y + indicatorArea.indicatorHeight
24 property alias indicators: indicatorsMenu
25 property alias indicators: indicatorsMenu
25 property bool fullscreenMode: false
26 property bool fullscreenMode: false
26 property bool searchVisible: true
27 property bool searchVisible: true
@@ -62,16 +63,30 @@ Item {
62 right: parent.right
63 right: parent.right
64 height: units.gu(3)
65 height: units.gu(3)
66− y: active ? 0 : -height
70+ name: "active"
67− z: 1
71+ when: callHint.active
72+ PropertyChanges { target: callHint; y: 0 }
73+ PropertyChanges { target: search.mouseArea; anchors.topMargin: -callHint.height/3 }
76+ Behavior on y { StandardAnimation { id: callHintYAnimation } }
69− Behavior on y { StandardAnimation {} }
78+ mouseArea.onClicked: callHint.activate();
81+ anchors.fill: callHint.mouseArea
82+ color: Qt.rgba(0,1,0,0.5)
73 id: indicatorArea
87 id: indicatorArea
74 objectName: "indicatorArea"
88 objectName: "indicatorArea"
76 readonly property real indicatorHeight: indicatorsMenu.panelHeight + leftSeparatorLine.height
91 readonly property real indicatorHeight: indicatorsMenu.panelHeight + leftSeparatorLine.height
@@ -80,7 +95,11 @@ Item {
80 right: parent.right
95 right: parent.right
82 height: root.height - indicatorArea.y
97 height: root.height - indicatorArea.y
100+ enabled: !callHintYAnimation.running
101+ StandardAnimation {}
85 PanelBackground {
104 PanelBackground {
86 id: panelBackground
105 id: panelBackground
@@ -113,6 +132,7 @@ Item {
114 color: "black"
133 color: "black"
115 opacity: indicatorsMenu.unitProgress * darkenedOpacity
134 opacity: indicatorsMenu.unitProgress * darkenedOpacity
116 MouseArea {
136 MouseArea {
117 anchors.fill: parent
137 anchors.fill: parent
118 enabled: indicatorsMenu.shown
138 enabled: indicatorsMenu.shown
@@ -120,6 +140,23 @@ Item {
144+ id: indicatorAreaClick
145+ enabled: callHint.active
149+ right: indicatorsMenu.right
151+ height: indicatorsMenu.panelHeight/2
152+ onClicked: callHint.activate();
155+ anchors.fill: indicatorAreaClick
156+ color: Qt.rgba(0,1,0,0.5)
123 Indicators {
160 Indicators {
124 id: indicatorsMenu
161 id: indicatorsMenu
125 objectName: "indicators"
162 objectName: "indicators"
@@ -134,7 +171,20 @@ Item {
134 panelHeight: units.gu(3)
171 panelHeight: units.gu(3)
135 openedHeight: parent.height
172 openedHeight: parent.height
136 pinnedMode: !fullscreenMode
173 pinnedMode: !fullscreenMode
174+ enableHint: !callHint.active
137 overFlowWidth: search.state=="hidden" ? parent.width : parent.width - search.width
175 overFlowWidth: search.state=="hidden" ? parent.width : parent.width - search.width
176+ hintAreaHeightOffset: callHint.active ? callHint.height : 0
179+ if (callHint.active && position.y < y + indicatorsMenu.panelHeight/2) {
180+ callHint.activate();
185+ anchors.fill: indicatorsMenu
186+ color: Qt.rgba(1,1,0,0.5)
140 PanelSeparatorLine {
190 PanelSeparatorLine {
@@ -174,7 +224,6 @@ Item {
174 if (root.searchVisible && !indicatorsMenu.showAll) {
224 if (root.searchVisible && !indicatorsMenu.showAll) {
175 return "visible";
225 return "visible";
178 return "hidden";
227 return "hidden";
@@ -184,7 +233,13 @@ Item {
185 height: panelBackground.height
234 height: panelBackground.height
187− onClicked: root.searchClicked()
237+ onClicked: root.searchClicked()
240+ anchors.fill: search.mouseArea
241+ color: Qt.rgba(1,0,0,0.5)
@@ -193,11 +248,13 @@ Item {
193 name: "in" //fully opaque and visible at top edge of screen
248 name: "in" //fully opaque and visible at top edge of screen
194 when: !fullscreenMode
249 when: !fullscreenMode
195 PropertyChanges { target: indicatorArea; y: callHint.y + callHint.height }
250 PropertyChanges { target: indicatorArea; y: callHint.y + callHint.height }
251+ PropertyChanges { target: callHint; z: 0 }
198 name: "out" //pushed off screen
254 name: "out" //pushed off screen
199 when: fullscreenMode
255 when: fullscreenMode
200 PropertyChanges { target: indicatorArea; y: callHint.y + callHint.height - indicatorHeight }
256 PropertyChanges { target: indicatorArea; y: callHint.y + callHint.height - indicatorHeight }
257+ PropertyChanges { target: callHint; z: 2 }