on 5bc8421 help sign in
unity8/Components/ApplicationScreenshot.qml
61 lines 2.0 kB history raw
1/*
2 * Copyright (C) 2013 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 */
17import QtQuick 2.0
18import Ubuntu.Components 0.1
19import Unity.Application 0.1
21Item {
22 id: applicationScreenshot
24 property var application: null
25 property bool withBackground: false
26 property bool ready: applicationImage.ready || withBackground
28 function setApplication(application) {
29 applicationScreenshot.application = application
30 }
32 function clearApplication() {
33 applicationScreenshot.withBackground = false;
34 applicationScreenshot.application = null
35 applicationScreenshot.scheduleUpdate();
36 }
38 function scheduleUpdate() {
39 applicationImage.scheduleUpdate()
40 }
42 function updateFromCache() {
43 applicationImage.updateFromCache()
44 }
46 Rectangle {
47 id: background
48 anchors.fill: parent
49 color: "white" // FIXME should use normal background color of Suru theme
50 visible: applicationScreenshot.withBackground
51 }
53 ApplicationImage {
54 id: applicationImage
55 objectName: "screenshot image"
56 width: applicationScreenshot.application ? parent.width : 0
57 height: applicationScreenshot.application ? parent.height : 0
58 visible: applicationScreenshot.application != null && ready
59 source: ApplicationManager.findApplication((application) ? application.appId : "")
60 }