eepp: Fixed Node::debounce.

ecode: Fixes in Git plugin, now status also recurses submodules. Fixed doc info being incorrect on startup.
This commit is contained in:
Martín Lucas Golini
2023-12-18 21:18:17 -03:00
parent 40a56513ad
commit fc8ec9610b
14 changed files with 134 additions and 41 deletions

View File

@@ -1526,8 +1526,9 @@ void App::onDocumentSelectionChange( UICodeEditor* editor, TextDocument& doc ) {
onDocumentModified( editor, doc );
}
void App::onDocumentCursorPosChange( UICodeEditor*, TextDocument& doc ) {
updateDocInfo( doc );
void App::onDocumentCursorPosChange( UICodeEditor* editor, TextDocument& doc ) {
if ( mSplitter->curEditorExistsAndFocused() && mSplitter->getCurEditor() == editor )
updateDocInfo( doc );
}
void App::updateDocInfoLocation() {
@@ -1545,8 +1546,8 @@ void App::updateDocInfoLocation() {
}
void App::updateDocInfo( TextDocument& doc ) {
if ( !doc.isRunningTransaction() && mConfig.editor.showDocInfo && mDocInfo &&
mSplitter->curEditorExistsAndFocused() ) {
if ( !doc.isRunningTransaction() && !doc.isLoading() && mConfig.editor.showDocInfo &&
mDocInfo && mSplitter->curEditorExistsAndFocused() ) {
mDocInfo->setVisible( true );
updateDocInfoLocation();
String infoStr( String::format(
@@ -1555,7 +1556,8 @@ void App::updateDocInfo( TextDocument& doc ) {
i18n( "col_abbr", "col" ).toUtf8().c_str(),
mSplitter->getCurEditor()->getCurrentColumnCount(),
TextDocument::lineEndingToString( doc.getLineEnding() ).c_str() ) );
mDocInfo->runOnMainThread( [this, infoStr] { mDocInfo->setText( infoStr ); } );
mDocInfo->debounce( [this, infoStr] { mDocInfo->setText( infoStr ); }, Time::Zero,
String::hash( "ecode::doc_info::update" ) );
}
}