mirror of
https://github.com/microsoft/vscode.git
synced 2026-02-21 18:28:50 +00:00
This commit is contained in:
@@ -149,10 +149,10 @@ export function registerNewChatActions() {
|
||||
await editingSession?.stop();
|
||||
|
||||
// Create a new session with the same type as the current session
|
||||
if (isIChatViewViewContext(widget.viewContext)) {
|
||||
const currentResource = widget.viewModel?.model.sessionResource;
|
||||
const sessionType = currentResource ? getChatSessionType(currentResource) : localChatSessionType;
|
||||
if (isIChatViewViewContext(widget.viewContext) && sessionType !== localChatSessionType) {
|
||||
// For the sidebar, we need to explicitly load a session with the same type
|
||||
const currentResource = widget.viewModel?.model.sessionResource;
|
||||
const sessionType = currentResource ? getChatSessionType(currentResource) : localChatSessionType;
|
||||
const newResource = getResourceForNewChatSession(sessionType);
|
||||
const view = await viewsService.openView(ChatViewId) as ChatViewPane;
|
||||
await view.loadSession(newResource);
|
||||
|
||||
@@ -1158,7 +1158,11 @@ async function openChatSession(accessor: ServicesAccessor, openOptions: NewChatS
|
||||
switch (openOptions.position) {
|
||||
case ChatSessionPosition.Sidebar: {
|
||||
const view = await viewsService.openView(ChatViewId) as ChatViewPane;
|
||||
await view.loadSession(resource);
|
||||
if (openOptions.type === AgentSessionProviders.Local) {
|
||||
await view.widget.clear();
|
||||
} else {
|
||||
await view.loadSession(resource);
|
||||
}
|
||||
view.focus();
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user