ardour.git
9 years agoAdd a small dummy command to a couple of MSVC build projects
John Emmas [Sat, 8 Nov 2014 18:47:25 +0000 (18:47 +0000)]
Add a small dummy command to a couple of MSVC build projects

These are trivial (no-op) fudges - to ensure that if we can't copy the built executable for whatever reason, it won't get flagged up as a build failure.

9 years agoAdd some newly introduced source files to our MSVC project (cairocanvas)
John Emmas [Sat, 8 Nov 2014 10:48:26 +0000 (10:48 +0000)]
Add some newly introduced source files to our MSVC project (cairocanvas)

9 years agoJust rename problematic Variant::VOID type.
David Robillard [Fri, 7 Nov 2014 22:21:43 +0000 (17:21 -0500)]
Just rename problematic Variant::VOID type.

9 years agouse new canvas colors header as necessary
Paul Davis [Fri, 7 Nov 2014 19:24:27 +0000 (14:24 -0500)]
use new canvas colors header as necessary

9 years agomove canvas colors code into its own file(s)
Paul Davis [Fri, 7 Nov 2014 19:24:13 +0000 (14:24 -0500)]
move canvas colors code into its own file(s)

9 years agoremove TimeAxisViewItem::RIGHT_EDGE_SHIFT; fix up x-coordinate for right edge of...
Paul Davis [Fri, 7 Nov 2014 17:58:46 +0000 (12:58 -0500)]
remove TimeAxisViewItem::RIGHT_EDGE_SHIFT; fix up x-coordinate for right edge of an audio fade out

9 years agosimplify removal of outline from streamview base rect
Paul Davis [Fri, 7 Nov 2014 17:58:10 +0000 (12:58 -0500)]
simplify removal of outline from streamview base rect

9 years agosimplify removal of outline from automation time axis base rect
Paul Davis [Fri, 7 Nov 2014 17:57:43 +0000 (12:57 -0500)]
simplify removal of outline from automation time axis base rect

9 years agofix up dimensions of ghostregion colored rect
Paul Davis [Fri, 7 Nov 2014 17:57:22 +0000 (12:57 -0500)]
fix up dimensions of ghostregion colored rect

9 years agowhen drawing only part of a Canvas::Rectangle outline, we only need to do the cairo...
Paul Davis [Fri, 7 Nov 2014 17:56:45 +0000 (12:56 -0500)]
when drawing only part of a Canvas::Rectangle outline, we only need to do the cairo-pixel alignment math for the axis perpendicular to the edge

9 years agodon't created vestigial frame canvas item for TimeAxisViewItem unless actually needed.
Paul Davis [Fri, 7 Nov 2014 13:35:26 +0000 (08:35 -0500)]
don't created vestigial frame canvas item for TimeAxisViewItem unless actually needed.

They don't cost very much but there's just really no point cluttering up the scene graph with generally invisible
and insensitive items

9 years agoVOID is a windows define (not MSVC specific)
Robin Gareus [Fri, 7 Nov 2014 16:04:11 +0000 (17:04 +0100)]
VOID is a windows define (not MSVC specific)

9 years agotentative fix for canvas background/image surface
Robin Gareus [Fri, 7 Nov 2014 15:50:21 +0000 (16:50 +0100)]
tentative fix for canvas background/image surface

9 years agoanother hack for windows timers, DSP load calculation
Robin Gareus [Fri, 7 Nov 2014 11:17:15 +0000 (12:17 +0100)]
another hack for windows timers, DSP load calculation

9 years agoadd API to extract color from ArdourCanvas::Text and tidy up member declarations
Paul Davis [Fri, 7 Nov 2014 01:33:29 +0000 (20:33 -0500)]
add API to extract color from ArdourCanvas::Text and tidy up member declarations

Conflicts:
libs/canvas/canvas/text.h

9 years agochanging the clamp_width of an ArdourCanvas::Text needs to potentially provoke an...
Paul Davis [Fri, 7 Nov 2014 01:33:01 +0000 (20:33 -0500)]
changing the clamp_width of an ArdourCanvas::Text needs to potentially provoke an entire redraw

This fixes missing range marker text in sessions where the initial zoom value causes an initial clamp_width of zero

9 years agopossible fix for DSP load calculation on windows
Robin Gareus [Thu, 6 Nov 2014 16:24:32 +0000 (17:24 +0100)]
possible fix for DSP load calculation on windows

