Changing Persistent settings from roamable to local without breaking something


Since like forever, the Key Promoter stores its statistic about clicked buttons using a PersistentStateComponent. One problem I had not thought of is that this leads to merging errors when people try to sync their settings to different machines

My idea is now to change the current persistent state annotations to this:

name = "KeyPromoterXSettings",
storages = {
value = "KeyPromoterXSettings.xml",
roamingType = RoamingType.DISABLED
public class KeyPromoterSettings implements PersistentStateComponent<KeyPromoterSettings> {...}

Question: Will this break something or is this transition smooth for all existing users that already have the Key Promoter?


Yes, it is safe. please note, that in this case also component will be not exportable via `Export Settings` action.


Thank you Vladimir for the confirmation!


Please sign in to leave a comment.