Bug 452893 - Notification tray icon, when hidden, may become unresponsive to clicking, after copying large video files.
Summary: Notification tray icon, when hidden, may become unresponsive to clicking, aft...
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Notifications (show other bugs)
Version: 5.24.4
Platform: Arch Linux Linux
: NOR minor
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
: 454242 (view as bug list)
Depends on:
Blocks:
 
Reported: 2022-04-23 07:04 UTC by Jin Liu
Modified: 2022-05-24 19:28 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.25.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jin Liu 2022-04-23 07:04:10 UTC
SUMMARY
Currently, clicking on the notification tray icon has no effect when there're no notications. This is inconsistent with other tray icons, e.g., network, bluetooth, clipboard, disks, those all click to open even with no items to show. Moreover, the capslock and touchpad icons, when clicked, show an almost-empty appet. So, almost all tray icons open applets on click, with notification seems to be the only exception.

STEPS TO REPRODUCE
1. Clear all notifications.
2. Click on the notification tray icon.

OBSERVED RESULT
Nothing happens.

EXPECTED RESULT
An empty applet opens.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: archlinux
KDE Plasma Version: 5.24.4
KDE Frameworks Version: 5.93.0
Qt Version: 5.15.3

ADDITIONAL INFORMATION
Comment 1 Jin Liu 2022-04-23 07:10:59 UTC
Note: just found that, the notification icon does always expand on click, when set to "always visible". But it won't expand when set to "when relavent" or "always hidden".
Comment 2 Jin Liu 2022-04-23 08:13:19 UTC
Sorry, seems this is not by design, but a bug triggered by chance, when copying large (several GBs) video files between usb drives. I've not found a reliable way to reproduce it.
When the bug happens, setting the notification icon to "disabled" then back to "when relevant" fixes it. 

The system journal has the following messages, but unsure if relevant:
4月 23 16:04:29 laptop-jin-mi plasmashell[1505]: Could not find the Plasmoid for Plasma::FrameSvgItem(0x5616eed442c0) QQmlContext(0x5616ea427030) QUrl("file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/global/Globals.qml")
4月 23 16:04:29 laptop-jin-mi plasmashell[1505]: Could not find the Plasmoid for Plasma::FrameSvgItem(0x5616eed442c0) QQmlContext(0x5616ea427030) QUrl("file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/global/Globals.qml")
4月 23 16:04:29 laptop-jin-mi plasmashell[1505]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/NotificationItem.qml:219:21: QML SelectableLabel: Binding loop detected for property "implicitWidth"
4月 23 16:04:29 laptop-jin-mi plasmashell[1505]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/NotificationItem.qml:219:21: QML SelectableLabel: Binding loop detected for property "implicitWidth"
4月 23 16:04:29 laptop-jin-mi plasmashell[1505]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/NotificationItem.qml:219:21: QML SelectableLabel: Binding loop detected for property "implicitHeight"
4月 23 16:04:29 laptop-jin-mi plasmashell[1505]: file:///usr/lib/qt/qml/org/kde/plasma/components.3/ScrollView.qml:37:27: QML ScrollBar: Binding loop detected for property "visible"
4月 23 16:04:29 laptop-jin-mi plasmashell[1505]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/SelectableLabel.qml:38:5: QML TextArea: Binding loop detected for property "implicitHeight"
4月 23 16:04:29 laptop-jin-mi plasmashell[1505]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/JobItem.qml:245:9: QML Button: Binding loop detected for property "width"
4月 23 16:04:37 laptop-jin-mi plasmashell[1505]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/NotificationItem.qml:219:21: QML SelectableLabel: Binding loop detected for property "implicitWidth"
4月 23 16:04:37 laptop-jin-mi plasmashell[1505]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/JobItem.qml:245:9: QML Button: Binding loop detected for property "width"
4月 23 16:04:39 laptop-jin-mi plasmashell[1505]: file:///usr/share/plasma/plasmoids/org.kde.plasma.notifications/contents/ui/JobItem.qml:41: TypeError: Cannot read property 'destUrl' of null
Comment 3 Nate Graham 2022-04-25 18:20:54 UTC
I could have sworn we already had a bug report tracking this, but I can't find it...

Regardless, marking as CONFIRMED since I know others have recently reported the same issue and been able to reproduce it.
Comment 4 Bug Janitor Service 2022-05-23 15:02:45 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1761
Comment 5 Nate Graham 2022-05-24 16:08:38 UTC
*** Bug 454242 has been marked as a duplicate of this bug. ***
Comment 6 Nate Graham 2022-05-24 19:27:42 UTC
Git commit f045cf306c4e581c38ead972ae9e0242e6fca2cd by Nate Graham, on behalf of Kai Uwe Broulik.
Committed on 24/05/2022 at 16:08.
Pushed by ngraham into branch 'master'.

[System Tray] Emit pressed signal on compact representation in popup, too

Some actions, such as middle click to mute, trigger only on press. Some applets
also need a pressed-click because of some legacy autoclose on focus change
bug.

Unfortunately, QML does not disambiguate the "pressed" property and "pressed(mouse)"
signal with argument, so this has to be done awkwardly through QMetaObject on C++ side.
Related: bug 426646
FIXED-IN: 5.25.0

M  +8    -1    applets/systemtray/package/contents/ui/items/PlasmoidItem.qml
M  +25   -0    applets/systemtray/systemtray.cpp
M  +8    -0    applets/systemtray/systemtray.h

https://invent.kde.org/plasma/plasma-workspace/commit/f045cf306c4e581c38ead972ae9e0242e6fca2cd
Comment 7 Kai Uwe Broulik 2022-05-24 19:28:49 UTC
Git commit 7139ebfb3dd8ea078b07378c7964af2cbfb38f15 by Kai Uwe Broulik.
Committed on 24/05/2022 at 19:28.
Pushed by broulik into branch 'Plasma/5.25'.

[System Tray] Emit pressed signal on compact representation in popup, too

Some actions, such as middle click to mute, trigger only on press. Some applets
also need a pressed-click because of some legacy autoclose on focus change
bug.

Unfortunately, QML does not disambiguate the "pressed" property and "pressed(mouse)"
signal with argument, so this has to be done awkwardly through QMetaObject on C++ side.
Related: bug 426646
FIXED-IN: 5.25.0


(cherry picked from commit f045cf306c4e581c38ead972ae9e0242e6fca2cd)

M  +8    -1    applets/systemtray/package/contents/ui/items/PlasmoidItem.qml
M  +25   -0    applets/systemtray/systemtray.cpp
M  +8    -0    applets/systemtray/systemtray.h

https://invent.kde.org/plasma/plasma-workspace/commit/7139ebfb3dd8ea078b07378c7964af2cbfb38f15