Friday, October 25, 2019

No more AmiStart settings overwrite

There are many little changes I should have really made long ago. One of these is changing the way AmiStart preferences are handled. You should know that Icaros Desktop provides three different settings for its lower side application dock:

1. Compact - the default one, at the center of the screen, with selected applications and no task management on the bar (window management is available, though, in the "Start menu" on the left corner)

2. Full - almost the same application shortcuts on the left, followed by tasks list populating when opening windows and programs

3. Custom - ideally, your own customizations that should be accepted and kept like they are. In theory, because this setting never worked and was somehow a "keep it like it is" option in Icaros Settings.

Well, this implementation has always been really poor, due to my very basic skills when done. The ugliest consequence was the fact that your customizations to the bar were lost every time I decided to change the default applications shown within the icons bar. This happened because I went for an even uglier solution: inside the System/Amistart directory, you would find the following ones:

AmiStart - the program itself - its icon
AmiStartCompact - ready to be used icon for the compact layout
AmiStartFull - ready to be used icon for the full layout
sm.prefs - preferences file for the full layout
smlite.prefs - preferences file for the compact layout

A mess. And Icaros Settings handled these files in a very dumb way, renaming the proper info file into, so that either AmiStartCompact+smlite.prefs or AmiStartFull+sm.prefs were used by AmiStart. This was, and please accept my apologies, plain stupid. A far smarter solution would have been keeping a single icon file (so: only) and change sm.prefs according to your selected behavior. Luckily, from now on this will change. First of all, starting with Icaros 2.3, there won't be all those files anymore, but I created the /shape/sm directory in AmiStart's one, populanting it with three different settings: full (as usual), lite (the compact one) and... well, "Hosted", a new setting which includes also host applications imported with HostBridge. Since's tooltypes will now point to Envarc:Icaros/sm.prefs, settings will survive to updates. Unless you decide to change behavior with Icaros Settings, obviously: in this this case, your current settings will be (obviously) overwritten.