9 years agoraising/lowering canvas items should trigger a redraw
Paul Davis [Thu, 6 Nov 2014 15:53:48 +0000 (10:53 -0500)]
raising/lowering canvas items should trigger a redraw

9 years agoadd a selection frame to TimeAxisViewItem along with a slew of other height/positiona...
Paul Davis [Thu, 6 Nov 2014 00:45:17 +0000 (19:45 -0500)]
add a selection frame to TimeAxisViewItem along with a slew of other height/positional fixes

9 years agovarious positional fixes for TimeAxisView, including moving the separator line to...
Paul Davis [Thu, 6 Nov 2014 00:44:44 +0000 (19:44 -0500)]
various positional fixes for TimeAxisView, including moving the separator line to the bottom, and keeping it in the same coordinate space as the TAV group

9 years agostreamview no longer outlines any part of its canvas rect (we leave that to time...
Paul Davis [Wed, 5 Nov 2014 22:12:18 +0000 (17:12 -0500)]
streamview no longer outlines any part of its canvas rect (we leave that to time axis view separators)

Also remove commented "- 1.0" adjustments that were already commented

9 years agocorrect the rendering of Rectangle outlines, and the computation of their bounding box
Paul Davis [Wed, 5 Nov 2014 21:57:37 +0000 (16:57 -0500)]
correct the rendering of Rectangle outlines, and the computation of their bounding box

9 years agoadd Rect::shrink(Distance) even though it arguably should be handled by Rect::expand()
Paul Davis [Wed, 5 Nov 2014 21:56:45 +0000 (16:56 -0500)]
add Rect::shrink(Distance) even though it arguably should be handled by Rect::expand()

9 years agoadd some more outline enums to ArdourCanvas::Rectangle
Paul Davis [Wed, 5 Nov 2014 21:56:02 +0000 (16:56 -0500)]
add some more outline enums to ArdourCanvas::Rectangle

9 years agoallow derived classes to access Item::{scroll,position}_offset(), mostly for debuggin...
Paul Davis [Wed, 5 Nov 2014 21:54:46 +0000 (16:54 -0500)]
allow derived classes to access Item::{scroll,position}_offset(), mostly for debugging purposes

9 years agocatch up with waves/tracks version of MIDI scene changer code
Paul Davis [Wed, 5 Nov 2014 18:14:10 +0000 (13:14 -0500)]
catch up with waves/tracks version of MIDI scene changer code

9 years agoalter implementation of ArdourCanvas::contrasting_text_color() to use gamma-adjusted...
Paul Davis [Wed, 5 Nov 2014 16:07:20 +0000 (11:07 -0500)]
alter implementation of ArdourCanvas::contrasting_text_color() to use gamma-adjusted luminance values rather than simple contrast

9 years agoadd ArdourCanvas::Fill::set_pattern() to allow any filled canvas item to be filled...
Paul Davis [Fri, 19 Sep 2014 20:21:19 +0000 (16:21 -0400)]
add ArdourCanvas::Fill::set_pattern() to allow any filled canvas item to be filled using an arbitrary Cairo Pattern

9 years agofix insane design for Location::next_available_name() so that it has no effective...
Paul Davis [Wed, 5 Nov 2014 12:40:35 +0000 (07:40 -0500)]
fix insane design for Location::next_available_name() so that it has no effective limit (other than UINT32_MAX)

9 years agopermit initial contents of a FloatingTextEntry
Paul Davis [Wed, 5 Nov 2014 12:08:17 +0000 (07:08 -0500)]
permit initial contents of a FloatingTextEntry

9 years agoAdd some newly introduced header files to our MSVC project (libs/ardour)
John Emmas [Tue, 4 Nov 2014 15:44:27 +0000 (15:44 +0000)]
Add some newly introduced header files to our MSVC project (libs/ardour)

9 years agoAdd some newly introduced source files to our MSVC project (gtk2_ardour)
John Emmas [Tue, 4 Nov 2014 15:43:32 +0000 (15:43 +0000)]
Add some newly introduced source files to our MSVC project (gtk2_ardour)

9 years agoWhen building with MSVC undef type VOID if we're declaring an enum called VOID
John Emmas [Tue, 4 Nov 2014 15:42:04 +0000 (15:42 +0000)]
When building with MSVC undef type VOID if we're declaring an enum called VOID

9 years agoModify 'msvc32-fixup.pl' for building the VST scanner app resources
John Emmas [Tue, 4 Nov 2014 13:09:48 +0000 (13:09 +0000)]
Modify 'msvc32-fixup.pl' for building the VST scanner app resources

9 years agoWhen building with MSVC, guard a declaration of 'strdup()' which conflicts slightly...
John Emmas [Tue, 4 Nov 2014 13:08:00 +0000 (13:08 +0000)]
When building with MSVC, guard a declaration of 'strdup()' which conflicts slightly with the MSVC declaration

(maybe we should just #include <string.h> ?)

9 years agoRemove an unneeded icon when building the VST scanner app with MSVC
John Emmas [Tue, 4 Nov 2014 13:02:27 +0000 (13:02 +0000)]
Remove an unneeded icon when building the VST scanner app with MSVC

9 years agoWhen running an (MSVC built) VST scanner app, make sure we can utilise debuggable...
John Emmas [Tue, 4 Nov 2014 12:41:04 +0000 (12:41 +0000)]
When running an (MSVC built) VST scanner app, make sure we can utilise debuggable versions if we need to

9 years agoAdd some new modules, needed for building the VST scanner app with MSVC
John Emmas [Tue, 4 Nov 2014 12:36:50 +0000 (12:36 +0000)]
Add some new modules, needed for building the VST scanner app with MSVC

9 years ago(gtk2_ardour) Remove the reliance on libfst, which we no longer build
John Emmas [Tue, 4 Nov 2014 12:30:07 +0000 (12:30 +0000)]
(gtk2_ardour) Remove the reliance on libfst, which we no longer build

(fst's functionality has now mostly been moved into libardour)

9 years agouse ArdourCanvas::TimeRectangle for regions, notes, markers
Paul Davis [Tue, 4 Nov 2014 02:48:02 +0000 (21:48 -0500)]
use ArdourCanvas::TimeRectangle for regions, notes, markers

9 years agoadd new TimeRectangle to ArdourCanvas
Paul Davis [Tue, 4 Nov 2014 02:33:54 +0000 (21:33 -0500)]
add new TimeRectangle to ArdourCanvas

9 years agomove start of a time axis view back to 0.0 on the x-axis, not 1.0
Paul Davis [Tue, 4 Nov 2014 02:33:27 +0000 (21:33 -0500)]
move start of a time axis view back to 0.0 on the x-axis, not 1.0

9 years agoUse format string even for units we understand (print Hz units).
David Robillard [Tue, 4 Nov 2014 01:52:14 +0000 (20:52 -0500)]
Use format string even for units we understand (print Hz units).

9 years agoCheck whether frequency controls are audible or low and provide appropriate controls.
David Robillard [Mon, 3 Nov 2014 23:41:57 +0000 (18:41 -0500)]
Check whether frequency controls are audible or low and provide appropriate controls.
Always clamp set value to controller range.

9 years agoFix parameter descriptors for one control leaking into another.
David Robillard [Mon, 3 Nov 2014 23:40:17 +0000 (18:40 -0500)]
Fix parameter descriptors for one control leaking into another.

9 years agoAdd menu to set frequency controls in beats, and half or double current value.
David Robillard [Mon, 3 Nov 2014 22:29:11 +0000 (17:29 -0500)]
Add menu to set frequency controls in beats, and half or double current value.

Test with e.g. fomp:cs_phaser1_lfo LFO frequency.

9 years agoNote selector dialog for note controls.
David Robillard [Mon, 3 Nov 2014 21:37:19 +0000 (16:37 -0500)]
Note selector dialog for note controls.

9 years agoReduce coupling between Plugin and PluginInsert.
David Robillard [Mon, 3 Nov 2014 18:40:50 +0000 (13:40 -0500)]
Reduce coupling between Plugin and PluginInsert.

9 years agoFix compilation with old LV2. Maybe.
David Robillard [Mon, 3 Nov 2014 16:54:35 +0000 (11:54 -0500)]
Fix compilation with old LV2.  Maybe.

9 years agoShow 3 decimal digits when printing values.
David Robillard [Sun, 2 Nov 2014 23:47:22 +0000 (18:47 -0500)]
Show 3 decimal digits when printing values.

9 years agoFix crash when showing UI for plugins with output control ports.
David Robillard [Sun, 2 Nov 2014 18:02:54 +0000 (13:02 -0500)]
Fix crash when showing UI for plugins with output control ports.

9 years agorepropagate button press event outside of FloatingTextEntry so that the click is...
Paul Davis [Sun, 2 Nov 2014 16:25:31 +0000 (11:25 -0500)]
repropagate button press event outside of FloatingTextEntry so that the click is still effective, as well as terminating the edit

9 years agouse modal grab and event_is_inside_widget_window() to provide "expected" behaviour...
Paul Davis [Sun, 2 Nov 2014 13:54:51 +0000 (08:54 -0500)]
use modal grab and event_is_inside_widget_window() to provide "expected" behaviour when editing in a FloatingTextEntry

9 years agoslightly increased debugging output for -D accelerators
Paul Davis [Sun, 2 Nov 2014 13:54:12 +0000 (08:54 -0500)]
slightly increased debugging output for -D accelerators

9 years agoadd Gtkmm2ext::event_inside_widget_window()
Paul Davis [Sun, 2 Nov 2014 13:53:29 +0000 (08:53 -0500)]
add Gtkmm2ext::event_inside_widget_window()

9 years agoSupport pretty display of arbitrary plugin parameter units.
David Robillard [Sun, 2 Nov 2014 06:59:18 +0000 (01:59 -0500)]
Support pretty display of arbitrary plugin parameter units.

Try e.g. fomp:cs_chorus1 which has Hz and ms controls.

9 years agoDisplay gain and midiNote plugin parameters/properties nicely.
David Robillard [Sun, 2 Nov 2014 06:29:33 +0000 (01:29 -0500)]
Display gain and midiNote plugin parameters/properties nicely.
Show fancy values on generic GUI controls, automation lane controls, and automation lane verbose cursor.
Fix text display of midiNote values.
Make bigstep of midiNote parameters 12 (one octave).
Add ARDOUR::value_as_string() as a stateless one-stop-shop for value printing.

9 years agoAutomation of LV2 plugin properties.
David Robillard [Sun, 2 Nov 2014 03:29:10 +0000 (23:29 -0400)]
Automation of LV2 plugin properties.

Work towards ParameterDescriptor being used more universally to describe control characteristics.

9 years agoMove ParameterDescriptor from Plugin to its own header.
David Robillard [Sat, 1 Nov 2014 03:48:27 +0000 (23:48 -0400)]
Move ParameterDescriptor from Plugin to its own header.

This fixes circular dependency issues that arise when using ParameterDescriptor more widely.

9 years agoDecouple ControlUI from port index.
David Robillard [Sat, 1 Nov 2014 02:20:24 +0000 (22:20 -0400)]
Decouple ControlUI from port index.

9 years agoDon't complain about properties with plugins that do not support them.
David Robillard [Sat, 1 Nov 2014 02:17:30 +0000 (22:17 -0400)]
Don't complain about properties with plugins that do not support them.

9 years agoproperly initialize variable (amend cffd18d2d84)
Robin Gareus [Sun, 2 Nov 2014 01:50:28 +0000 (02:50 +0100)]
properly initialize variable (amend cffd18d2d84)

9 years agoone off by one off - red-selection outline
Robin Gareus [Sat, 1 Nov 2014 20:05:43 +0000 (21:05 +0100)]
one off by one off - red-selection outline

This mitigates issues introduced with 3.5-3406-g90872c2
but is not a final solution. The x-axis is still broken.
see #5589 comment0015955

9 years agoNOOP, just whitespace/indenting
Robin Gareus [Sat, 1 Nov 2014 17:24:47 +0000 (18:24 +0100)]
NOOP, just whitespace/indenting

9 years agoimplement spin-button internal<>interface bridge
Robin Gareus [Sat, 1 Nov 2014 17:24:31 +0000 (18:24 +0100)]
implement spin-button internal<>interface bridge

Widgets were written to use "[User] Interface" values, but the
spinbutton in a Bar-controller should allow to directly access
the "Internal Value".

9 years agoSlider Controller API Change
Robin Gareus [Sat, 1 Nov 2014 17:22:29 +0000 (18:22 +0100)]
Slider Controller API Change

Prepare to allow BarController (with Spinbutton) to translate
internal/interface values for the SpinBox.

(The change is irrelevant for the fader/slider itself which
always use the [user-]interface value)

9 years agoretain selection on track-height change
Robin Gareus [Sat, 1 Nov 2014 15:48:22 +0000 (16:48 +0100)]
retain selection on track-height change

9 years agoAdd some newly introduced source files to our MSVC project (gtk2_ardour)
John Emmas [Sat, 1 Nov 2014 13:54:39 +0000 (13:54 +0000)]
Add some newly introduced source files to our MSVC project (gtk2_ardour)

9 years agoAdd a newly introduced header file to our MSVC project (libardour)
John Emmas [Sat, 1 Nov 2014 13:53:55 +0000 (13:53 +0000)]
Add a newly introduced header file to our MSVC project (libardour)

9 years agodon't print error when announcing property values for plugins that have none
Robin Gareus [Sat, 1 Nov 2014 06:27:16 +0000 (07:27 +0100)]
don't print error when announcing property values for plugins that have none

9 years agoincrease fine grained control (Ctrl+Alt+[drag|scroll])
Robin Gareus [Sat, 1 Nov 2014 06:26:25 +0000 (07:26 +0100)]
increase fine grained control (Ctrl+Alt+[drag|scroll])

9 years agoconvert interface <> internal values for all automation
Robin Gareus [Sat, 1 Nov 2014 06:25:47 +0000 (07:25 +0100)]
convert interface <> internal values for all automation

fixes Send-Fader, Gain-Automation and various Plugin-Slider ranges

9 years agoFix compilation against older LV2.
David Robillard [Sat, 1 Nov 2014 01:03:12 +0000 (21:03 -0400)]
Fix compilation against older LV2.

9 years agoMore generic RT-safe implementation of LV2 properties.
David Robillard [Sat, 1 Nov 2014 00:44:02 +0000 (20:44 -0400)]
More generic RT-safe implementation of LV2 properties.

9 years agoUse precise define names for LV2 version configure checks.
David Robillard [Sat, 1 Nov 2014 00:22:57 +0000 (20:22 -0400)]
Use precise define names for LV2 version configure checks.

9 years agoFix spelling error.
David Robillard [Fri, 31 Oct 2014 07:29:26 +0000 (03:29 -0400)]
Fix spelling error.

9 years agoRemove unused variable.
David Robillard [Fri, 31 Oct 2014 07:27:34 +0000 (03:27 -0400)]
Remove unused variable.

9 years agofix Dummy DSP load on win32 & low-pass filter load
Robin Gareus [Fri, 31 Oct 2014 21:51:47 +0000 (22:51 +0100)]
fix Dummy DSP load on win32 & low-pass filter load

g_get_monotonic_time() has millisecond granularity,
use performance Counter if available

9 years agoLV2 patch amends:
Robin Gareus [Fri, 31 Oct 2014 18:41:58 +0000 (19:41 +0100)]
LV2 patch amends:

* fix Label (user readable key)
* check if patch range is a file Path
* free some lilv-nodes (plug small mem leak)

9 years agoadd new floating text entry class (ported from Tracks)
Paul Davis [Fri, 31 Oct 2014 16:26:57 +0000 (12:26 -0400)]
add new floating text entry class (ported from Tracks)

9 years agomore changes for rectangle outlining
Paul Davis [Fri, 31 Oct 2014 14:56:03 +0000 (10:56 -0400)]
more changes for rectangle outlining

9 years agocomment fix and expansion re: Canvas::Rectangle outline
Paul Davis [Thu, 30 Oct 2014 13:05:27 +0000 (09:05 -0400)]
comment fix and expansion re: Canvas::Rectangle outline

9 years agoplug memory leak
Robin Gareus [Fri, 31 Oct 2014 05:02:32 +0000 (06:02 +0100)]
plug memory leak

9 years agoprototype [LV2]patch-change support for generic plugin UIs.
Robin Gareus [Fri, 31 Oct 2014 02:26:47 +0000 (03:26 +0100)]
prototype [LV2]patch-change support for generic plugin UIs.

9 years agofix "Session Setup" dialog obscures "File Open" dlg on windows.
Robin Gareus [Wed, 29 Oct 2014 22:05:46 +0000 (23:05 +0100)]
fix "Session Setup" dialog obscures "File Open" dlg on windows.

9 years agoAdd support for USE_CAIRO_IMAGE_SURFACE when building with MSVC
John Emmas [Wed, 29 Oct 2014 17:33:56 +0000 (17:33 +0000)]
Add support for USE_CAIRO_IMAGE_SURFACE when building with MSVC

(new preprocessor directive - greatly improves CPU loading)

9 years agofix typo in 58fec98a
Robin Gareus [Wed, 29 Oct 2014 17:31:13 +0000 (18:31 +0100)]
fix typo in 58fec98a

the documentation was correct: “GTK+ uses G_PRIORITY_HIGH_IDLE + 10
for resizing operations, and G_PRIORITY_HIGH_IDLE + 20 for redrawing
operations.”  but the priority for the idle visual changer was wrong.

fixes, follow-playhead and zoom/scrolling under load (no idle)

9 years agoredraw summary when theme preference changes & consolidate code.
Robin Gareus [Wed, 29 Oct 2014 15:07:13 +0000 (16:07 +0100)]
redraw summary when theme preference changes & consolidate code.

9 years agoKind of Blue
Robin Gareus [Wed, 29 Oct 2014 05:37:20 +0000 (06:37 +0100)]
Kind of Blue

9 years agofix vertical canvas scrolling
Robin Gareus [Wed, 29 Oct 2014 05:35:55 +0000 (06:35 +0100)]
fix vertical canvas scrolling

 * properly account for hidden tracks
 * allow to scroll to last track

9 years agofix summary display (offset on-canvas rulers)
Robin Gareus [Wed, 29 Oct 2014 04:43:38 +0000 (05:43 +0100)]
fix summary display (offset on-canvas rulers)

9 years agofix summary re-size
Robin Gareus [Wed, 29 Oct 2014 04:41:58 +0000 (05:41 +0100)]
fix summary re-size

w/USE_CAIRO_IMAGE_SURFACE

9 years agougly hacks to make the peak display widget not act like a text entry widget. This...
Paul Davis [Wed, 29 Oct 2014 00:30:57 +0000 (20:30 -0400)]
ugly hacks to make the peak display widget not act like a text entry widget. This should die.

9 years agoRevert "change the peak display widget from Gtkmm2ext::FocusEntry to ArdourButton...
Paul Davis [Tue, 28 Oct 2014 14:12:01 +0000 (10:12 -0400)]
Revert "change the peak display widget from Gtkmm2ext::FocusEntry to ArdourButton, since it is absolutely not editable."

This reverts commit 58f7d02bf21776f7537ac16ae41646859dbca0b1.

Conflicts:
gtk2_ardour/default_ui_config.in
gtk2_ardour/gain_meter.cc

9 years agodon't show x-fade menu when right-clicking on frame handles
Robin Gareus [Tue, 28 Oct 2014 15:43:45 +0000 (16:43 +0100)]
don't show x-fade menu when right-clicking on frame handles

Fix crash with midi-regions (they have a frame-handle but no x-fade).
fixes 2nd part of #5992 (backtrace 20141021-B)

This is nicer in one way: When the cursor is "trim" the x-fade
context menu is no longer accessible.
And a bit worse: The x-fade context menu is only accessible on the
small fade-handles (boxes) and on the x-fade itself.

9 years agoadd win IRC channel
Robin Gareus [Tue, 28 Oct 2014 01:40:04 +0000 (02:40 +0100)]
add win IRC channel

9 years agoturn pixfader into a cairowidget
Robin Gareus [Tue, 28 Oct 2014 01:18:46 +0000 (02:18 +0100)]
turn pixfader into a cairowidget

9 years agoallow to use cairo-image/software surface for canvas & cairowidgets
Robin Gareus [Tue, 28 Oct 2014 01:15:10 +0000 (02:15 +0100)]
allow to use cairo-image/software surface for canvas & cairowidgets

9 years agoremove unused old API
Robin Gareus [Tue, 28 Oct 2014 00:27:14 +0000 (01:27 +0100)]
remove unused old API

9 years agofix potential crash at session close (when port-matrix is visible)
Robin Gareus [Mon, 27 Oct 2014 20:15:39 +0000 (21:15 +0100)]
fix potential crash at session close (when port-matrix is visible)

remove_aux_or_listen() -> PortMatrix::route_processors_changed()
-> setup_global_ports() -> PortGroupList::gather() -> crash
if some session ports were already removed.