registerShortcut
[apps/homescreen.git] / homescreen / qml / main.qml
index 7d40276..a8d095b 100644 (file)
@@ -26,6 +26,7 @@ Window {
     width: container.width * container.scale
     height: container.height * container.scale
     title: 'HomeScreen'
+    color: "#00000000"
 
     Image {
         id: container
@@ -60,6 +61,145 @@ Window {
                 Layout.preferredHeight: 215
             }
         }
+
+
+        state: "normal"
+
+        states: [
+            State {
+                name: "normal"
+                PropertyChanges {
+                    target: topArea
+                    y: 0
+                }
+                PropertyChanges {
+                    target: applicationArea
+                    y: 218
+                }
+                PropertyChanges {
+                    target: mediaArea
+                    y: 1705
+                }
+            },
+            State {
+                name: "fullscreen"
+                PropertyChanges {
+                    target: topArea
+                    y: -220
+                }
+                PropertyChanges {
+                    target: applicationArea
+                    y: -1490
+                }
+                PropertyChanges {
+                    target: mediaArea
+                    y: 2135
+                }
+            }
+        ]
+        transitions: Transition {
+            NumberAnimation {
+                target: topArea
+                property: "y"
+                easing.type: "OutQuad"
+                duration: 250
+            }
+            NumberAnimation {
+                target: mediaArea
+                property: "y"
+                easing.type: "OutQuad"
+                duration: 250
+            }
+        }
+
+    }
+    Item {
+        id: switchBtn
+        width: 70
+        height: 70
+        anchors.right: parent.right
+        anchors.top: parent.top
+        z: 1
+        property bool enableSwitchBtn: true
+        Image {
+            anchors.right: parent.right
+            anchors.rightMargin: 20
+            anchors.top: parent.top
+            anchors.topMargin: 25
+            width: 35
+            height: 35
+            id: image
+            source: './images/normal.png'
+        }
+
+        MouseArea {
+            anchors.fill: parent
+            onClicked: {
+                if(switchBtn.enableSwitchBtn) {
+                    var appName = homescreenHandler.getCurrentApplication()
+                    if (container.state === 'normal') {
+                        image.source = './images/fullscreen.png'
+                        container.state = 'fullscreen'
+                        touchArea.switchArea(1)
+                        homescreenHandler.tapShortcut(appName, true)
+                        container.opacity = 0.0
+                    } else {
+                        image.source = './images/normal.png'
+                        container.state = 'normal'
+                        touchArea.switchArea(0)
+                        homescreenHandler.tapShortcut(appName, false)
+                        container.opacity = 1.0
+                    }
+                }
+            }
+        }
+    }
+
+    Item {
+        id: rebootBtn
+        width: 70
+        height: 70
+        anchors.left: parent.left
+        anchors.top: parent.top
+        z: 1
+        MouseArea {
+            anchors.fill: parent
+            onClicked: {
+                homescreenHandler.reboot();
+            }
+        }
+    }
+
+    function changeSwitchState(is_navigation) {
+        if(container.state === 'normal') {
+            if(is_navigation) {
+                switchBtn.enableSwitchBtn = true
+                image.source = './images/normal.png'
+            } else {
+                switchBtn.enableSwitchBtn = false
+                image.source = './images/normal_disable.png'
+            }
+        }
+    }
+
+    Connections {
+        target: homescreenHandler
+        onShowWindow: {
+            container.state = 'normal'
+            image.visible = true
+            touchArea.switchArea(0)
+            container.opacity = 1.0
+        }
+    }
+
+    Connections {
+        target: homescreenHandler
+        onHideWindow: {
+            container.state = 'fullscreen'
+            image.visible = false
+            touchArea.switchArea(1)
+            container.opacity = 0.0
+        }
     }
 
     Timer {