Bug 449029 - Chrome and Firefox notifications appear violating do-not-disturb
Summary: Chrome and Firefox notifications appear violating do-not-disturb
Status: RESOLVED INTENTIONAL
Alias: None
Product: plasmashell
Classification: Plasma
Component: Notifications (other bugs)
Version First Reported In: master
Platform: Ubuntu Linux
: NOR normal
Target Milestone: 1.0
Assignee: Kai Uwe Broulik
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-01-23 19:18 UTC by Piotr Kubowicz
Modified: 2022-01-23 21:35 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Notification from Firefox (25.78 KB, image/png)
2022-01-23 19:18 UTC, Piotr Kubowicz
Details
Notification from Chromium (23.70 KB, image/png)
2022-01-23 19:19 UTC, Piotr Kubowicz
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Piotr Kubowicz 2022-01-23 19:18:52 UTC
Created attachment 145813 [details]
Notification from Firefox

STEPS TO REPRODUCE
1. Make sure you have Plasma Integration add-on installed in Firefox (https://addons.mozilla.org/pl/firefox/addon/plasma-integration/) 
2. Click Plasma notifications icon, enable 'Do not disturb' for 4 hours
3. Open any web page in Firefox, right-click any link, choose 'Save Link As…' , KDE file chooser dialog appears, select any location then choose save

OBSERVED RESULT
Two notifications appear: first about transfer progress, second about download finish.

EXPECTED RESULT
No notification appears. The add on is prepared by KDE team, the notifications it show should behave like proper KDE notifications.

SOFTWARE/OS VERSIONS
KDE Plasma Version: 5.22.5
KDE Frameworks Version: 5.86.0
Qt Version: 5.15.2
Firefox: 96.0+build2-0ubuntu0.21.10.1
Plasma Integration add-on: 1.8.1

ADDITIONAL INFORMATION
Probably this is not just a problem in the Firefox add-on, but a wrong way of handling notifications in KDE in general. I think so because also Chromium/Chrome shows notifications violating KDE do-not disturb. To reproduce, open calendar.google.com, there enable desktop notifications, set up an event with a notification. Wait for the notification - you will see it despite do-not-disturb enabled. The notification will never disappear, which is very frustrating. Reproduced in Chromium 97.0.4692.99.

This is not a regression. As far as I remember, browser notifications violated KDE do-not-disturb ever since do-not-disturb feature appeared.
Comment 1 Piotr Kubowicz 2022-01-23 19:19:20 UTC
Created attachment 145814 [details]
Notification from Chromium
Comment 2 Kai Uwe Broulik 2022-01-23 20:31:12 UTC
Chrome is a bug in Chrome: Bug 448589

As for the download notification I'm calling this intentional. You initiated the download. It's the same when taking a screenshot or pairing a Bluetooth device, feedback for explicit user interactions are is shown even in do not disturb mode.
Comment 3 Piotr Kubowicz 2022-01-23 21:04:34 UTC
Thinking this way, you can dismiss any bug in do-not-disturb: the user turned on the computer and started some programs, it was their intention to receive the notification, so we show the notification, gotcha!

No, if I set 'do not disturb', I don't want any notifications flying around my desktop. Maybe I am sharing my screen during an important event. Then I don't want anything covering my desktop, and I don't want to move my mouse to close notifications.

I cannot see how 'download finished' notification could count as an urgent or important event. If I set 'do not disturb', I'm doing some deep work and probably don't need to be immediately reminded a download is finished. With current Internet speed, most downloads finish in a few seconds. 'Download finished' notification is redundant. The file will be usually available after I take a deep breath. If I miss the notification, nothing wrong happens. The notification is still available in KDE notification list.

The whole principle of deep work and 'do not disturb' is replacing push ('here is your download, it's finished, look at me, I am a very important notification!') with pull (I deliberately decide to open the list of emails, instant messages, transfers).

You mistake dialogs ('Do you really want to replace this file?') with notifications ('It is finished! See what is new!'). 'Choose download location' requires user input to do its job, thus has to be shown even in do-not-disturb mode. 'Download finished' is a notification and should not be shown. Download progress is also a notification.
Comment 4 Piotr Kubowicz 2022-01-23 21:25:24 UTC
Similarly, I don't understand why KDE shows Chromium notifications during do-not-disturb just because Chromium claims its notifications are 'urgent'.

How can anything be urgent in do-not-disturb mode? Maybe KDE should not trust third-party applications about urgency. If you have known use cases where a notification is in some way critical (which ones? why?), maybe you should just whitelist a subset of software you control (KDE-owned applications) and block all the rest.
Comment 5 Kai Uwe Broulik 2022-01-23 21:35:14 UTC
> How can anything be urgent in do-not-disturb mode?

Your laptop shutting off any second because the battery is about to run out and you will lose that precious document you've been writing on but didn't save for the past hours is pretty urgent, for instance.

> Similarly, I don't understand why KDE shows Chromium notifications during do-not-disturb just because Chromium claims its notifications are 'urgent'.

Well, because it claims those are urgent.

>  maybe you should just whitelist a subset of software you control (KDE-owned applications) and block all the rest.

Maybe, maybe not. Patches welcome.