Some analysis... MatrixWidget::m_segmentLabel appears to be the widget that shows the segment name. MatrixWidget::updateSegmentChangerBackground() appears to be the routine that sets the name. CompositionModelImpl::getSegmentRect() appears to add the L(x) string to the segment (on the main window's segment canvas) at display time. Is it the L(x) string that appears on the segments on the main window that you want added to the matrix?
XRun issues have moved to [#1797].
The XRuns also happen if Ardour moves the transport. E.g. by hovering over Ardour's canvas and pressing "P".
That fixed the XRuns for starting playback. Now I see XRuns in three cases: Rewind (PgUp) during playback. Fast Forward (PgDn) during playback. Rewind to beginning (Home) during playback. There might also be XRuns for Fast Forward to End (End) during playback, but I have looping on, so it ends up being a rewind to beginning. We might need to test End given various looping modes to see if there are any specific problems there. It's always a set of three XRuns so I assume we missed our deadline three...
OK I have a new version on my bug-1798-jack-transport-xruns branch (sorry about the wrong bug number).
Pushed Philip's latest as [77701c]. Please test latest git.
Is it possible to go back to the old version Users can just go back to the old JACK transport logic if they run into issues. Keep moving forward at your own pace. Feels like you're really close. Worst case if this ends up being a mess (which I'm sure it won't) we can default to old logic for 26.12.
[591412] has introduced a new issue. rg doesn't always respond to playback from JACK transport. Procedure: Launch Ardour and sync to JACK transport. Launch rg, sync to JACK transport using new logic. In Ardour, start and stop playback repeatedly. (Spacebar is easiest.) Confirm that rg starts and stops every time Ardour starts and stops. For me, rg seems to start playback less than 50% of the time.