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

cwo <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
      Latest Commit|                            |https://invent.kde.org/plas
                   |                            |ma/plasma-workspace/-/commi
                   |                            |t/9e2d25c84e13175555c258875
                   |                            |e00e69a5705fe44
             Status|ASSIGNED                    |RESOLVED

--- Comment #7 from cwo <[email protected]> ---
Git commit 9e2d25c84e13175555c258875e00e69a5705fe44 by Christoph Wolk.
Committed on 27/05/2026 at 08:57.
Pushed by cwo into branch 'master'.

applets/kicker: invalidate stand-alone RecentUsageModel

RecentUsageModel, on types that include apps, uses a proxy model to
filter out invalid apps. When there is a change in which apps are
invalid, we need to invalidate this filter, in particular after
installing or uninstalling apps. With RecentUsageModels that are used in
a RootModel, this happens automatically as the whole RootModel is
refreshed in that situation. But when used standalone, as in Kickoff's
History view, this currently does not happen. As a consequence, an
uninstalled app will still be considered valid, but have no actual data
in the model (as its KService can no longer be accessed), so there is an
empty entry in the list (possibly with a description of "undefined",
which doesn't help much either).

Instead, we need to call the proxy model's invalidate() on KSycoca
changes. We skip this if the RecentUsageModel's parent is a RootModel,
as it happens anyway in that case, so to do it twice would be a waste.

M  +9    -0    applets/kicker/recentusagemodel.cpp

https://invent.kde.org/plasma/plasma-workspace/-/commit/9e2d25c84e13175555c258875e00e69a5705fe44

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

Reply via email to