mirror of
https://github.com/microsoft/vscode.git
synced 2026-02-15 07:28:05 +00:00
Merge pull request #294253 from mjbvz/dev/mjbvz/worldwide-rat
Store sessionResource as view state instead of id
This commit is contained in:
@@ -65,7 +65,9 @@ import { IAgentSession } from '../../agentSessions/agentSessionsModel.js';
|
||||
import { IChatEntitlementService } from '../../../../../services/chat/common/chatEntitlementService.js';
|
||||
|
||||
interface IChatViewPaneState extends Partial<IChatModelInputState> {
|
||||
/** @deprecated */
|
||||
sessionId?: string;
|
||||
sessionResource?: URI;
|
||||
|
||||
sessionsSidebarWidth?: number;
|
||||
}
|
||||
@@ -128,7 +130,9 @@ export class ChatViewPane extends ViewPane implements IViewWelcomeDelegate {
|
||||
lifecycleService.startupKind !== StartupKind.ReloadedWindow &&
|
||||
this.configurationService.getValue<boolean>(ChatConfiguration.RestoreLastPanelSession) === false
|
||||
) {
|
||||
this.viewState.sessionId = undefined; // clear persisted session on fresh start
|
||||
// clear persisted session on fresh start
|
||||
this.viewState.sessionId = undefined;
|
||||
this.viewState.sessionResource = undefined;
|
||||
}
|
||||
this.sessionsViewerVisible = false; // will be updated from layout code
|
||||
this.sessionsViewerSidebarWidth = Math.max(ChatViewPane.SESSIONS_SIDEBAR_MIN_WIDTH, this.viewState.sessionsSidebarWidth ?? ChatViewPane.SESSIONS_SIDEBAR_DEFAULT_WIDTH);
|
||||
@@ -267,6 +271,10 @@ export class ChatViewPane extends ViewPane implements IViewWelcomeDelegate {
|
||||
return this.chatService.transferredSessionResource;
|
||||
}
|
||||
|
||||
if (this.viewState.sessionResource) {
|
||||
return this.viewState.sessionResource;
|
||||
}
|
||||
|
||||
return this.viewState.sessionId ? LocalChatSessionUri.forSession(this.viewState.sessionId) : undefined;
|
||||
}
|
||||
|
||||
@@ -675,7 +683,9 @@ export class ChatViewPane extends ViewPane implements IViewWelcomeDelegate {
|
||||
if (model) {
|
||||
await this.updateWidgetLockState(model.sessionResource); // Update widget lock state based on session type
|
||||
|
||||
this.viewState.sessionId = model.sessionId; // remember as model to restore in view state
|
||||
// remember as model to restore in view state
|
||||
this.viewState.sessionId = model.sessionId;
|
||||
this.viewState.sessionResource = model.sessionResource;
|
||||
}
|
||||
|
||||
this._widget.setModel(model);
|
||||
|
||||
Reference in New Issue
Block a user