diff --git a/ui-sequencer.cc b/ui-sequencer.cc index d1aafd3..a0cb01d 100644 --- a/ui-sequencer.cc +++ b/ui-sequencer.cc @@ -1643,16 +1643,19 @@ void T_SyncViewImpl_::displayOverrideSelector( ) noexcept BeginChild( "content" ); Common::Sync( ).visitOverrides( [&]( T_SyncOverrideVisitor::T_Element element , const bool exit ) { if ( element.hasType< T_SyncOverrideSection* >( ) ) { - auto const& sos{ *element.value< T_SyncOverrideSection* >( ) }; + auto& sos{ *element.value< T_SyncOverrideSection* >( ) }; if ( sos.title == "*root*" ) { return true; } if ( exit ) { - TreePop( ); + if ( sos.open ) { + TreePop( ); + } return true; } - return TreeNodeEx( &sos.cTitle[ 0 ] , + sos.open = TreeNodeEx( &sos.cTitle[ 0 ] , ImGuiTreeNodeFlags_DefaultOpen ); + return sos.open; } if ( ! exit ) { return false;