diff --git a/src/tools/ecode/appconfig.cpp b/src/tools/ecode/appconfig.cpp index ddd291047..0a89a4fd4 100644 --- a/src/tools/ecode/appconfig.cpp +++ b/src/tools/ecode/appconfig.cpp @@ -117,7 +117,7 @@ void AppConfig::load( const std::string& confPath, std::string& keybindingsPath, ui.showStatusBar = ini.getValueB( "ui", "show_status_bar", true ); ui.showMenuBar = ini.getValueB( "ui", "show_menu_bar", false ); ui.welcomeScreen = ini.getValueB( "ui", "welcome_screen", true ); - ui.singleInstance = ini.getValueB( "ui", "single_instance", true ); + ui.openFilesInNewWindow = ini.getValueB( "ui", "open_files_in_new_window", false ); ui.panelPosition = panelPositionFromString( ini.getValue( "ui", "panel_position", "left" ) ); ui.serifFont = ini.getValue( "ui", "serif_font", "fonts/NotoSans-Regular.ttf" ); ui.monospaceFont = ini.getValue( "ui", "monospace_font", "fonts/DejaVuSansMono.ttf" ); @@ -275,7 +275,7 @@ void AppConfig::save( const std::vector& recentFiles, ini.setValueB( "ui", "show_status_bar", ui.showStatusBar ); ini.setValueB( "ui", "show_menu_bar", ui.showMenuBar ); ini.setValueB( "ui", "welcome_screen", ui.welcomeScreen ); - ini.setValueB( "ui", "single_instance", ui.singleInstance ); + ini.setValueB( "ui", "open_files_in_new_window", ui.openFilesInNewWindow ); ini.setValue( "ui", "panel_position", panelPositionToString( ui.panelPosition ) ); ini.setValue( "ui", "serif_font", ui.serifFont ); ini.setValue( "ui", "monospace_font", ui.monospaceFont ); diff --git a/src/tools/ecode/appconfig.hpp b/src/tools/ecode/appconfig.hpp index 5774ca87f..6910ba1aa 100644 --- a/src/tools/ecode/appconfig.hpp +++ b/src/tools/ecode/appconfig.hpp @@ -33,7 +33,7 @@ struct UIConfig { bool showStatusBar{ true }; bool showMenuBar{ false }; bool welcomeScreen{ true }; - bool singleInstance{ true }; + bool openFilesInNewWindow{ false }; PanelPosition panelPosition{ PanelPosition::Left }; std::string serifFont; std::string monospaceFont; diff --git a/src/tools/ecode/ecode.cpp b/src/tools/ecode/ecode.cpp index a7a6570df..43a9a6671 100644 --- a/src/tools/ecode/ecode.cpp +++ b/src/tools/ecode/ecode.cpp @@ -3084,7 +3084,7 @@ FontTrueType* App::loadFont( const std::string& name, std::string fontPath, } bool App::needsRedirectToRunningProcess( std::string file ) { - if ( !mConfig.ui.singleInstance || file.empty() ) + if ( mConfig.ui.openFilesInNewWindow || file.empty() ) return false; bool hasPosition = pathHasPosition( file ); diff --git a/src/tools/ecode/settingsmenu.cpp b/src/tools/ecode/settingsmenu.cpp index 60a66c33f..89841fd50 100644 --- a/src/tools/ecode/settingsmenu.cpp +++ b/src/tools/ecode/settingsmenu.cpp @@ -1170,13 +1170,12 @@ UIMenu* SettingsMenu::createWindowMenu() { mWindowMenu->addSeparator(); mWindowMenu - ->addCheckBox( i18n( "single_instance_enable", "Enable Single Instance" ), - mApp->getConfig().ui.singleInstance ) - ->setTooltipText( - i18n( "single_instance_desc", - "Newly opened files will be opened in the latest opened ecode instance." ) ) - ->setId( "single-instance-enable" ); - + ->addCheckBox( i18n( "open_files_in_new_window_enable", "Open Files in New Window" ), + mApp->getConfig().ui.openFilesInNewWindow ) + ->setTooltipText( i18n( "open_files_in_new_window_desc", + "When files are opened from a file explorer or from the command " + "line, this\ncontrols whether a new window is created or not." ) ) + ->setId( "open-files-in-new-window-enable" ); mWindowMenu ->addCheckBox( i18n( "welcome_screen_enable", "Enable Welcome Screen" ), mApp->getConfig().ui.welcomeScreen ) @@ -1195,9 +1194,9 @@ UIMenu* SettingsMenu::createWindowMenu() { } else if ( "welcome-screen-enable" == item->getId() ) { bool active = item->asType()->isActive(); mApp->getConfig().ui.welcomeScreen = active; - } else if ( "single-instance-enable" == item->getId() ) { + } else if ( "open-files-in-new-window-enable" == item->getId() ) { bool active = item->asType()->isActive(); - mApp->getConfig().ui.singleInstance = active; + mApp->getConfig().ui.openFilesInNewWindow = active; mApp->saveConfig(); } else { String text = String( event->getNode()->asType()->getId() ).toLower();