Autostart app for upgrade installs, too
This commit refines the app's autostart functionality to handle the use case of performing an upgrade install, for which we want to show the special upgrade UI rather than the main UI. Here's how it all works now:
The config file can store a LastShownForRelease
key-value. It is
checked in two places:
- by the system via the app's X-KDE-autostart-condition .desktop file key
- in main.cpp, when the app runs
If the value of LastShownForRelease
is equal to the version number of
the current Plasma release, the autostart condition triggers and the app
does not autostart. This happens when the app has already been run once
for the current Plasma version.
If the value of LastShownForRelease
is empty, it's a first boot
situation, and the app autostarts and shows the normal UI.
If the value of LastShownForRelease
is set to something, but it
doesn't match the current Plasma version, then it's an upgrade install,
and the app autostarts and shows its upgrade UI.
In all cases, after the user quits the app, the config file value is updated if needed to ensure that the app's status of when it last ran is accurate.
A bunch of code is re-jiggered to accomplish the above, including the removal of the autogenerated kconfig harness, which is no longer needed now that all config file manipulation is done on the C++ side.
All relevant user- and developer-facing changes are documented in the README.md file.
BUG: 459180 FIXED-IN: 5.27