@@ -56,7 +56,7 @@ Item {
5656
5757 onPreventHidingChanged: {
5858 if (!preventHiding) {
59− if (state == "hint")
59+ if (state == "hint" || state == "reveal")
6060 hide()
6161 }
6262
@@ -132,6 +132,7 @@ Item {
132132 property real touchStartX: -1
133133
134134 readonly property real distanceFromThreshold: (-distance) - distanceThreshold // distance is negative
135+ readonly property real revealDistance: units.gu(2)
135136 readonly property real commitDistance: units.gu(6)
136137 readonly property real commitProgress: MathLocal.clamp(distanceFromThreshold / commitDistance, 0, 1)
137138
@@ -156,6 +157,8 @@ Item {
156157 if (status === DirectionalDragArea.Recognized) {
157158 if (distanceFromThreshold > commitDistance)
158159 bottombar.state = "shown"
160+ else if (distanceFromThreshold > revealDistance)
161+ bottombar.state = "reveal"
159162 }
160163 }
161164 }
@@ -186,24 +189,23 @@ Item {
186189 states: [
187190 State {
188191 name: "hidden"
189− PropertyChanges { target: hudButton; opacity: 0}
190− PropertyChanges { target: hudButton; bottomMargin: units.gu(-1)}
192+ PropertyChanges { target: hudButton; opacity: 0 }
193+ PropertyChanges { target: hudButton; bottomMargin: units.gu(-2) }
191194 },
192195 State {
193196 name: "hint"
194− PropertyChanges {
195− target: hudButton;
196− opacity: 0.5 + 0.5 * dragArea.commitProgress
197− }
198− PropertyChanges {
199− target: hudButton;
200− bottomMargin: units.gu(-1) + units.gu(1) * dragArea.commitProgress
201− }
197+ extend: "hidden"
198+ PropertyChanges { target: hudButton; opacity: 0.5 }
199+ },
200+ State {
201+ name: "reveal"
202+ extend: "hint"
203+ PropertyChanges { target: hudButton; bottomMargin: units.gu(-2) + units.gu(2) * dragArea.commitProgress }
202204 },
203205 State {
204206 name: "shown"
205− PropertyChanges { target: hudButton; opacity: 1}
206− PropertyChanges { target: hudButton; bottomMargin: units.gu(0)}
207+ PropertyChanges { target: hudButton; opacity: 1 }
208+ PropertyChanges { target: hudButton; bottomMargin: units.gu(0) }
207209 }
208210 ]
209211}