Lomiri
ShellApplication.qml
1/*
2* Copyright (C) 2016 Canonical Ltd.
3*
4* This program is free software; you can redistribute it and/or modify
5* it under the terms of the GNU General Public License as published by
6* the Free Software Foundation; version 3.
7*
8* This program is distributed in the hope that it will be useful,
9* but WITHOUT ANY WARRANTY; without even the implied warranty of
10* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11* GNU General Public License for more details.
12*
13* You should have received a copy of the GNU General Public License
14* along with this program. If not, see <http://www.gnu.org/licenses/>.
15*/
16
17import QtQuick 2.4
18import QtQuick.Window 2.2
19import WindowManager 1.0
20import QtMir.Application 0.1
21
22Instantiator {
23 id: root
24 model: Screens
25
26 ShellScreen {
27 id: window
28 objectName: "screen"+index
29 screen: model.screen
30 visibility: applicationArguments.hasFullscreen ? Window.FullScreen : Window.Windowed
31 flags: applicationArguments.hasFrameless ? Qt.FramelessWindowHint : 0
32
33 Binding {
34 when: applicationArguments.hasGeometry
35 target: window
36 property: "width"
37 value: applicationArguments.windowGeometry.width
38 }
39 Binding {
40 when: applicationArguments.hasGeometry
41 target: window
42 property: "height"
43 value: applicationArguments.windowGeometry.height
44 }
45
46 Component.onCompleted: screen.active = primary
47 primary: index == 0
48 }
49
50 property var windowManagerSurfaceManagerBinding: Binding {
51 target: WindowManagerObjects
52 property: "surfaceManager"
53 value: SurfaceManager
54 }
55 property var windowManagerApplicationManagerBinding: Binding {
56 target: WindowManagerObjects
57 property: "applicationManager"
58 value: ApplicationManager
59 }
60
61 Component.onDestruction: {
62 WindowManagerObjects.surfaceManager = null;
63 WindowManagerObjects.applicationManager = null;
64 }
65}