mirror of
https://github.com/SpartanJ/eepp.git
synced 2026-07-14 23:12:49 +03:00
Added Open in New Window and Move to New Window as tab right-click options and Edit options (SpartanJ/ecode#629).
Added `Move Tab to Start` and `Move Tab to End` in tab right-click options (SpartanJ/ecode#630). Added `--profile` CLI option (SpartanJ/ecode#634). Added `--disable-plugins` CLI option (SpartanJ/ecode#635). Moved `crashes` directory to profile directory (SpartanJ/ecode#639). Added `Settings -> Terminal -> Close Terminal Tab on Exit` (SpartanJ/ecode#643).
This commit is contained in:
@@ -524,6 +524,16 @@ UITerminal* TerminalManager::createNewTerminal(
|
||||
term->setTitle( title );
|
||||
auto csIt = mTerminalColorSchemes.find( mTerminalCurrentColorScheme );
|
||||
term->getTerm()->getTerminal()->setAllowMemoryTrimnming( true );
|
||||
term->getTerm()->setKeepAlive( !mApp->getConfig().term.closeTerminalTabOnExit );
|
||||
term->getTerm()->pushEventCallback( [this, term]( const TerminalDisplay::Event& event ) {
|
||||
if ( event.type == TerminalDisplay::EventType::PROCESS_EXIT &&
|
||||
mApp->getConfig().term.closeTerminalTabOnExit && term->getData() != 0 ) {
|
||||
UITab* tab = (UITab*)term->getData();
|
||||
auto* tabWidget = mApp->getSplitter()->tabWidgetFromWidget( term );
|
||||
if ( tabWidget )
|
||||
tabWidget->removeTab( tab );
|
||||
}
|
||||
} );
|
||||
term->setColorScheme( csIt != mTerminalColorSchemes.end()
|
||||
? mTerminalColorSchemes.at( mTerminalCurrentColorScheme )
|
||||
: TerminalColorScheme::getDefault() );
|
||||
@@ -566,6 +576,26 @@ UITerminal* TerminalManager::createNewTerminal(
|
||||
term->setExclusiveMode( !term->getExclusiveMode() );
|
||||
mApp->updateTerminalMenu();
|
||||
} );
|
||||
term->setCommand( "move-tab-to-start", [this] {
|
||||
auto widget = mApp->getSplitter()->getCurWidget();
|
||||
if ( widget == nullptr || widget->getData() == 0 )
|
||||
return;
|
||||
UITabWidget* tabWidget = mApp->getSplitter()->tabWidgetFromWidget( widget );
|
||||
if ( tabWidget ) {
|
||||
UITab* tab = (UITab*)widget->getData();
|
||||
tabWidget->moveTab( tab, 0 );
|
||||
}
|
||||
} );
|
||||
term->setCommand( "move-tab-to-end", [this] {
|
||||
auto widget = mApp->getSplitter()->getCurWidget();
|
||||
if ( widget == nullptr || widget->getData() == 0 )
|
||||
return;
|
||||
UITabWidget* tabWidget = mApp->getSplitter()->tabWidgetFromWidget( widget );
|
||||
if ( tabWidget ) {
|
||||
UITab* tab = (UITab*)widget->getData();
|
||||
tabWidget->moveTab( tab, tabWidget->getTabCount() );
|
||||
}
|
||||
} );
|
||||
mApp->registerUnlockedCommands( *term );
|
||||
term->setFocus();
|
||||
return term;
|
||||
|
||||
Reference in New Issue
Block a user