diff --git a/src/tools/ecode/ecode.cpp b/src/tools/ecode/ecode.cpp index e7886f994..8033d76fe 100644 --- a/src/tools/ecode/ecode.cpp +++ b/src/tools/ecode/ecode.cpp @@ -1452,6 +1452,17 @@ void App::closeEditors() { break; }; + std::vector terminals; + mSplitter->forEachWidgetType( UI_TYPE_TERMINAL, [&terminals]( UIWidget* widget ) { + terminals.push_back( widget->asType() ); + } ); + + for ( UITerminal* terminal : terminals ) { + UITabWidget* tabWidget = mSplitter->tabWidgetFromWidget( terminal ); + if ( tabWidget ) + tabWidget->removeTab( (UITab*)terminal->getData(), true, true ); + } + mCurrentProject = ""; mDirTree = nullptr; if ( mFileSystemListener )