Keep composer autocomplete visible after route hops (#1851)
* fix(app): keep composer autocomplete visible after route hops Workspace callers now express only the target workspace. The navigation helper chooses whether to pop to a mounted host route or fall back, and active-workspace tracking ignores stale hidden route params while app-wide routes are foregrounded. * test(app): address workspace navigation review * fix(app): parse decoded legacy workspace routes * fix(app): ignore decoded legacy tab routes * test(app): use canonical offline workspace route
This commit is contained in:
@@ -12,9 +12,7 @@ export interface PrepareWorkspaceTabInput {
|
||||
pin?: boolean;
|
||||
}
|
||||
|
||||
export interface NavigateToPreparedWorkspaceTabInput extends PrepareWorkspaceTabInput {
|
||||
currentPathname?: string | null;
|
||||
}
|
||||
export type NavigateToPreparedWorkspaceTabInput = PrepareWorkspaceTabInput;
|
||||
|
||||
export interface PrepareWorkspaceTabDeps {
|
||||
openTabFocused: (workspaceKey: string, target: WorkspaceTabTarget) => string | null;
|
||||
@@ -22,11 +20,7 @@ export interface PrepareWorkspaceTabDeps {
|
||||
}
|
||||
|
||||
export interface NavigateToPreparedWorkspaceTabDeps extends PrepareWorkspaceTabDeps {
|
||||
navigateToWorkspace: (
|
||||
serverId: string,
|
||||
workspaceId: string,
|
||||
options: { currentPathname?: string | null },
|
||||
) => void;
|
||||
navigateToWorkspace: (serverId: string, workspaceId: string) => void;
|
||||
}
|
||||
|
||||
function getPreparedTarget(target: WorkspaceTabTarget): WorkspaceTabTarget {
|
||||
@@ -61,8 +55,6 @@ export function navigateToPreparedWorkspaceTab(
|
||||
deps: NavigateToPreparedWorkspaceTabDeps,
|
||||
): string {
|
||||
const route = prepareWorkspaceTab(input, deps);
|
||||
deps.navigateToWorkspace(input.serverId, input.workspaceId, {
|
||||
currentPathname: input.currentPathname,
|
||||
});
|
||||
deps.navigateToWorkspace(input.serverId, input.workspaceId);
|
||||
return route;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user