@@ -158,7 +158,7 @@ Rectangle {
158 readonly property int minHeight: units.gu(10)
158 readonly property int minHeight: units.gu(10)
160 onFocusChanged: {
160 onFocusChanged: {
161− if (focus && !ApplicationManager.focusedApplicationId === model.appId) {
161+ if (focus && ApplicationManager.focusedApplicationId !== model.appId) {
162 ApplicationManager.requestFocusApplication(model.appId);
162 ApplicationManager.requestFocusApplication(model.appId);
@@ -274,10 +274,28 @@ Rectangle {
274 id: spreadSelectArea
274 id: spreadSelectArea
275 anchors.fill: parent
275 anchors.fill: parent
276 enabled: false
276 enabled: false
277− hoverEnabled: true
277+ hoverEnabled: enabled
279+ // There is a bug in MouseArea where containsMouse doesn't
280+ // return to false if the MouseArea is disabled while
281+ // containing the mouse. Let's manage the property our own.
278− property bool upperThirdContainsMouse: containsMouse && mouseY < height / 3
282+ property bool upperThirdContainsMouse: false
283+ onContainsMouseChanged: evaluateUpperThirdContainsMouse()
284+ onMouseYChanged: evaluateUpperThirdContainsMouse()
285+ function evaluateUpperThirdContainsMouse() {
286+ if (containsMouse && mouseY < height / 3) {
287+ spreadSelectArea.upperThirdContainsMouse = true
289+ spreadSelectArea.upperThirdContainsMouse = false;
294+ spreadSelectArea.upperThirdContainsMouse = false
279 onClicked: {
298 onClicked: {
281 appDelegate.focus = true
299 appDelegate.focus = true
282 root.state = ""
300 root.state = ""