Description
So we have this thing called global automations. Not many people even know about them. I've never used them in any serious project. They seem like yet another hardly-discoverable secret feature of LMMS. They work well enough though - you set an automation for a control and it works as if it's an automation track placed at the beginning of the project.
So what's the problem with them? Well... think about it: you add a global automation to a control. You draw the automation curve, close the automation editor... and your control now has a hidden automation track, one which is in no way represented by the UI, one which you can only access from the context menu of the control itself.
This is not good UI design... it is not WYSIWYG, it is not discoverable, it is not ergonomic. It is a hidden UI feature. There's no visual representation of these automations anywhere apart from when you're actually editing them.
The idea of global automations is good, it's just not implemented in a very user-friendly way. I can see three ways of dealing with this:
1 - remove global automations. For backwards compatibility, load old global automations as regular automation tracks.
2 - add another editor window (which is hidden by default) that displays all global automations as automation tracks - kind of like the BB-editor, but for automations only.
3 - add a switch to hide/display global automations in the song editor.
Each of these options has their ups and downs.
I've marked this for 1.1.0.
Here are the steps for global automation removal as outlined by PhysSong:
- 1) Let MIDI import plugin use separate automation tracks instead of global ones (DONE #5223, #6605)
- 2) Write an upgrade logic that removes global automation patterns from project files and replaces them with normal automation tracks (DONE #5229)
- 3) Remove any related GUI menus (in progress #5230)
- 4) Remove the feature if needed