Review Request 110389: Add "Configure" button to notifications that opens KNotify settings for the app that emitted the notification

Kai Uwe Broulik kde at privat.broulik.de
Sun May 12 00:33:00 UTC 2013


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/110389/
-----------------------------------------------------------

(Updated May 12, 2013, 12:32 a.m.)


Review request for Plasma and KDE Usability.


Changes
-------

Store all the notifyrc applications in a QHash and don't always iterate over all files when one presses the configure button.

Also enables the model to expose an "is configurable" property so the notification plasmoid can hide the configure button if the application is not configurable or found, ie. Non-KDE apps not using KNotify or applications using the notification DBus interface directly such as kdialog.

And removed some unneeded kDebug.


Description (updated)
-------

This patch adds a configure button to notifications that, when clicked, open the KNotify settings for the app that emitted the notification.

This makes it much easier to turn off a notification you do not want and you have no clue where to turn it off (no novice user would know that you can actually turn these off, not even speaking of where)

I asked Olivier Goffart for permission to use his notifyrc lookup code that is licensed GPLv2 in this LGPLv2 code. We need to do this because according to the specs the application name passed to the notification system is "[…] the optional name of the application sending the notification. This should be the application's formal name[…]. An example would be "FredApp E-Mail Client," rather than "fredapp-email-client."
So the dataengine only gets "KDE Power Management System" and not "powerdevil", so it has to match this manually.

For illustration how it works, see here: http://666kb.com/i/cdzg50m1huwc1k751.jpg ;-)

Newer screenshot showing that KDE apps with notifyrc have a configure button whereas the others have not: http://666kb.com/i/cdzsoe3s0913bnxut.jpg


Diffs (updated)
-----

  plasma/generic/applets/notifications/contents/ui/LastNotificationPopup.qml df63ae6 
  plasma/generic/applets/notifications/contents/ui/NotificationDelegate/NotificationDelegate.qml 64d9298 
  plasma/generic/applets/notifications/contents/ui/Notifications.qml c5be0a3 
  plasma/generic/dataengines/notifications/CMakeLists.txt e8d66e0 
  plasma/generic/dataengines/notifications/notificationaction.cpp 390cc16 
  plasma/generic/dataengines/notifications/notifications.operations bb5d0c6 
  plasma/generic/dataengines/notifications/notificationsengine.h 4644c8e 
  plasma/generic/dataengines/notifications/notificationsengine.cpp 77f5db2 

Diff: http://git.reviewboard.kde.org/r/110389/diff/


Testing (updated)
-------

Works, in both the popup and history. Tested with:
 - Amarok: Shows configure button properly
 - PowerDevil: Shows configure button properly
 - Konsole: Shows configure button properly
 - KDialog: Does not show configure button, as expected
 - QDBusViewer to issue a notification using the FDO DBus iface: Does not show configure button, as expected (it does, when your passed appName happens to match an application, which is rather nice, though)


Thanks,

Kai Uwe Broulik

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20130512/301ee1d9/attachment.html>


More information about the Plasma-devel mailing list