https://bugs.kde.org/show_bug.cgi?id=459774

--- Comment #8 from Naxdy <xna...@hydra-development.net> ---
(In reply to David Edmundson from comment #4)
> There's a massive difference between what your saying happens and the spec.
> 
> " When set the server will not automatically remove the notification when an
> action has been invoked. The notification will remain resident in the server
> until it is explicitly removed by the user or by the sender. This hint is
> likely only useful when the server has the "persistence" capability. "
> 
> I don't see how that corresponds to the previous concerns especially about
> "race against time" to click things or how anything looks. The spec implies
> it shouldn't change the time at all.
> 
> We might be doing something inappropriate with the hint that needs
> identifying and fixing, but blinding changing does not seem the way to go.

I will use Discord as an example of what happens. When you get a Discord
message, be it a tag, direct message, or otherwise, you will get a notification
on your desktop. When this notification appears as a popup on Plasma, you are
able to click this notification, upon which the Discord client will be focused,
and it then navigates you to the part in the application where that message was
received (either a channel on a server you're a member of, or a DM
conversation).

Currently however, clicking the notification while it is in its popup state is
the only way to evoke this functionality. Once the notification expires and
sits in the notification applet, it is no longer clickable, and it does not
present any buttons to interact with either. Its functionality is therefore
lost.

The hack I did on my system, is to edit
`libnotificationmanager/notification.cpp` and change the line that reads
`resident = hints.value(QStringLiteral("resident")).toBool();` to simply
`resident = true;` - just to see what happens.

Upon performing this hack, the Discord notification within the notification
applet now has a little button added to it (see screenshot). Upon clicking this
button, I am brought to the place within Discord where the message in question
originated. In other words, the functionality which was previously lost upon
expiry of the notification popup is now restored.

In the case of Discord however, clicking the "View" button only works once. Any
subsequent clicks have no effect. Some other applications are similar in this
behavior, some are not. In other DEs (using GNOME & Windows as reference), it
is common practice to remove the notification from the history once it has been
interacted with, perhaps we could do something similar here.

If the "resident" property is not the right point to edit here, then let it be
something else. The point of this issue isn't to change how "resident"
functions necessarily, it is simply to retain the functionality of the vast
majority of notifications once their initial popup has expired.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to