mirror of
				https://github.com/zadam/trilium.git
				synced 2025-11-04 05:28:59 +01:00 
			
		
		
		
	don't remove active tab after deleting note to preserve tab state, fixes #727
This commit is contained in:
		
							parent
							
								
									91487b338a
								
							
						
					
					
						commit
						e712990c03
					
				@ -273,7 +273,9 @@ async function filterTabs(noteId) {
 | 
			
		||||
 | 
			
		||||
async function noteDeleted(noteId) {
 | 
			
		||||
    for (const tc of tabContexts) {
 | 
			
		||||
        if (tc.notePath && tc.notePath.split("/").includes(noteId)) {
 | 
			
		||||
        // not removing active even if it contains deleted note since that one will move to another note (handled by deletion logic)
 | 
			
		||||
        // and we would lose tab context state (e.g. sidebar visibility)
 | 
			
		||||
        if (!tc.isActive() && tc.notePath && tc.notePath.split("/").includes(noteId)) {
 | 
			
		||||
            await tabRow.removeTab(tc.$tab[0]);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@ -246,11 +246,15 @@ class TabContext {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    setCurrentNotePathToHash() {
 | 
			
		||||
        if (this.$tab[0] === this.tabRow.activeTabEl) {
 | 
			
		||||
        if (this.isActive()) {
 | 
			
		||||
            document.location.hash = (this.notePath || "") + "-" + this.tabId;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    isActive() {
 | 
			
		||||
        return this.$tab[0] === this.tabRow.activeTabEl;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    setupClasses() {
 | 
			
		||||
        for (const clazz of Array.from(this.$tab[0].classList)) { // create copy to safely iterate over while removing classes
 | 
			
		||||
            if (clazz !== 'note-tab') {
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user