also includes a few additional tweaks on top of the revert:
don't set sessions to windows managed by the WM::Manager,
and also call WM::Manager's set_session (s); when closing session.
The window proxy defers construction of classes.
set_session() is called before the instances are available.
the proxy-manager only calls set_session() for SessionHandlePtr
but not the class-specific method..
fixes http://tracker.ardour.org/view.php?id=5566
Call set_session() on the location window from ARDOUR_UI::set_session(),
and show_all() on the location window's LocationUI in set_session,
so that it displays the markers and ranges of the current session.
* move color-regions-using-track color into UI config, not RC config
* consolidate all waveform coloring into AudioRegionView::set_one_waveform_color()
Mostly this just involved removing the private CacheEntry class that really served no further purpose once
the design reverted to a single cached image
note: the solution is non-obvious, but the obvious one of applying a translational Cairo::Matrix to the gradient
caused an exception to be thrown because of a non-invertible matrix.
Make download of sound files multi-threaded. Each sound file download takes
place in its own thread, and has its own progress bar and cancel button,
which stack up from the bottom of the list of results.
Sound files download into a file with a '.part' suffix, which is then
renamed to the intended name on success.
Add a 'Similar' button, which searches Freesound for sounds similar to the
currently-selected sound in the results list.
Add a freesound-download-dir config variable to decide the location
of sound files downloaded from Freesound.
Move Windows-specific logic to replace '/'s with '\'s from
Mootcher::changeWorkingDir() to Mootcher::ensureWorkingDir(), and remove
the now unused Mootcher::changeWorkingDir().
Use Glib::build_filename to construct paths.