Bug 426674

Summary: Notification timer not visible on latest beta i.e 5.19.90 until SVG cache is cleared
Product: [Plasma] plasmashell Reporter: Nishith Khanna <nishith.khanna>
Component: generalAssignee: David Edmundson <kde>
Status: RESOLVED FIXED    
Severity: normal CC: matejm98mthw, nate, pepko94, plasma-bugs, postix, tildearrow
Priority: VHI Keywords: regression
Version: 5.19.90   
Target Milestone: 1.0   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In: 5.75
Sentry Crash Report:
Attachments: No timer near the cross icon also seems like notification is cut a little from top

Description Nishith Khanna 2020-09-18 09:44:29 UTC
Created attachment 131744 [details]
No timer near the cross icon also seems like notification is cut a little from top

SUMMARY
So with latest update i.e 5.19.90. The circular timer in notifications are not visible near the cross/close icon

STEPS TO REPRODUCE
1. Take a partial screenshot or do any other thing to get a non critical screenshot
2. There will be no circular timer near the close/cross icon

OBSERVED RESULT
No circular timer near the close/cross icons

EXPECTED RESULT
There should be a circular timer like it was in 5.19.5

SOFTWARE/OS VERSIONS
Operating System: Arch Linux
KDE Plasma Version: 5.19.90
KDE Frameworks Version: 5.74.0
Qt Version: 5.15.1
Kernel Version: 5.8.9-arch2-1
OS Type: 64-bit
Processors: 4 × Intel® Core™ i5-6200U CPU @ 2.30GHz
Memory: 11.6 GiB of RAM
Graphics Processor: Mesa Intel® HD Graphics 520
Comment 1 Nishith Khanna 2020-09-18 19:28:48 UTC
Please tell me if anything else is needed so will do the same
Comment 2 Nate Graham 2020-09-19 00:59:23 UTC
Cannot reproduce. Looks like your toolbuttons are too small as well. :/

Are you using any kind of global scaling or have you changed the font size or the font DPI? Also, does the timeout indicator come back if you clear the plasma cache with `rm ~/.cache/plasma*` and then restart plasmashell with `plasmashell --replace`? YOu can trigger a notification with `notify-send foo bar` to test.
Comment 3 Nishith Khanna 2020-09-19 05:30:45 UTC
Thanks Nate clearing cache fixed the issue. Sorry I was not aware that this could fix the issue. Will keep this in mind from next time. Sorry to take up your time in this. Have a nice day time to go back to your blog hehehe.
Comment 4 Nate Graham 2020-09-21 04:01:22 UTC
Thanks. However you shouldn't have needed to clear the cache! :) I wonder if this is an artifact of porting the button from PlasmaCompoents2 to 3 for the button.

FWIW I have seen various other user reports of this too so it doesn't seem like a one-off thing.

A shotgun solution would be to clear the SVG cache after package upgrades of Plasmashell just like we do for Plasma Framework.
Comment 5 Nate Graham 2020-09-21 20:52:38 UTC
*** Bug 426668 has been marked as a duplicate of this bug. ***
Comment 6 Nate Graham 2020-09-21 20:54:17 UTC
Looks like this is affecting more than just the timer; the Taks Manager's media controls tooltip was also messed up for someone until clearing the cache. Something odd seems to be going on with the SVG cache...
Comment 7 Nishith Khanna 2020-09-22 06:09:52 UTC
Hey Nate there is one more bug too not regarding svg but regarding Highlight changed setting maybe you have some thoughts about it too as its a pretty big feature for this release so if it can be fixed would be good for stable release. If you want I can give link here about that bug
Comment 8 Nate Graham 2020-09-22 15:42:44 UTC
That's unrelated to this bug :)
Comment 9 Arjen Hiemstra 2020-09-23 14:09:05 UTC
Git commit 16f852ea4c822581a6a3b1a03c7da4b7f4e7c0be by Arjen Hiemstra.
Committed on 23/09/2020 at 14:08.
Pushed by ahiemstra into branch 'master'.

Ensure FrameSvg uses lastModified timestamp when using cache

This, I suspect, is the true source of bug 426674. FrameSvg would
request items from the cache without specifying any modification time
stamp, so we end up always retrieving the cached version. Since
lastModified is now a required parameter, we need to ensure this does
not happen anymore.

M  +9    -7    src/plasma/framesvg.cpp
M  +2    -1    src/plasma/private/framesvg_p.h

https://invent.kde.org/frameworks/plasma-framework/commit/16f852ea4c822581a6a3b1a03c7da4b7f4e7c0be
Comment 10 Arjen Hiemstra 2020-09-23 14:09:13 UTC
Git commit 54e12fcda086d4abc2af5b90cc60178a419fbdb7 by Arjen Hiemstra.
Committed on 23/09/2020 at 14:08.
Pushed by ahiemstra into branch 'master'.

Deprecate a lastModified timestamp of 0 in Theme::findInCache

lastModified is used to track whether a file is outdated. Having a 0
here means we (in the old code) use the cached version. This causes
problems when the on-disk file has changed, as we have no way of
informing callers that they should regenerate the cache entry. To avoid
this, using a lastModified of 0 now warns and will always return false
(to indicate it is not cached). Unfortunately we can't simply drop the
default parameter of 0 since there is no source-compatible way of doing
that.

M  +21   -13   src/plasma/theme.cpp
M  +4    -0    src/plasma/theme.h

https://invent.kde.org/frameworks/plasma-framework/commit/54e12fcda086d4abc2af5b90cc60178a419fbdb7
Comment 11 Nate Graham 2020-09-27 03:15:18 UTC
*** Bug 426978 has been marked as a duplicate of this bug. ***
Comment 12 Nate Graham 2020-09-28 15:19:59 UTC
*** Bug 426711 has been marked as a duplicate of this bug. ***