jiebi/CodeConvo huggingface dataset:
Code change:
In VS Code action items inside inputs are vertically aligned to top, in the Chat features they are centered in the middle. This happens when putting in a lot of text or pressing Shift+Enter. Panel: <img width="425" alt="image" src=""Inline: <img width="608" alt="image" src=""Quick: <img width="621" alt="image" src=""For Inline and Quick the action items to the right of the input box should also stick to the top.
Seems like we have a mix of top-aligned and overflow w/ scroll (see below). But I agree that we should be consistent as much as possible. But it does feel like a chat send button should generally but aligned to the bottom, no? We may even consider rendering the toolbar on its own row once we're into multiple lines. That would ensure the text isn't forced to fill a tiny space now that we have 2+ icons. Here's how Teams does it as an example: ! ! ! !
Would be awesome if the text could wrap around it, especially in the narrow search widget case, I've always wanted that but I think it would be a pain to implement.
Don't have a strong opinion about top or bottom, I think each can be justified on a case-by-case basis. but middle looks weird. :) For example, inline Chat may want to do top alignment as the icons would align with those outside the input field (poppet and close) Bottom would help with the wrapping.

Related discussion:
text: position: relative; padding: 0 6px; margin-bottom: 4px; <del> align-items: center; </del> <ins> align-items: flex-end; </ins> justify-content: space-between; }
Code change:
In VS Code action items inside inputs are vertically aligned to top, in the Chat features they are centered in the middle. This happens when putting in a lot of text or pressing Shift+Enter. Panel: <img width="425" alt="image" src=""Inline: <img width="608" alt="image" src=""Quick: <img width="621" alt="image" src=""For Inline and Quick the action items to the right of the input box should also stick to the top.
Seems like we have a mix of top-aligned and overflow w/ scroll (see below). But I agree that we should be consistent as much as possible. But it does feel like a chat send button should generally but aligned to the bottom, no? We may even consider rendering the toolbar on its own row once we're into multiple lines. That would ensure the text isn't forced to fill a tiny space now that we have 2+ icons. Here's how Teams does it as an example: ! ! ! !
Would be awesome if the text could wrap around it, especially in the narrow search widget case, I've always wanted that but I think it would be a pain to implement.
Don't have a strong opinion about top or bottom, I think each can be justified on a case-by-case basis. but middle looks weird. :) For example, inline Chat may want to do top alignment as the icons would align with those outside the input field (poppet and close) Bottom would help with the wrapping.

