on 2139c25 help sign in
unity8/Dash/DashApps.qml
55 lines 1.9 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 Utils 0.1
20import "../Components"
21import "../Components/ListItems"
22import "../Applications"
23import "Apps"
25GenericScopeView {
26 id: scopeView
28 // FIXME: a way to aggregate these models would be ideal
29 property var mainStageApplicationsModel: shell.applicationManager.mainStageApplications
30 property var sideStageApplicationModel: shell.applicationManager.sideStageApplications
32 ListModel {
33 id: dummyVisibilityModifier
35 ListElement { name: "running-apps" }
36 }
38 SortFilterProxyModel {
39 id: runningApplicationsModel
41 property var firstModel: mainStageApplicationsModel
42 property var secondModel: sideStageApplicationModel
43 property bool canEnableTerminationMode: scopeView.isCurrent
45 model: dummyVisibilityModifier
46 filterRole: 0
47 filterRegExp: invertMatch ? ((mainStageApplicationsModel.count === 0 &&
48 sideStageApplicationModel.count === 0) ? RegExp("running-apps") : RegExp("")) : RegExp("disabled")
49 invertMatch: scopeView.scope.searchQuery.length == 0
50 }
52 onScopeChanged: {
53 scopeView.scope.categories.overrideResults("recent", runningApplicationsModel);
54 }