Bug 420541

Summary: Critical notifications (and *only* critical notifications) should be more attention-getting
Product: [Plasma] plasmashell Reporter: RaitaroH <RaitaroHikami>
Component: NotificationsAssignee: Kai Uwe Broulik <kde>
Status: RESOLVED FIXED    
Severity: normal CC: kde, nate, plasma-bugs, r2b2x3+kdebug
Priority: NOR Keywords: usability
Version: 5.18.4Flags: kde: Usability?
Target Milestone: 1.0   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In: 5.24

Description RaitaroH 2020-04-25 07:48:43 UTC
SUMMARY
I believe the current implementation of battery notifications is rather flawed. What is the issue? I never notice the notifications, they might not even be sent at all (I will open another bug if that is the case). Still, I find myself missing the notification while being occupied working on something.

How to fix: make it more obvious. Windows10 at the very least creates this horrible fullscreen popup that won't go away unless acknowledged. I think that is preferable, especially if made pretty. Powerdevil should have some custom notification system, perhaps a rework of the shutdown options maybe?
I made a very basic example. I took the shutdown options plasma has and simply added an icon and some appropriate text. Something like this should appear instead of a low/critical notification. If the battery is done charging a normal system notification should suffice. This type of "fullscreen-notification" could also be used for other things, maybe even by plasma users through some cli command.
See mock-up image: https://i.imgur.com/mYZ7oZo.png

STEPS TO REPRODUCE
1. Reach low batter level
2. Get a notification about battery
3. Not see the notification
4. Proceed to have the laptop die

OBSERVED RESULT
The notifications for battery are easy to miss.

EXPECTED RESULT
Telling the user about battery is important enough to warrant the creation of a separate system, at least a copy of the shutdown options that is changed for this purpose.

SOFTWARE/OS VERSIONS
Operating System: Manjaro Linux 
KDE Plasma Version: 5.18.4
KDE Frameworks Version: 5.69.0
Qt Version: 5.14.2
Kernel Version: 5.4.34-1-MANJARO
OS Type: 64-bit
Comment 1 Kai Uwe Broulik 2020-04-25 08:57:38 UTC
Critical battery notification is a popup that will show on top of everything.
If your laptop dies before that, looks more like a hardware problem. You can configure the warning and critical threshold in settings, though. 
I'll leave exploring better visualization of the critical battery state to the VDG.
Comment 2 RaitaroH 2020-04-25 09:21:59 UTC
(In reply to Kai Uwe Broulik from comment #1)
> Critical battery notification is a popup that will show on top of everything.
> If your laptop dies before that, looks more like a hardware problem. You can
> configure the warning and critical threshold in settings, though. 
> I'll leave exploring better visualization of the critical battery state to
> the VDG.

For me is more a case of having a demanding workload. I don't want to keep the cable in at all times to not damage the battery. So for me the battery % is always in mind, yet I still may forget about it.
I also juggle machines sometimes as well, so I believe what I suggested is a much better solution than a small thing in a corner that will also disappear after a timer. As a small patch for the time being, I would suggest the battery notifications to never disappear unless the user takes that action.
Comment 3 Nate Graham 2020-04-27 17:43:57 UTC
If we made that a full-screen overlay, I guarantee that there would be a subset of users who would call for our heads on platters. :) Imagine how disruptive it would be if you were giving a presentation or playing a game. Yes, you want to be notified that you need to stop what you're doing or plug in the computer, but not at the cost of obscuring everything you're currently doing.

I agree with you that the notification pop-up shouldn't time out after one minute though. If you get up to go make tea or use the backroom, it could easily disappear before you see it.
Comment 4 RaitaroH 2020-04-30 06:23:22 UTC
(In reply to Nate Graham from comment #3)
> If we made that a full-screen overlay, I guarantee that there would be a
> subset of users who would call for our heads on platters. :) Imagine how
> disruptive it would be if you were giving a presentation or playing a game.
Aren't we talking about KDE here? THE KDE with too many settings? Couldn't this be an optional setting for those who want it? I totally agree that a fullscreen thing can be bothering... and that's the point is it not? There is already a mute notifications option as well which could be used with this. Personally I made my battery notifications to always show up.


> Yes, you want to be notified that you need to stop what you're doing or plug
> in the computer, but not at the cost of obscuring everything you're
> currently doing.
Precisely because I am doing something important, I would like to not lose all that progress, because I missed a notification whilst being too absorbed in whatever I was doing. Isn't that right?
Comment 5 Kai Uwe Broulik 2020-04-30 06:52:32 UTC
> THE KDE with too many settings?
That's why I don't want to add new random settings, can only be in your interest then.

