Consider permitting the user to choose whether they want changed defaults to take effect on upgrade
As we get more popular and reach more users, we increasingly run into the following problem:
- Some of our users appreciate change and novelty and want the UX they experience to be modernized over time
- Some of our users are happy with the way things look and behave right now and are annoyed when anything changes
These sentiments are mutually exclusive. It's not feasible for conservative and change-averse users to simply avoid updating because then they miss out on security fixes and the inevitable changes are simply delayed, because they have to upgrade eventually.
Relatedly, we have a problem whenever we change the default settings for anything: depending on the implementation, existing users may or may not see any changes at all.
Cases where the change takes effect for existing users include default settings that use kconfig which have not been overridden by user action; rewritten widgets; or changes to the widget style. Cases where changes do not take effect for existing users without a kconf update script include changes to existing color schemes or which one is the default; changes to the default Places panel items; changes to the toolbar arrangement in QWidgets-based apps (sometimes; seems buggy); or changes to the default Plasma Panel layout.
All in all it is a bit messy and random, and does not seem to satisfy everyone.
If we want to keep everyone happy, I think we need to unify whether or not changed settings take effect on upgrade, and then consider giving the user a choice for whether or not to apply changes upon upgrade. Not new features, mind you. Just instances where an existing feature has its default behavior or appearance changed, or is replaced with a new one.
This would allow conservative, change-averse, or technically novice users to use the "don't change my settings" option and never have their app behaviors, color schemes, or widgets changed unless they specifically go and do it. And users who appreciate change and want to see the UI modernized would be able to always have those changes applied--not just some of them.