[PATCH] Detecting notification popup server capabilities

Aurélien Gâteau aurelien.gateau at canonical.com
Thu Sep 3 09:26:07 BST 2009


Aaron J. Seigo wrote:
> On September 2, 2009, Aurélien Gâteau wrote:
>> Aaron J. Seigo wrote:
>>>> As Olivier said,
>>>> developers should not assume that actions are always displayed, since
>>>> most knotify notification plugins do not support them.
>>> "most" as in "numerically greatest". our primary target environment does
>>> support them, however.
>> I am not sure what you are talking about. I was referring to the
>> execute, ktts, logfile, sound, and taskbar plugins.
> 
> ah, the various outputs. well ... yes. those outputs are not meant to be used 
> for user interaction (obviously :), but that does not mean user interaction is 
> not useful just because they exist.

Sure, it just means developers should not assume actions are always 
presented to the user.

>>> and the only cases i can think of that really *require* such actions be
>>> visible only run in the KDE Workspace (e.g. KDE's power management
>>> infrastructure).
>>>
>>>> Do you think this patch could be upstreamed?
>>> imho, no.
>> Too bad, we will have to keep it Kubuntu specific then. We really need
>> this to avoid a bad user experience when running KDE applications on
>> GNOME + notify-osd.
> 
> what is breaking, exactly? doesn't notify-osd just ignore the actions?

Unfortunately not: from what I understand (I was not there yet when it 
was designed) some applications really relied on the notification 
actions (this is probably more important on the GNOME side, because the 
only notification output available was notification bubbles, so actions 
were always there).

Lots of applications have been patched to detect support for actions and 
behave otherwise if it is not there, but to avoid regressions in 
applications Ubuntu developers would not be able to patch, it was 
decided that while notify-osd would announce it does not support 
actions, if a notification with action is sent to it, it displays an 
(ugly) dialog instead of a bubble. It also does the same if the 
notification is permanent.

This did not affect KDE applications in Jaunty, but now that the KDE 
notification system uses the FreeDesktop spec, KDE applications running 
on Ubuntu send their notifications to notify-osd. For example when 
someone ping you on Kopete, you get a dialog box. When KWallet warns you 
that an application is asking to open the wallet, you get a dialog box...

Aurelien




More information about the kde-core-devel mailing list