Related discussion:
text: .interactive-session .interactive-input-part .interactive-execute-toolbar { height: 22px; <ins> /* It's bottom-aligned, make it appear centered within the container */ margin-bottom: 7px; </ins> } .interactive-session .interactive-input-part .interactive-execute-toolbar .codicon-debug-stop {
Code change:
In VS Code action items inside inputs are vertically aligned to top, in the Chat features they are centered in the middle. This happens when putting in a lot of text or pressing Shift+Enter. Panel: <img width="425" alt="image" src=""Inline: <img width="608" alt="image" src=""Quick: <img width="621" alt="image" src=""For Inline and Quick the action items to the right of the input box should also stick to the top.
Seems like we have a mix of top-aligned and overflow w/ scroll (see below). But I agree that we should be consistent as much as possible. But it does feel like a chat send button should generally but aligned to the bottom, no? We may even consider rendering the toolbar on its own row once we're into multiple lines. That would ensure the text isn't forced to fill a tiny space now that we have 2+ icons. Here's how Teams does it as an example: ! ! ! !
Would be awesome if the text could wrap around it, especially in the narrow search widget case, I've always wanted that but I think it would be a pain to implement.
Don't have a strong opinion about top or bottom, I think each can be justified on a case-by-case basis. but middle looks weird. :) For example, inline Chat may want to do top alignment as the icons would align with those outside the input field (poppet and close) Bottom would help with the wrapping.

Related discussion:
text: } .quick-input-widget .interactive-session .interactive-input-part .interactive-execute-toolbar { <del> bottom: 1px; </del> <ins> margin-bottom: 1px; </ins> } .quick-input-widget .interactive-session .interactive-input-and-execute-toolbar {
Code change:
use generate cell in notebooks make a request while the request is active press stop a bunch of errors are printed
It seems not wise at all to maintain my own *chatcontroller. I'd love to look into how do I ensure I reuse the most of Inline Chat Controller later.
Is the generate cell feature just with using ctrl+i from within a cell body? Not sure how I can trigger it.

Related discussion:
text: private _sessionCtor: CancelablePromise<void> | undefined; private _activeSession?: Session; private _warmupRequestCts?: CancellationTokenSource; <ins> private _activeRequestCts?: CancellationTokenSource; </ins> private readonly _ctxHasActiveRequest: IContextKey<boolean>; private readonly _ctxCellWidgetFocused: IContextKey<boolean>; private readonly _ctxUserDidEdit: IContextKey<boolean>;
Code change:
use generate cell in notebooks make a request while the request is active press stop a bunch of errors are printed
It seems not wise at all to maintain my own *chatcontroller. I'd love to look into how do I ensure I reuse the most of Inline Chat Controller later.
Is the generate cell feature just with using ctrl+i from within a cell body? Not sure how I can trigger it.

Related discussion:
text: } async acceptInput() { <del> assertType(this._activeSession); </del> assertType(this._widget); <ins> await this._sessionCtor; assertType(this._activeSession); </ins> this._warmupRequestCts?.dispose(true); this._warmupRequestCts = undefined; this._activeSession.addInput(new SessionPrompt(this._widget.inlineChatWidget.value));
Code change:
use generate cell in notebooks make a request while the request is active press stop a bunch of errors are printed
It seems not wise at all to maintain my own *chatcontroller. I'd love to look into how do I ensure I reuse the most of Inline Chat Controller later.
Is the generate cell feature just with using ctrl+i from within a cell body? Not sure how I can trigger it.

Related discussion:
text: //TODO: update progress in a newly inserted cell below the widget instead of the fake editor <del> const requestCts = new CancellationTokenSource(); </del> <ins> this._activeRequestCts?.cancel(); this._activeRequestCts = new CancellationTokenSource(); </ins> const progressEdits: TextEdit[][] = []; const progressiveEditsQueue = new Queue(); const progressiveEditsClock = StopWatch.create(); const progressiveEditsAvgDuration = new MovingAverage(); <del> const progressiveEditsCts = new CancellationTokenSource(requestCts.token); </del> <ins> const progressiveEditsCts = new CancellationTokenSource(this._activeRequestCts.token); </ins> let progressiveChatResponse: IInlineChatMessageAppender | undefined; const progress = new AsyncProgress<IInlineChatProgressItem>(async data => { // console.log('received chunk', data, request); <del> if (requestCts.token.isCancellationRequested) { </del> <ins> if (this._activeRequestCts?.token.isCancellationRequested) { </ins> return; }
Code change:
use generate cell in notebooks make a request while the request is active press stop a bunch of errors are printed
It seems not wise at all to maintain my own *chatcontroller. I'd love to look into how do I ensure I reuse the most of Inline Chat Controller later.
Is the generate cell feature just with using ctrl+i from within a cell body? Not sure how I can trigger it.

Related discussion:
text: } }); <del> const task = this._activeSession.provider.provideResponse(this._activeSession.session, request, progress, requestCts.token); </del> <ins> const task = this._activeSession.provider.provideResponse(this._activeSession.session, request, progress, this._activeRequestCts.token); </ins> let response: ReplyResponse | ErrorResponse | EmptyResponse; try {
Code change:
use generate cell in notebooks make a request while the request is active press stop a bunch of errors are printed
It seems not wise at all to maintain my own *chatcontroller. I'd love to look into how do I ensure I reuse the most of Inline Chat Controller later.
Is the generate cell feature just with using ctrl+i from within a cell body? Not sure how I can trigger it.

Related discussion:
text: this._widget?.inlineChatWidget.updateInfo(!this._activeSession.lastExchange ? localize('thinking', "Thinkingu2026") : ''); this._ctxHasActiveRequest.set(true); <del> const reply = await raceCancellationError(Promise.resolve(task), requestCts.token); </del> <ins> const reply = await raceCancellationError(Promise.resolve(task), this._activeRequestCts.token); </ins> if (progressiveEditsQueue.size > 0) { // we must wait for all edits that came in via progress to complete await Event.toPromise(progressiveEditsQueue.onDrained);
Code change:
use generate cell in notebooks make a request while the request is active press stop a bunch of errors are printed
It seems not wise at all to maintain my own *chatcontroller. I'd love to look into how do I ensure I reuse the most of Inline Chat Controller later.
Is the generate cell feature just with using ctrl+i from within a cell body? Not sure how I can trigger it.

Related discussion:
text: this._widget?.inlineChatWidget.updateInfo(''); this._widget?.inlineChatWidget.updateToolbar(true); <del> this._activeSession.addExchange(new SessionExchange(this._activeSession.lastInput, response)); </del> <ins> this._activeSession?.addExchange(new SessionExchange(this._activeSession.lastInput, response)); </ins> this._ctxLastResponseType.set(response instanceof ReplyResponse ? response.raw.type : undefined); }
Code change:
use generate cell in notebooks make a request while the request is active press stop a bunch of errors are printed
It seems not wise at all to maintain my own *chatcontroller. I'd love to look into how do I ensure I reuse the most of Inline Chat Controller later.
Is the generate cell feature just with using ctrl+i from within a cell body? Not sure how I can trigger it.

Related discussion:
text: this._strategy?.cancel(); } <del> if (this._activeSession) { this._inlineChatSessionService.releaseSession(this._activeSession); } this._activeSession = undefined; </del> <ins> this._activeRequestCts?.cancel(); </ins> } discard() { this._strategy?.cancel(); <ins> this._activeRequestCts?.cancel(); </ins> this._widget?.discardChange(); this.dismiss(); }
Code change:
This only applies in a multi-root workspace. With just 1 view: ! With N views: ! I think we should use the workspace label here. to you recall why this code is there:

Related discussion:
text: const titleElement = container.querySelector('.title') as HTMLElement; const setHeader = () => { <del> const workspace = this.contextService.getWorkspace(); const title = workspace.folders.map(folder => folder.name).join(); </del> titleElement.textContent = this.name; <del> this.updateTitle(title); </del> <ins> this.updateTitle(this.name); </ins> this.ariaHeaderLabel = nls.localize('explorerSection', "Explorer Section: {0}", this.name); titleElement.setAttribute('aria-label', this.ariaHeaderLabel); };
Code change:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes/No <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.86.2 OS Version: Windows 10 / macOS Sonoma Steps to Reproduce: at least three windows the command least one of the windows will show a strange close icon, instead of the regular one, like the image below ! I reproduced the same error on Windows, and it also presented a strange icon, but it was a different one. A small vertical rectangle, like that missing unicode chars. I tested the on Insiders release, at least on MacOS, and didn't notice the error. I didn't have the opportunity to test in Insiders on Windows yet. I'll update the issue later with more details. Thank you
are you using a product icon extension?
Nevermind, a regression from , fyi
Hi , Glad to know you could find the fix. Let me know if you need me to verify it when released. Thank you
<!-- AUTHORVERIFICATIONREQUEST --This bug has been fixed in the latest release of ! you can help us out by commenting if things are now working as expected. If things still don't seem right, please ensure you're on version of Insiders (today's or later - you can use in the command palette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
/verified

Related discussion:
text: .monaco-workbench .interactive-input-part .monaco-action-bar .action-label.codicon-loading.codicon-modifier-spin:not(.disabled)::before, .monaco-workbench .inline-chat .monaco-action-bar .action-label.codicon-loading.codicon-modifier-spin:not(.disabled)::before { content: "ec1c"; <ins> font-family: 'codicon'; </ins> } /*
Code change:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes/No <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.86.2 OS Version: Windows 10 / macOS Sonoma Steps to Reproduce: at least three windows the command least one of the windows will show a strange close icon, instead of the regular one, like the image below ! I reproduced the same error on Windows, and it also presented a strange icon, but it was a different one. A small vertical rectangle, like that missing unicode chars. I tested the on Insiders release, at least on MacOS, and didn't notice the error. I didn't have the opportunity to test in Insiders on Windows yet. I'll update the issue later with more details. Thank you
are you using a product icon extension?
Nevermind, a regression from , fyi
Hi , Glad to know you could find the fix. Let me know if you need me to verify it when released. Thank you
<!-- AUTHORVERIFICATIONREQUEST --This bug has been fixed in the latest release of ! you can help us out by commenting if things are now working as expected. If things still don't seem right, please ensure you're on version of Insiders (today's or later - you can use in the command palette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
/verified

Related discussion:
text: .monaco-workbench.reduce-motion .interactive-input-part .monaco-action-bar .action-label.codicon-loading.codicon-modifier-spin:not(.disabled)::before, .monaco-workbench.reduce-motion .inline-chat .monaco-action-bar .action-label.codicon-loading.codicon-modifier-spin:not(.disabled)::before { content: "ead7"; <ins> font-family: 'codicon'; </ins> }
Code change:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes/No <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.86.2 OS Version: Windows 10 / macOS Sonoma Steps to Reproduce: at least three windows the command least one of the windows will show a strange close icon, instead of the regular one, like the image below ! I reproduced the same error on Windows, and it also presented a strange icon, but it was a different one. A small vertical rectangle, like that missing unicode chars. I tested the on Insiders release, at least on MacOS, and didn't notice the error. I didn't have the opportunity to test in Insiders on Windows yet. I'll update the issue later with more details. Thank you
are you using a product icon extension?
Nevermind, a regression from , fyi
Hi , Glad to know you could find the fix. Let me know if you need me to verify it when released. Thank you
<!-- AUTHORVERIFICATIONREQUEST --This bug has been fixed in the latest release of ! you can help us out by commenting if things are now working as expected. If things still don't seem right, please ensure you're on version of Insiders (today's or later - you can use in the command palette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
/verified

Related discussion:
text: .quick-input-list .quick-input-list-entry.has-actions:hover .quick-input-list-entry-action-bar .action-label.dirty-anything::before { content: "ea76"; /* Close icon flips between black dot and "X" for dirty open editors */ <ins> font-family: 'codicon'; </ins> }
Code change:
<!-- Do Not Delete This! bugreporttemplate --<!-- Please read our Rules of Conduct: --<!-- Read our guide about submitting issues: --<!-- Search existing issues to avoid creating duplicates. --<!-- Test using the latest Insiders build to see if your issue has already been fixed: --<!-- Instead of creating your report here, use 'Report Issue' from the 'Help' menu in VS Code to pre-fill useful information. --<!-- Launch with to check. --Does this issue occur when all extensions are disabled?: Yes/No <!-- If you answered No above, use 'Help: Start Extension Bisect' from Command Palette to try to identify the cause. --<!-- Issues caused by an extension need to be reported directly to the extension publisher. The 'Help Report Issue' dialog can assist with this. --- VS Code Version: 1.86.2 OS Version: Windows 10 / macOS Sonoma Steps to Reproduce: at least three windows the command least one of the windows will show a strange close icon, instead of the regular one, like the image below ! I reproduced the same error on Windows, and it also presented a strange icon, but it was a different one. A small vertical rectangle, like that missing unicode chars. I tested the on Insiders release, at least on MacOS, and didn't notice the error. I didn't have the opportunity to test in Insiders on Windows yet. I'll update the issue later with more details. Thank you
are you using a product icon extension?
Nevermind, a regression from , fyi
Hi , Glad to know you could find the fix. Let me know if you need me to verify it when released. Thank you
<!-- AUTHORVERIFICATIONREQUEST --This bug has been fixed in the latest release of ! you can help us out by commenting if things are now working as expected. If things still don't seem right, please ensure you're on version of Insiders (today's or later - you can use in the command palette to check), and leave a comment letting us know what isn't working as expected. Happy Coding!
/verified

Related discussion:
text: }; private readonly closeDirtyWindowAction: IQuickInputButton = { <del> iconClass: 'dirty-window ' + Codicon.closeDirty, </del> <ins> iconClass: 'dirty-window ' + ThemeIcon.asClassName(Codicon.closeDirty), </ins> tooltip: localize('close', "Close Window"), alwaysVisible: true };
Code change:
To be able to reach to the files presented in a multi diff text editor the tab model should provide a corresponding TabInput (see ) May be a good idea would be to have a general composite tab input. For the multi diff text editor the elements could then be
When you listen for tab changes the input of the tab is currently .
Not sure if this is or
Related:
Thanks!
Reopening to get API approval. I'm also not sure we will be able to expose the resources in multi diff This will probably complicate your use case. pointed out that the resources can change without changing the input and this is not something any of other inputs do making supporting showing the resources for this input quite difficult.
Can you verify? To verify please ensure that you see a type now for the multi diff text editor and it properly reacts to resource changes

