fix(client): re-read navigation cancellation after preparation
This commit is contained in:
1 parent
713b1aacad
commit
e807447288
1 file changed
+3
-2
@@ -138,10 +138,11 @@ class UiWorkspaceService extends Service implements UiWorkspace {
|
||||
|
||||
async openWorkspace(workspaceId: WorkspaceId, beforeOpen?: (sessionId: SessionId) => void): Promise<void> {
|
||||
const navigation = AbortSignal.any([this.ctx.layout.beginNavigation(), this.lifetime.signal])
|
||||
const isCurrent = (): boolean => !navigation.aborted
|
||||
const sessionId = await this.connectWorkspace(workspaceId)
|
||||
if (navigation.aborted) return
|
||||
if (!isCurrent()) return
|
||||
beforeOpen?.(sessionId)
|
||||
if (!navigation.aborted) this.openSession(sessionId)
|
||||
if (isCurrent()) this.openSession(sessionId)
|
||||
}
|
||||
|
||||
async forkSession(sessionId: SessionId): Promise<void> {
|
||||
|
||||
Reference in new issue
Block a user