Changeset View
Changeset View
Standalone View
Standalone View
applets/notifications/package/contents/ui/NotificationPopup.qml
Show First 20 Lines • Show All 60 Lines • ▼ Show 20 Line(s) | 31 | PlasmaCore.Dialog { | |||
---|---|---|---|---|---|
61 | property alias configurable: notificationItem.configurable | 61 | property alias configurable: notificationItem.configurable | ||
62 | property alias dismissable: notificationItem.dismissable | 62 | property alias dismissable: notificationItem.dismissable | ||
63 | property alias closable: notificationItem.closable | 63 | property alias closable: notificationItem.closable | ||
64 | 64 | | |||
65 | property bool hasDefaultAction | 65 | property bool hasDefaultAction | ||
66 | property alias actionNames: notificationItem.actionNames | 66 | property alias actionNames: notificationItem.actionNames | ||
67 | property alias actionLabels: notificationItem.actionLabels | 67 | property alias actionLabels: notificationItem.actionLabels | ||
68 | 68 | | |||
69 | property alias hasReplyAction: notificationItem.hasReplyAction | ||||
70 | property alias replyActionLabel: notificationItem.replyActionLabel | ||||
71 | property alias replyPlaceholderText: notificationItem.replyPlaceholderText | ||||
72 | property alias replySubmitButtonText: notificationItem.replySubmitButtonText | ||||
73 | property alias replySubmitButtonIconName: notificationItem.replySubmitButtonIconName | ||||
74 | | ||||
69 | signal configureClicked | 75 | signal configureClicked | ||
70 | signal dismissClicked | 76 | signal dismissClicked | ||
71 | signal closeClicked | 77 | signal closeClicked | ||
72 | 78 | | |||
73 | signal defaultActionInvoked | 79 | signal defaultActionInvoked | ||
74 | signal actionInvoked(string actionName) | 80 | signal actionInvoked(string actionName) | ||
81 | signal replied(string text) | ||||
75 | signal openUrl(string url) | 82 | signal openUrl(string url) | ||
76 | signal fileActionInvoked | 83 | signal fileActionInvoked | ||
77 | 84 | | |||
78 | signal expired | 85 | signal expired | ||
79 | signal hoverEntered | 86 | signal hoverEntered | ||
80 | signal hoverExited | 87 | signal hoverExited | ||
81 | 88 | | |||
82 | signal suspendJobClicked | 89 | signal suspendJobClicked | ||
83 | signal resumeJobClicked | 90 | signal resumeJobClicked | ||
84 | signal killJobClicked | 91 | signal killJobClicked | ||
85 | 92 | | |||
86 | property int defaultTimeout: 5000 | 93 | property int defaultTimeout: 5000 | ||
87 | readonly property int effectiveTimeout: { | 94 | readonly property int effectiveTimeout: { | ||
88 | if (timeout === -1) { | 95 | if (timeout === -1) { | ||
89 | return defaultTimeout; | 96 | return defaultTimeout; | ||
90 | } | 97 | } | ||
91 | if (dismissTimeout) { | 98 | if (dismissTimeout) { | ||
92 | return dismissTimeout; | 99 | return dismissTimeout; | ||
93 | } | 100 | } | ||
94 | return timeout; | 101 | return timeout; | ||
95 | } | 102 | } | ||
96 | 103 | | |||
97 | location: PlasmaCore.Types.Floating | 104 | location: PlasmaCore.Types.Floating | ||
98 | 105 | flags: notificationItem.replying ? 0 : Qt.WindowDoesNotAcceptFocus | |||
99 | flags: Qt.WindowDoesNotAcceptFocus | | |||
100 | 106 | | |||
101 | visible: false | 107 | visible: false | ||
102 | 108 | | |||
103 | // When notification is updated, restart hide timer | 109 | // When notification is updated, restart hide timer | ||
104 | onTimeChanged: { | 110 | onTimeChanged: { | ||
105 | if (timer.running) { | 111 | if (timer.running) { | ||
106 | timer.restart(); | 112 | timer.restart(); | ||
107 | } | 113 | } | ||
Show All 23 Lines | 119 | DraggableDelegate { | |||
131 | 137 | | |||
132 | LayoutMirroring.enabled: Qt.application.layoutDirection === Qt.RightToLeft | 138 | LayoutMirroring.enabled: Qt.application.layoutDirection === Qt.RightToLeft | ||
133 | LayoutMirroring.childrenInherit: true | 139 | LayoutMirroring.childrenInherit: true | ||
134 | 140 | | |||
135 | Timer { | 141 | Timer { | ||
136 | id: timer | 142 | id: timer | ||
137 | interval: notificationPopup.effectiveTimeout | 143 | interval: notificationPopup.effectiveTimeout | ||
138 | running: notificationPopup.visible && !area.containsMouse && interval > 0 | 144 | running: notificationPopup.visible && !area.containsMouse && interval > 0 | ||
139 | && !notificationItem.dragging && !notificationItem.menuOpen | 145 | && !notificationItem.dragging && !notificationItem.menuOpen && !notificationItem.replying | ||
140 | onTriggered: { | 146 | onTriggered: { | ||
141 | if (notificationPopup.dismissTimeout) { | 147 | if (notificationPopup.dismissTimeout) { | ||
142 | notificationPopup.dismissClicked(); | 148 | notificationPopup.dismissClicked(); | ||
143 | } else { | 149 | } else { | ||
144 | notificationPopup.expired(); | 150 | notificationPopup.expired(); | ||
145 | } | 151 | } | ||
146 | } | 152 | } | ||
147 | } | 153 | } | ||
Show All 29 Lines | 182 | onBodyClicked: { | |||
177 | if (area.acceptedButtons & mouse.button) { | 183 | if (area.acceptedButtons & mouse.button) { | ||
178 | area.clicked(null /*mouse*/); | 184 | area.clicked(null /*mouse*/); | ||
179 | } | 185 | } | ||
180 | } | 186 | } | ||
181 | onCloseClicked: notificationPopup.closeClicked() | 187 | onCloseClicked: notificationPopup.closeClicked() | ||
182 | onDismissClicked: notificationPopup.dismissClicked() | 188 | onDismissClicked: notificationPopup.dismissClicked() | ||
183 | onConfigureClicked: notificationPopup.configureClicked() | 189 | onConfigureClicked: notificationPopup.configureClicked() | ||
184 | onActionInvoked: notificationPopup.actionInvoked(actionName) | 190 | onActionInvoked: notificationPopup.actionInvoked(actionName) | ||
191 | onReplied: notificationPopup.replied(text) | ||||
185 | onOpenUrl: notificationPopup.openUrl(url) | 192 | onOpenUrl: notificationPopup.openUrl(url) | ||
186 | onFileActionInvoked: notificationPopup.fileActionInvoked() | 193 | onFileActionInvoked: notificationPopup.fileActionInvoked() | ||
187 | 194 | | |||
188 | onSuspendJobClicked: notificationPopup.suspendJobClicked() | 195 | onSuspendJobClicked: notificationPopup.suspendJobClicked() | ||
189 | onResumeJobClicked: notificationPopup.resumeJobClicked() | 196 | onResumeJobClicked: notificationPopup.resumeJobClicked() | ||
190 | onKillJobClicked: notificationPopup.killJobClicked() | 197 | onKillJobClicked: notificationPopup.killJobClicked() | ||
191 | } | 198 | } | ||
192 | } | 199 | } | ||
193 | } | 200 | } | ||
194 | } | 201 | } |