From 13afe33244ec79fddd0859d5f4ae33ac757042d9 Mon Sep 17 00:00:00 2001 From: SiriusXT <1160925501@qq.com> Date: Tue, 18 Nov 2025 09:05:18 +0800 Subject: [PATCH] fix(tab_manager): correct order when reopening split pane --- .../client/src/widgets/containers/split_note_container.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/apps/client/src/widgets/containers/split_note_container.ts b/apps/client/src/widgets/containers/split_note_container.ts index c370cc4eb..f29a5fad5 100644 --- a/apps/client/src/widgets/containers/split_note_container.ts +++ b/apps/client/src/widgets/containers/split_note_container.ts @@ -181,12 +181,14 @@ export default class SplitNoteContainer extends FlexContainer { splitService.delNoteSplitResizer(ntxIds); } - contextsReopenedEvent({ ntxId, mainNtxId, tabPosition, afterNtxId }: EventData<"contextsReopened">) { + contextsReopenedEvent({ ntxId, mainNtxId, afterNtxId }: EventData<"contextsReopened">) { if (ntxId !== undefined && afterNtxId !== undefined) { this.$widget.find(`[data-ntx-id="${ntxId}"]`).insertAfter(this.$widget.find(`[data-ntx-id="${afterNtxId}"]`)); - } else if (mainNtxId && tabPosition >= 0) { + } else if (mainNtxId) { const contexts = appContext.tabManager.noteContexts; - const beforeNtxId = contexts.find(c => c.mainNtxId === mainNtxId)?.ntxId || null; + const nextIndex = contexts.findIndex(c => c.ntxId === mainNtxId); + const beforeNtxId = (nextIndex !== -1 && nextIndex + 1 < contexts.length) ? contexts[nextIndex + 1].ntxId : null; + this.$widget.find(`[data-ntx-id="${mainNtxId}"]`).insertBefore(this.$widget.find(`[data-ntx-id="${beforeNtxId}"]`)); } }