https://bugs.kde.org/show_bug.cgi?id=522392
Bug ID: 522392
Summary: In all kicker-based launchers, adding a new widget
instance with an intentionally empty favorite
database will reset them to distribution default
Classification: Plasma
Product: plasmashell
Version First 6.7.1
Reported In:
Platform: Other
OS: Linux
Status: REPORTED
Severity: normal
Priority: NOR
Component: Application Menu (Kicker) widget
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: 1.0
DESCRIPTION
Until 2017, Kicker-based launchers used per-widget-instance app favorite lists;
since then they are centrally stored in the Activities database (and
activity-aware).
The problem is that the initialization of the default favorites still works in
a way that is appropriate for the old per-widget way, but not the centralized
way.
When a kicker-based widget starts, it checks whether it has already been
ported; if not, it asks the backend to add the activity ids that are listed in
the corresponding field of the main.xml file (default favorites, or old
favorites if porting from a pre-2017 install) and marks itself as ported; the
backend modifies this list according to a system-wide configuration file, and
adds them to the database. This approach may be correct for porting old
installations, but it is not for post-2017 ones. The favorites should be added
to the database on a per-install base and only once, rather than on a
per-widget base once.
If a user decides that they do not want favorites and unfavorites everything in
their existing launcher, then later decides to add a new widget instance of a
launcher, that instance will not be marked as ported yet, and its second check
(the favorites database having no entries) will also be true, so it will import
the default favorites again, adding favorites to all existing launchers, rather
than the expected result of adding a new launcher with no favorites, and
keeping the existing launchers without favorites.
Kicker is the wrong place to handle adding default favorites to the database;
it should happen somewhere else on initial system startup, once. Only the
actual porting of user data from the old system makes sense here (and that we
could drop that by now, it's been 10 years).
STEPS TO REPRODUCE
1. Remove all favorites
2. Add a new instance of kickoff, kicker, or kickerdash
OBSERVED RESULT
All instances of kickoff, kicker, and kickerdash have the distribution default
favorites
EXPECTED RESULT
All instances of kickoff, kicker, and kickerdash have no favorites
SOFTWARE/OS VERSIONS
Operating System: Fedora Linux 44
KDE Plasma Version: 6.7.80
KDE Frameworks Version: 6.28.0
Qt Version: 6.11.1
Kernel Version: 7.0.13-200.fc44.x86_64 (64-bit)
Graphics Platform: Wayland
ADDITIONAL INFORMATION
--
You are receiving this mail because:
You are watching all bug changes.