2 * Copyright (C) 2013-2016 Canonical, Ltd.
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.
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.
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/>.
18import Ubuntu.Components 1.3
19import Unity.Notifications 1.0 as UnityNotifications
26 objectName: "notificationList"
30 property bool hasMouse
31 property url background: ""
33 readonly property bool useModal: snapDecisionProxyModel.count > 0
35 UnitySortFilterProxyModel {
36 id: snapDecisionProxyModel
37 objectName: "snapDecisionProxyModel"
39 model: notificationList.model ? notificationList.model : null
40 filterRole: UnityNotifications.ModelInterface != undefined ? UnityNotifications.ModelInterface.RoleType : 0
41 filterRegExp: RegExp(UnityNotifications.Notification.SnapDecision)
44 property bool topmostIsFullscreen: false
45 spacing: topmostIsFullscreen ? 0 : units.gu(1)
47 currentIndex: count > 1 ? 1 : -1
49 delegate: Notification {
50 objectName: "notification" + index
54 iconSource: model.icon
55 secondaryIconSource: model.secondaryIcon
56 summary: model.summary
58 value: model.value ? model.value : -1
59 actions: model.actions
60 notificationId: model.id
61 notification: notificationList.model.getRaw(notificationId)
62 maxHeight: notificationList.height
63 margins: notificationList.margin
64 hasMouse: notificationList.hasMouse
65 background: notificationList.background
67 // make sure there's no opacity-difference between the several
68 // elements in a notification
69 // FIXME: disabled all transitions because of LP: #1354406 workaround
70 //layer.enabled: add.running || remove.running || populate.running
72 Component.onCompleted: {
74 notificationList.topmostIsFullscreen = fullscreen
78 onFullscreenChanged: {
79 // index 1 because 0 is the PlaceHolder...
81 notificationList.topmostIsFullscreen = fullscreen
86 // FIXME: disabled all transitions because of LP: #1354406 workaround
87 /*populate: Transition {
88 UbuntuNumberAnimation {
91 duration: UbuntuAnimation.SnapDuration
96 UbuntuNumberAnimation {
99 duration: UbuntuAnimation.SnapDuration
104 UbuntuNumberAnimation {
110 displaced: Transition {
111 UbuntuNumberAnimation {
113 duration: UbuntuAnimation.SnapDuration
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list