I still don't see the problem. The battery critical notification shows on top of everything. We have an option to change the threshold where it warns. Maybe battery low could also be changed to be on top of everything and never time out so you'd have to acknowledge it.
Comment 6 Nate Graham 2020-04-30 17:04:16 UTC
What I think we have here is a conflict between the legitimate desire to keep notifications out of the way and non-annoying with the legitimate desire to make critical notifications adequately attnetion-getting.

This may seem strange, but anecdotally I have observed users who completely miss notification pop-ups in the periphery of their screens. This is hard for me to understand since for me the pop-up is impossible to miss. But I have seen this happen quite often for my wife (who uses Plasma) and my mother, father, and sister (who all use MacOS, which has a similar style of pop-up). Raitaro seems to be experiencing the same issue.

I have never seen this happen for people using Windows 10, which has enormous, intrusive, stupid-looking pop-ups. But that's not a great solution since then non-critical pop-ups get in your way and annoy you a ton. It's an unsatisfactory sledgehammer solution, but it seems to have been specifically designed to address this, which I think is evidence that it's a legitimate issue.

Perhaps we can satisfy both parties by keeping non-critical notifications exactly as they are (small, out of the way, unobtrusive) while somehow increasing the visual prominence of only critical notifications. I think the proposed full screen overlay is much too intrusive, but maybe we could consider some kind of middle ground? Like making the pop-up bigger, or making it wiggle or giving it a pulsing red border or header or something (just random ideas)? Critical notifications are the kind of thing you really *do* need to see, read and acknowledge.
Comment 7 Kai Uwe Broulik 2020-04-30 18:05:00 UTC
Git commit 45dd7bbfe18bfb91da08f2a2d07ca67e2e9401dd by Kai Uwe Broulik.
Committed on 30/04/2020 at 18:04.
Pushed by broulik into branch 'master'.

Make low battery notification critical

This ensures you have to acknowledge it and be aware that the battery is running low.
Otherwise you'll only be notified during a presentation when it's critical.

Differential Revision: https://phabricator.kde.org/D29309

M  +35   -2    daemon/powerdevilcore.cpp
M  +2    -0    daemon/powerdevilcore.h

https://commits.kde.org/powerdevil/45dd7bbfe18bfb91da08f2a2d07ca67e2e9401dd
Comment 8 Nate Graham 2020-04-30 18:11:12 UTC
Great, now all that's left to do here is to (maybe) improve the visibility of critical notifications. Moving to the appropriate place where we would implement that.
Comment 9 RaitaroH 2020-05-02 06:46:04 UTC
(In reply to Nate Graham from comment #8)
> Great, now all that's left to do here is to (maybe) improve the visibility
> of critical notifications. Moving to the appropriate place where we would
> implement that.

Can't wait to see this issue in "Adventures in Linux and KDE" Sir! :)
Comment 10 RaitaroH 2020-05-02 19:14:37 UTC
And... it appeared! Awesome.
Comment 11 Nate Graham 2021-10-01 16:30:24 UTC
I had an idea recently to give critical notifications an orange-tinted background for the header. That would make them more visible, and high visibility seems appropriate for critical notifications.
Comment 12 Bug Janitor Service 2021-10-07 20:36:02 UTC
A possibly relevant merge request was started @ https://invent.kde.org/frameworks/plasma-framework/-/merge_requests/348
Comment 13 Bug Janitor Service 2021-10-07 20:36:51 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1098
Comment 14 Bug Janitor Service 2021-10-13 16:01:03 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1113
Comment 15 Nate Graham 2021-11-03 04:57:55 UTC
Git commit be7efa5ec2bcf2c87947ee2ff5e2b9c70eb2084e by Nate Graham.
Committed on 03/11/2021 at 04:57.
Pushed by ngraham into branch 'master'.

applets/notifications: Embellish header for critical notifications

We get intermittent user complaints and bug reports about notifications
not being visible enough, especially on large or cluttered screens.

This commit attempts to remedy the situation by tinting the header for
on the left side for critical notifications using the color scheme's
"warning" color. Only critical notifications receive this treatment
since they're the only ones that the user really does need to see.
FIXED-IN: 5.24

M  +118  -86   applets/notifications/package/contents/ui/NotificationItem.qml
M  +1    -0    applets/notifications/package/contents/ui/NotificationPopup.qml

https://invent.kde.org/plasma/plasma-workspace/commit/be7efa5ec2bcf2c87947ee2ff5e2b9c70eb2084e