Changing solo-state needs to be done in rt-context to atomically
propagate solo/mute.
set_control() queues a rt-event, later Session::rt_set_control() calls
Session::update_route_solo_state() to propagate solo/mute.
Allow to run both Ardour 5.5 and later (changed bindings name)
with the same config folder.
Like with .color files, custom .keys files won't be taken into account
when updating to a new version.
This is mostly a stopgap solution. Eventually we'll have to come up with a
merge&prune mechanism for bindings or maintain a separate version for
these files. Hopefully some better idea will come up...
Skip master bus' order-key when re-ordering routes in the mixer.
This also fixes a related issue:
When a new track is added, Session::RouteAdded will call be handled by
Editor::add_routes AND Mixer_UI::add_routes, leading to calls to both:
- EditorRoutes::sync_presentation_info_from_treeview()
- Mixer_UI::sync_presentation_info_from_treeview ()
which potentially set different order-keys.
This fixes an issue with Session > Snapshot & switch, not updating
the widow title to the new snapshot (and probably some other edge cases
where it was possible for a detached editor and main window to
have different titles).
The main UI now updates the window-title like the Editor on StateSaved.
(it may lead to dup updates with DirtyChanged, c'est la vie)
There are still problems because actions like trim_front()
that use the edit point get the edit point with different
results than the code that sensitizes actions
- save mode separately for Editor-sidebar and Location Window
- cache mode (multiple calls to set_session())
- fix restore: after creating the editor, instant_save() is called,
potentially overwriting the previous value.
Both views have uncorrelated geometry, apply one size to the other
makes no sense and usually results in odd window sizes, particularly
for custom plugin UIs with aspect-ratio constraints.
This does not modify the editor treeview/treemodel at all
but instead works directly on the PresentationInfo order
data. Likely needs more testing etc.