Welcome to DIM
Desktop Icon Manager (DIM) is an application which saves and restores the icon positions on the Desktop. There are applications and AppleScripts that do the same thing, so why is this one different?
First, DIM allows you to save multiple desktop arrangements. While you may only use one desktop icon arrangement, there are others who prefer to use more than one for a variety of reasons. DIM allows you to have an infinite number of saved arrangements.
Next, DIM doesn’t get confused when you store an icon arrangement at one screen resolution and then restore them at a different screen resolution. In other words, if an icon is at the bottom right corner of the display when the icon positions are stored then that icon will always be placed at the bottom right corner regardless of the screen resolution.
DIM is a fully sandboxed, hardened and notarized application. This means it lives up to the strongest security policies that Apple has implemented on macOS. Further, DIM will never expose any user data to anyone or anywhere. Your data is yours, not DIM's.
Finally, when DIM was originally written (almost 21 years ago!), it was a rather simple AppleScript running on on System 7.5. With the advent of Mac OS X 10.0, Apple broke Applescript until version Mac OS X 10.4 (Tiger). At the same time they introduce a new technology called AppleScript Studio Application. This allowed DIM to be much more Mac-like. Unfortunately, AppleScript Studio Applications are now depreciated. This caused various problems starting with early versions macOS 10.13 (High Sierra) and the current macOS 10.14.2 (Mojave). I expect DIM will eventually stop working.
Turns out I had some time on my hands so I thought I would once again rewrite DIM. Since there is no way to control the Desktop icons other than through AppleScript I decided to strip down the required AppleScript to it’s minimum and then make a bridge between those routines and Apple’s new programming language Swift. And that is exactly what was done (using Swift 4.2 and Xcode 10.1). Inside of DIM are some very simple AppleScript functions that are driven by Swift. Swift, meanwhile, takes care of all the user interactions. I hope this new version of DIM will have a lifetime even longer than the original versions. We’ll see.
G.J. Parker - http://www.parker9.com (Entonos)