You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -232,16 +232,17 @@ class NiMidiSurface: public BaseSurface {
232
232
// SetSurfaceSelected() is less economical because it will be called multiple times (also for unselecting tracks).
233
233
// However, SetSurfaceSelected() is the more robust choice because of: https://forum.cockos.com/showpost.php?p=2138446&postcount=15
234
234
235
-
// Note: SetSurfaceSelected is also called on project tab change
235
+
// Note: SetSurfaceSelected is also called on project tab change or when record arming. However, <selected> will only be true if a track selection has changed.
236
236
this->_metronomeUpdate(); //check if metronome status has changed when switching project tabs
237
+
// Track selection has changed:
237
238
if (selected) {
238
239
int id = CSurf_TrackToID(track, false);
239
240
int numInBank = id % BANK_NUM_TRACKS;
240
241
int oldBankStart = this->_bankStart;
241
242
this->_bankStart = id - numInBank;
242
243
if (this->_bankStart != oldBankStart) {
243
244
// Update everything
244
-
this->_allMixerUpdate();
245
+
this->_allMixerUpdate();// Note: this will also update the g_muteStateBank and g_soloStateBank caches
245
246
}
246
247
else {
247
248
// Update track names
@@ -255,6 +256,12 @@ class NiMidiSurface: public BaseSurface {
0 commit comments