Skin customization changes
Posted: Sat Oct 30, 2021 8:56 am
Hi,
amazing job on the latest less preference funcionality! Not only is saving the preferences orders of magnitude faster than in the previous release, the new declarative method of defining options is also increadibly easy while it probably still covers the majority of all common use cases.
A couple of things I came across:
Adding customization options in info.js is not recognized as proper addon configuration in the addon list. What I mean is that adding a config.js file gave the skin a little config button in the list of installed addons that opened the customization options screen in addition to adding the settings to the options screen. Not a big deal but it seems inconsistent.
Modified options are persisted as n_[type] (like 3_color, 2_radio, etc.) in persistent.json, which could lead to inconsistent values if the order of elements is changed after their value has been set. I wanted to highlight it since it happened to me when I set up the options, and it could lead to issues and inconsistend behavior down the road if addon authors change the layout customization settings in future updates.
I would love to see an option to either pick up the default values directly from a less file, or make it possible to remove a stored value if the user clicks the reset changes button instead of assigning a static default value.
Consider the following use case: A user tries out different skin color settings, but decides that they ultimately like the default value best, so they click the reset changes button.
Some time later, the addon author finds out that the default value is hard to read in some places and pushes an update that changes the default in the their info.js and less files.
The user installs the update, but since the reset changes button sets a static value instead of removing the option alltogether they will not get the new default.
amazing job on the latest less preference funcionality! Not only is saving the preferences orders of magnitude faster than in the previous release, the new declarative method of defining options is also increadibly easy while it probably still covers the majority of all common use cases.
A couple of things I came across:
Adding customization options in info.js is not recognized as proper addon configuration in the addon list. What I mean is that adding a config.js file gave the skin a little config button in the list of installed addons that opened the customization options screen in addition to adding the settings to the options screen. Not a big deal but it seems inconsistent.
Modified options are persisted as n_[type] (like 3_color, 2_radio, etc.) in persistent.json, which could lead to inconsistent values if the order of elements is changed after their value has been set. I wanted to highlight it since it happened to me when I set up the options, and it could lead to issues and inconsistend behavior down the road if addon authors change the layout customization settings in future updates.
I would love to see an option to either pick up the default values directly from a less file, or make it possible to remove a stored value if the user clicks the reset changes button instead of assigning a static default value.
Consider the following use case: A user tries out different skin color settings, but decides that they ultimately like the default value best, so they click the reset changes button.
Some time later, the addon author finds out that the default value is hard to read in some places and pushes an update that changes the default in the their info.js and less files.
The user installs the update, but since the reset changes button sets a static value instead of removing the option alltogether they will not get the new default.