Related discussion:
text: private readonly _groupLookup: Map<number, IEditorTabGroupDto> = new Map(); // Lookup table for finding tab by id private readonly _tabInfoLookup: Map<string, TabInfo> = new Map(); <ins> // Tracks the currently open MultiDiffEditorInputs to listen to resource changes private readonly _multiDiffEditorInputListeners: DisposableMap<MultiDiffEditorInput> = new DisposableMap(); </ins> constructor( extHostContext: IExtHostContext,
Code change:
To be able to reach to the files presented in a multi diff text editor the tab model should provide a corresponding TabInput (see ) May be a good idea would be to have a general composite tab input. For the multi diff text editor the elements could then be
When you listen for tab changes the input of the tab is currently .
Not sure if this is or
Related:
Thanks!
Reopening to get API approval. I'm also not sure we will be able to expose the resources in multi diff This will probably complicate your use case. pointed out that the resources can change without changing the input and this is not something any of other inputs do making supporting showing the resources for this input quite difficult.
Can you verify? To verify please ensure that you see a type now for the multi diff text editor and it properly reacts to resource changes

Related discussion:
text: } })); <ins> this._dispoables.add(this._multiDiffEditorInputListeners); </ins> // Structural group changes (add, remove, move, etc) are difficult to patch. // Since they happen infrequently we just rebuild the entire model this._dispoables.add(this._editorGroupsService.onDidAddGroup(() => this._createTabsModel()));