Added a new class called DragAndDropUtilities for easier adding good drag and drop support to varius feature throughout Odin.
It out of the box adds support for moving, copying, swapping and selecting values, for both Unity Object and non-Unity types alike.
We have adopted a new, DLL-free method for making Unity draw Odin's inspectors, that does not rely on declaring editor types with CustomEditor attributes on them. This means that Odin will no longer cause an extra recompilation every time you change your types, and that Odin can instantly update which types it draws at runtime when you change the settings, without any reloads at all.
Additionally, this means that we have now lifted all of the prior restrictions on which types could be drawn by Odin (IE, only public types with valid C# names, that did not share full names with other types and were not declared in assemblies with spaces in their name).
Finally, this should resolve all crash bugs and hang issues that generating editors were causing in 2017.1 and 2017.2.
Odin now features a new Persistent Context system. Now when you switch to a different tab, close a foldout, or select a different color palette, and leave, you can come back and find the inspector in the state you left it. This is great for when you have a lot of objects, and you're jumping between them a lot.
This works when switching between objects, when Unity reloads and even after Unity has been shut down and restarted.
The Persistent Context system will cache your inspector state until the cache reaches a configurable size.
At this point, it'll clean out older states, in order to keep itself within the memory limit.
You can change the size of your cache, or completely disable the caching altogether from the Persistent Context preferences window in 'Tools > Odin Inspector > Preferences > Persistent Context'.
Dictionaries now support having keys of any type, except on prefab instances, where key type support is still limited.
Dictionary key type support on prefab instances is now extendable for value type keys. See here for details.
Odin can now show two-dimensional arrays as tables in the inspector. The tables can be modified using the new TableMatrix attribute.
You can now completely enable and disable the Odin Serialization system via a single button located in our new Toggle Serialization window found in Tools > Odin Inspector > Preferences. The Odin Preferences window now has a new window called "Toggle Serialization"