mirror of
https://github.com/zadam/trilium.git
synced 2025-03-01 14:22:32 +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) {
|
async function noteDeleted(noteId) {
|
||||||
for (const tc of tabContexts) {
|
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]);
|
await tabRow.removeTab(tc.$tab[0]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -246,11 +246,15 @@ class TabContext {
|
|||||||
}
|
}
|
||||||
|
|
||||||
setCurrentNotePathToHash() {
|
setCurrentNotePathToHash() {
|
||||||
if (this.$tab[0] === this.tabRow.activeTabEl) {
|
if (this.isActive()) {
|
||||||
document.location.hash = (this.notePath || "") + "-" + this.tabId;
|
document.location.hash = (this.notePath || "") + "-" + this.tabId;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
isActive() {
|
||||||
|
return this.$tab[0] === this.tabRow.activeTabEl;
|
||||||
|
}
|
||||||
|
|
||||||
setupClasses() {
|
setupClasses() {
|
||||||
for (const clazz of Array.from(this.$tab[0].classList)) { // create copy to safely iterate over while removing classes
|
for (const clazz of Array.from(this.$tab[0].classList)) { // create copy to safely iterate over while removing classes
|
||||||
if (clazz !== 'note-tab') {
|
if (clazz !== 'note-tab') {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user