ecode: Minor fixes.

This commit is contained in:
Martín Lucas Golini
2023-04-10 12:02:20 -03:00
parent f3e98ba745
commit 5632caa5ff
9 changed files with 39 additions and 5 deletions

View File

@@ -1477,6 +1477,12 @@ void App::onCodeEditorFocusChange( UICodeEditor* editor ) {
void App::onColorSchemeChanged( const std::string& ) {
mSettings->updateColorSchemeMenu();
mGlobalSearchController->updateColorScheme( mSplitter->getCurrentColorScheme() );
if ( mStatusBuildOutputController && mStatusBuildOutputController->getContainer() ) {
mStatusBuildOutputController->getContainer()->setColorScheme(
mSplitter->getCurrentColorScheme() );
}
mNotificationCenter->addNotification(
String::format( i18n( "color_scheme_set", "Color scheme: %s" ).toUtf8().c_str(),
mSplitter->getCurrentColorScheme().getName().c_str() ) );

View File

@@ -159,7 +159,11 @@ void FormatterPlugin::loadFormatterConfig( const std::string& path, bool updateC
Log::error( "FormatterPlugin::loadFormatterConfig - Error parsing formatter config from "
"path %s, error: ",
path.c_str(), e.what() );
return;
if ( !updateConfigFile )
return;
// Recreate it
j = json::parse( "{\n \"config\":{},\n \"keybindings\":{},\n \"formatters\":[]\n}\n",
nullptr, true, true );
}
if ( j.contains( "config" ) ) {

View File

@@ -84,7 +84,10 @@ void LinterPlugin::loadLinterConfig( const std::string& path, bool updateConfigF
Log::error( "LinterPlugin::loadLinterConfig - Error parsing linter config from "
"path %s, error: ",
path.c_str(), e.what() );
return;
if ( !updateConfigFile )
return;
// Recreate it
j = json::parse( "{\n\"config\":{},\n\"linters\":[]\n}\n", nullptr, true, true );
}
if ( j.contains( "config" ) ) {

View File

@@ -732,7 +732,11 @@ void LSPClientPlugin::loadLSPConfig( std::vector<LSPDefinition>& lsps, const std
Log::error( "LSPClientPlugin::loadLSPConfig - Error parsing LSP config from "
"path %s, error: ",
path.c_str(), e.what() );
return;
if ( !updateConfigFile )
return;
// Recreate it
j = json::parse( "{\n \"config\":{},\n \"keybindings\":{},\n \"servers\":[]\n}\n",
nullptr, true, true );
}
if ( j.contains( "config" ) ) {

View File

@@ -138,6 +138,10 @@ void StatusBuildOutputController::run( const std::string& buildName, const std::
}
}
UICodeEditor* StatusBuildOutputController::getContainer() {
return mContainer;
}
UICodeEditor* StatusBuildOutputController::createContainer() {
UICodeEditor* editor = UICodeEditor::NewOpt( true, true );
editor->setLocked( true );

View File

@@ -28,6 +28,8 @@ class StatusBuildOutputController {
void run( const std::string& buildName, const std::string& buildType,
const ProjectBuildOutputParser& outputParser = {} );
UICodeEditor* getContainer();
protected:
UISplitter* mMainSplitter{ nullptr };
UISceneNode* mUISceneNode{ nullptr };

View File

@@ -62,6 +62,10 @@ void StatusTerminalController::show() {
}
}
UITerminal* StatusTerminalController::getUITerminal() {
return mUITerminal;
}
UITerminal* StatusTerminalController::createTerminal( const std::string& workingDir,
std::string program,
const std::vector<std::string>& args ) {

View File

@@ -25,6 +25,8 @@ class StatusTerminalController {
void show();
UITerminal* getUITerminal();
protected:
UISplitter* mMainSplitter{ nullptr };
UISceneNode* mUISceneNode{ nullptr };

View File

@@ -11,6 +11,11 @@ void TerminalManager::applyTerminalColorScheme( const TerminalColorScheme& color
if ( widget->isType( UI_TYPE_TERMINAL ) )
widget->asType<UITerminal>()->setColorScheme( colorScheme );
} );
if ( mApp->getStatusTerminalController() &&
mApp->getStatusTerminalController()->getUITerminal() ) {
mApp->getStatusTerminalController()->getUITerminal()->setColorScheme( colorScheme );
}
}
void TerminalManager::setTerminalColorScheme( const std::string& name ) {
@@ -36,10 +41,10 @@ void TerminalManager::loadTerminalColorSchemes() {
colorSchemes.emplace_back( TerminalColorScheme::getDefault() );
if ( FileSystem::isDirectory( mTerminalColorSchemesPath ) ) {
auto colorSchemesFiles = FileSystem::filesGetInPath( mTerminalColorSchemesPath );
for ( auto& file : colorSchemesFiles ) {
for ( const auto& file : colorSchemesFiles ) {
auto colorSchemesInFile =
TerminalColorScheme::loadFromFile( mTerminalColorSchemesPath + file );
for ( auto& coloScheme : colorSchemesInFile )
for ( const auto& coloScheme : colorSchemesInFile )
colorSchemes.emplace_back( coloScheme );
}
} else {