broulik created this revision. broulik added reviewers: Plasma, VDG. Herald added a project: Plasma. Herald added a subscriber: plasma-devel. broulik requested review of this revision.
REVISION SUMMARY This adds a quick reply feature with a text field inline in the notification popup. An action named `reply` will spawn the text field and a `NotificationReplied` signal is emitted then. There's additional kde hints for changing the placeholder text (defaults to "Type a reply..."), submit button text (defaults to "Send") and submit button icon name (defaults to "document-send", that paper aeroplane icon). TEST PLAN Needs D25832 <https://phabricator.kde.org/D25832> for KWin Doesn't work on Wayland because there notifications never ever ever get focus and I am sick and tired of running after KWin people to have this addressed. Notification, just has a normal button - should we have some form of indication that it will spawn a quick reply here actually instead of e.g. bringing up the app or something? F7807886: Screenshot_20191210_155559.png <https://phabricator.kde.org/F7807886> Default placeholder and button F7807887: Screenshot_20191210_155720.png <https://phabricator.kde.org/F7807887> Custom placeholder and button F7807890: Screenshot_20191210_155642.png <https://phabricator.kde.org/F7807890> Button enabled after typing (can also hit Return/Enter so send) F7807891: Screenshot_20191210_155652.png <https://phabricator.kde.org/F7807891> REPOSITORY R120 Plasma Workspace REVISION DETAIL https://phabricator.kde.org/D25851 AFFECTED FILES applets/notifications/notificationapplet.cpp applets/notifications/notificationapplet.h applets/notifications/package/contents/ui/NotificationItem.qml applets/notifications/package/contents/ui/NotificationPopup.qml applets/notifications/package/contents/ui/NotificationReplyField.qml applets/notifications/package/contents/ui/global/Globals.qml libnotificationmanager/dbus/org.freedesktop.Notifications.xml libnotificationmanager/notification.cpp libnotificationmanager/notification.h libnotificationmanager/notification_p.h libnotificationmanager/notifications.cpp libnotificationmanager/notifications.h libnotificationmanager/notificationsmodel.cpp libnotificationmanager/notificationsmodel.h libnotificationmanager/server.cpp libnotificationmanager/server.h libnotificationmanager/server_p.cpp libnotificationmanager/server_p.h To: broulik, #plasma, #vdg Cc: plasma-devel, LeGast00n, The-Feren-OS-Dev, jraleigh, fbampaloukas, GB_2, ragreen, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, ahiemstra, mart