🐛 删除已打开页签报错
This commit is contained in:
parent
c358f8f8ee
commit
5acdc1f3c7
4 changed files with 9 additions and 9 deletions
|
@ -34,7 +34,7 @@ export const lockFile = (id: string) => {
|
|||
/// #if !MOBILE
|
||||
getAllModels().editor.find((item) => {
|
||||
if (item.editor.protyle.block.rootID === id) {
|
||||
item.parent.parent.removeTab(item.parent.id);
|
||||
item.parent.parent.removeTab(item.parent.id, false, false);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
|
|
|
@ -482,10 +482,10 @@ export class Wnd {
|
|||
model.send("closews", {});
|
||||
}
|
||||
|
||||
private removeTabAction = (id: string, closeAll = false) => {
|
||||
private removeTabAction = (id: string, closeAll = false, hasSaveScroll = true) => {
|
||||
this.children.find((item, index) => {
|
||||
if (item.id === id) {
|
||||
if (item.model instanceof Editor) {
|
||||
if (item.model instanceof Editor && hasSaveScroll) {
|
||||
saveScroll(item.model.editor.protyle);
|
||||
}
|
||||
if (this.children.length === 1) {
|
||||
|
@ -545,7 +545,7 @@ export class Wnd {
|
|||
/// #endif
|
||||
};
|
||||
|
||||
public removeTab(id: string, closeAll = false) {
|
||||
public removeTab(id: string, closeAll = false, needSaveScroll = true) {
|
||||
for (let index = 0; index < this.children.length; index++) {
|
||||
const item = this.children[index];
|
||||
if (item.id === id) {
|
||||
|
@ -554,9 +554,9 @@ export class Wnd {
|
|||
showMessage(window.siyuan.languages.uploading);
|
||||
return;
|
||||
}
|
||||
this.removeTabAction(id, closeAll);
|
||||
this.removeTabAction(id, closeAll, needSaveScroll);
|
||||
} else {
|
||||
this.removeTabAction(id, closeAll);
|
||||
this.removeTabAction(id, closeAll, needSaveScroll);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -140,13 +140,13 @@ class Protyle {
|
|||
break;
|
||||
case "unmount":
|
||||
if (this.protyle.model && this.protyle.notebookId === data.data.box) {
|
||||
this.protyle.model.parent.parent.removeTab(this.protyle.model.parent.id);
|
||||
this.protyle.model.parent.parent.removeTab(this.protyle.model.parent.id, false, false);
|
||||
}
|
||||
break;
|
||||
case "remove":
|
||||
if (this.protyle.model && (this.protyle.notebookId === data.data.box &&
|
||||
(!data.data.path || this.protyle.path.indexOf(getDisplayName(data.data.path, false, true)) === 0))) {
|
||||
this.protyle.model.parent.parent.removeTab(this.protyle.model.parent.id);
|
||||
this.protyle.model.parent.parent.removeTab(this.protyle.model.parent.id, false, false);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -21,7 +21,7 @@ export const onGet = (data: IWebSocketData, protyle: IProtyle, action: string[]
|
|||
if (data.code === 1) {
|
||||
// 其他报错
|
||||
if (protyle.model) {
|
||||
protyle.model.parent.parent.removeTab(protyle.model.parent.id);
|
||||
protyle.model.parent.parent.removeTab(protyle.model.parent.id, false, false);
|
||||
} else {
|
||||
protyle.element.innerHTML = `<div class="ft__smaller ft__secondary b3-form__space--small" contenteditable="false">${window.siyuan.languages.refExpired}</div>`;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue