jiebi/CodeConvo huggingface dataset:
Change:
// const date = new Date(); // const top = data.data.top; // console.log('ack top ', top, ' version: ', data.version, ' - ', date.getMinutes() + ':' + date.getSeconds() + ':' + date.getMilliseconds()); <ins> } else if (data.type === 'did-scroll-wheel') { this.notebookEditor.triggerScroll(data.payload); </ins> } return; }

Discussion:
Issue Type: <bFeature Request</bCurrently it's unclear and difficult to handle scrolling events inside an output which is rendered in the webview due to the disadvantage of our current architecture: we listen to event in the webview and scroll the list view in the main thread accordingly. It means if users attempt to scroll in a native scrollable element, the element will be scrolled in the webview, and also trigger the whole editor to scroll. Events triggered when users scroll on a scrollable element events come right after events, usually in a few milliseconds. If users trigger scroll (by mouse wheel or touchpad) on a non-scrollable element, there are only events. For our scenario, we want to emit events to the main thread, only when there is no event followed right after. This can be archived by delaying the wheel event message to the main thread The catch of this solution is how long should we delay. Usually a scroll event comes after a wheel event in just a few ms but it's not guaranteed. Renderers handle the scrolling themselves. For example, a renderer can stop sending event on a scrollable element. The challenge for renderers is they need to be keep track of any element with it renders and stop events only when necessary. VS Code version: Code - Insiders 1.44.0-insider (, 2020-03-27T05:28:16.333Z) OS version: Darwin x64 19.2.0 <!-- generated by issue reporter --
cc as you mentioned that it would be painful to write a list view in the output.
I would suggest listening to the wheel event, and triggering a scroll in the notebook if there's no parent element that will scroll. You should be able to tell that with something like
thanks very much, the suggestion is pretty solid. ! The only update to 's snippet above is the scroll should stop at the container of each output container instead of going all the way up to body (potentially). The event listener should also then be registered only in notebook webview other than all webviews.
Change:
) { super(); <ins> this._init( editorResolverService, embedderTerminalService, workbenchEnvironmentService, labelService, lifecycleService, terminalService, terminalEditorService, terminalGroupService, terminalInstanceService ); } private async _init( editorResolverService: IEditorResolverService, embedderTerminalService: IEmbedderTerminalService, workbenchEnvironmentService: IWorkbenchEnvironmentService, labelService: ILabelService, lifecycleService: ILifecycleService, terminalService: ITerminalService, terminalEditorService: ITerminalEditorService, terminalGroupService: ITerminalGroupService, terminalInstanceService: ITerminalInstanceService ) { // Defer this for the local case only. This is important for the // window.createTerminal web embedder API to work before the workbench // is loaded on remote if (workbenchEnvironmentService.remoteAuthority === undefined) { await lifecycleService.when(LifecyclePhase.Restored); } this._register(embedderTerminalService.onDidCreateTerminal(async embedderTerminal => { const terminal = await terminalService.createTerminal({ config: embedderTerminal, location: TerminalLocation.Panel }); terminalService.setActiveInstance(terminal); await terminalService.revealActiveTerminal(); })); await lifecycleService.when(LifecyclePhase.Restored); </ins> // Register terminal editors <del> editorResolverService.registerEditor( </del> <ins> this._register(editorResolverService.registerEditor( </ins> `${Schemas.vscodeTerminal}:/**`, { id: terminalEditorId,

Discussion:
changed to move to but this caused a feature for Codespaces to stop working where the terminal will start streaming in the init logs before the workbench has fully loaded. Ideally we would start it up on Starting only on remote, if we can't do that we need to move it back to Starting in the meantime. cc
We know if we are connected to a remote from the environment service via probing for .
We don't have access to services at workbench contrib registration do we?
no, but you could have 1 eager workbench contrib that depends on the environment service to decide if a second thing should get instantiated or not.
Marked verified, only can properly verify it
this seems to still be failing, the terminal does not show up until the codespace is fully created and the workbench initialized
Verified by
Change:
.monaco-action-bar:not(.vertical) .action-label:not(.disabled):hover { background-color: ${toolbarHoverBackgroundColor}; } <ins> .monaco-action-bar:not(.vertical) .monaco-dropdown-with-primary:not(.disabled):hover { background-color: ${toolbarHoverBackgroundColor}; } </ins> `); }

Discussion:
For reuse by other code areas
Also polish styling including a hover over the joint buttons
Mockup: !
Fixed in
Change:
"panelTitle.activeBorder": "#2488d8", "panelTitle.activeForeground": "#ffffffc5", "panelTitle.inactiveForeground": "#8b949e", <del> "peekViewEditor.background": "#6e76811a", </del> <ins> "peekViewEditor.background": "#1f1f1f", </ins> "peekViewEditor.matchHighlightBackground": "#bb800966", "peekViewResult.background": "#1f1f1f", "peekViewResult.matchHighlightBackground": "#bb800966",

Discussion:
<!-- 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.75 Insiders OS Version: macOS https://user-
It seems we have a transparent background when using the v2 dark theme. Though there should always be a bg color fallback.
The relevant color here is . There are two problems: this should be defined opaque if this isn't opaque, maybe we should force it to be opaque in code
Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for . See also our . Happy Coding!
this is
I'm still seeing this with Peek View. The problems listed by is not being fixed it seems. <img width="1330" alt="image" src="https://user-"
Not for me. Please provide repro info like the theme you are using and/or customisations you are doing <img width="1103" alt="Screenshot 2022-12-13 at 08 34 25" src="https://user-"
I'm using Dark+ V2 (experimental) theme.
Likely just a theme bug then. I'll take a look.
Change:
} // The hover is currently visible <del> const isGettingCloser = (mouseEvent && this._widget.isMouseGettingCloser(mouseEvent.event.posx, mouseEvent.event.posy)); </del> <ins> const hoverIsSticky = this._editor.getOption(EditorOption.hover).sticky; const isGettingCloser = (hoverIsSticky && mouseEvent && this._widget.isMouseGettingCloser(mouseEvent.event.posx, mouseEvent.event.posy)); </ins> if (isGettingCloser) { // The mouse is getting closer to the hover, so we will keep the hover untouched // But we will kick off a hover update at the new anchor, insisting on keeping the hover visible.

Discussion:
Type: <bBug</bSet Editor : Hover : Sticky to false in Preferences, but then the hover remains there while mouseover, instead of disappearing out of the way like it used to. VS Code version: Code - Insiders 1.72.0-insider (, 2022-09-23T15:06:14.385Z) OS version: Darwin x64 21.6.0 Modes: Sandboxed: Yes <!-- generated by issue reporter --
maybe caused this.
Change:
registerActiveInstanceAction({ id: TerminalCommandId.StopVoice, <del> title: localize2('workbench.action.terminal.stopVoice', "Stop Terminal Voice"), </del> <ins> title: localize2('workbench.action.terminal.stopDictation', "Stop Dictation in Terminal"), </ins> precondition: ContextKeyExpr.and(HasSpeechProvider, sharedWhenClause.terminalAvailable), f1: true, run: (activeInstance, c, accessor) => {

Discussion:
I find these labels hard to figure out: ! I suggest:
i'll probably remove these altogether since they're not useful
Yes
pointed out that since this is called out in the release notes, I should wait to remove it until there's a replacement IE until we have a universal command
but at least align the labels? "Voice: Start / Stop Dictation in Terminal" <img width="718" alt="image" src=""
is the editor one going to become a generic that can be used anywhere? Chatting with the other day, since we announced the terminal feature as a non-preview we were going to wait until your dictation work works in the terminal as well. Unless we're not on the same page?
Change:
} this._register(this._chatCodeBlockContextProviderService.registerProvider({ getCodeBlockContext: (editor) => { <del> const chatWidget = this.chatWidget; if (!chatWidget) { return; } if (!editor) { </del> <ins> if (!editor || !this._chatWidget?.hasValue || !this.hasFocus()) { </ins> return; } return {

Discussion:
I find myself accidentally copying he entire file recently, turns out this is because we no longer copy a line when there is no selection but the whole file. When I enable keybinding troubleshooting I see it's being handled by chat-codeblock: I didn't have chat open at the time
This is from I don't fully understand the , but this should be trying to determine whether this codeblock belongs to some chat view, but it just returns the passed in editor all the time.
Since Megan is out, if you want to do some quick fix I think there is a scheme for all chat codeblocks that Matt and we could just add a check for that in here.
Change:
this._hover.contentsDomNode.style.paddingBottom = ''; this._updateFont(); <del> this._editor.layoutContentWidget(this); </del> this.onContentsChanged(); // Simply force a synchronous render on the editor

Discussion:
! I see this sometimes, but it often gets fixed if I try again, or close and reopen the editor, etc. Right now it keeps happening and it's just impossible to click the hover. I don't know how this API works but I assume this is on vscode's side. Happy to set breakpoints and debug
I couldn't reproduce this so I'm not sure what's the root problem. However, I'm saving here a patch which simulates a hover very similar to the one in the gif: <img width="1141" alt="image" src="https://user-"diffn- editor.focusNotebookCell(newCell, newFocusMode, { focusEditorLine: 1 });n+ await editor.focusNotebookCell(newCell, newFocusMode, { focusEditorLine: 1 });n
I tried for quite a while but couldn't repro. I think there might be some settings that cause the issue reproduce. Does this reproduce when you comment out all your user settings?
Yeah, it reproes with all settings commented out
Thanks to via we could find a repro. Reproduces consistently when hovering at the end of the line: It turns out it has to do with the range the hover provider returns. If the hover provider returns a range that spans one line above the hover request, the hover will render one line above. If the hover provider returns a range that spans two lines above the hover request, the hover will render two lines above, etc. Here's a simplified patch: https://user-
To verify, use gitlens and hover over the end of the line at
Works great but raises the question, why does gitlens return a hover with a multiline range? And I get a highlight in this region, but it blinks and disappears on line 919, and on other lines, no highlight. !
PR to improve the highlight range at
I'm still seeing the original issue at
Change:
import { Action2, registerAction2 } from 'vs/platform/actions/common/actions'; import { getRemoteName } from 'vs/platform/remote/common/remoteHosts'; import { IRemoteAgentEnvironment } from 'vs/platform/remote/common/remoteAgentEnvironment'; <del> import { IWebWorkerExtensionHostDataProvider, WebWorkerExtensionHost } from 'vs/workbench/services/extensions/browser/webWorkerExtensionHost'; </del> <ins> import { IWebWorkerExtensionHostDataProvider, IWebWorkerExtensionHostInitData, WebWorkerExtensionHost } from 'vs/workbench/services/extensions/browser/webWorkerExtensionHost'; </ins> import { IWorkspaceContextService } from 'vs/platform/workspace/common/workspace'; import { ILogService } from 'vs/platform/log/common/log'; import { CATEGORIES } from 'vs/workbench/common/actions';

Discussion:
When running a web worker extension on vscode desktop, the error appears. To reproduce, you can use the following extension: : :
Change:
} .issues-container > .issue .label { <ins> padding-top: 2px; </ins> margin-left: 5px; width: 44px; text-overflow: ellipsis; overflow: hidden; } <ins> .issues-container > .issue .issue-icon{ padding-top: 2px; } </ins>

Discussion:
!
is this in OSS or in insiders?
This was oss
yep, this is a known issue in OSS with the css bundling. it ends up fine in Insiders and stable, but unsure why this has been the case for a while now. same as i believe
They still happen in insiders, just the button width isn't the same for some reason (you could inspect the element in devtools to diff the styles): !
Change:
for (let key in repository) { visit(repository[key], { node: repository, property: key, parent: undefined }); } <del> if (patchCount !== 6) { console.warn(`Expected to patch 6 occurrences of source.js & source.css: Was ${patchCount}`); </del> <ins> if (patchCount !== 2) { console.warn(`Expected to patch 2 occurrences of source.js & source.css: Was ${patchCount}`); </ins> }

Discussion:
<!-- 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. --<!-- 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. --Version: 1.71.0 Commit: Date: 2022-09-01T07:25:10.472Z Electron: 19.0.12 Chromium: 102.0.5005.167 16.14.2 V8: 10.2.154.15-electron.0 OS: Linux x64 5.10.7-arch1-1 Sandboxed: No Steps to Reproduce: a file with the contents: a SvelteKit project and open any file. as shown in the video. https://user- Result: Without a space - it doesn't work. With space - it works. Cause: When the cursor is in front of the character, it thinks it is already AFTER , although this is not true. PS The same problem is in the last character, before , in the file.
This also happens in the HTML with where being cursor position. The problem seems to be because the position of the cursor is on the border of the embedded language. Maybe it could be changed to using the previous character, when possible, instead of the next?
Thanks - I can reproduce what you are saying. I don't really know what svelte kit is nor what extension you are using. So, I am focusing on html. Using "F1 Inspect Editor Tokens and Scopes" shows me that the language at position is classified as html, not JavaScript. <img width="728" alt="Screenshot 2022-12-05 at 16 22 35" src="https://user-"Because of that no JS snippets are shown. Passing this on to who maintains the TextMate grammars for this.

An easy workaround on your end would be to configure the snippet to also work for the "outer" language
SvelteKit: SvelteJS is the 4th most popular framework (behind ReactJS Vue Angular), and considered to have the best DX of all frameworks. Extension for SvelteJS: But I hope that solving the problem in html/js, will also solve the problem in SvelteJS.
Related to
what do you think of modifying the solution to so that we don't ignore strings? PR
Change:
} override runWithViewModel(viewModel: MergeEditorViewModel): void { <del> viewModel.goToNextModifiedBaseRange(true); </del> <ins> viewModel.goToNextModifiedBaseRange(r => !viewModel.model.isHandled(r).get()); </ins> } } <del> export class GoToPreviousConflict extends MergeEditorAction { </del> <ins> export class GoToPreviousUnhandledConflict extends MergeEditorAction { </ins> constructor() { super({ <del> id: 'merge.goToPreviousConflict', </del> <ins> id: 'merge.goToPreviousUnhandledConflict', </ins> category: mergeEditorCategory, title: { value: localize( <del> 'merge.goToPreviousConflict', 'Go to Previous Conflict' </del> <ins> 'merge.goToPreviousUnhandledConflict', 'Go to Previous Unhandled Conflict' </ins> ), <del> original: 'Go to Previous Conflict', </del> <ins> original: 'Go to Previous Unhandled Conflict', </ins> }, icon: Codicon.arrowUp, menu: [

Discussion:
Testing Clone Use the command and select the folder Select in the quick pick It looks like the file has 4 conflict Pressing "Go to Next Conflict" highlights the first conflict Pressing "Go to Next Conflict" again does not do anything Also interesting that the editor minimap only has one conflict marker
I also saw this. It seemed to happen when both inputs make the same change.
On , once it moves past the first conflict and try to go back to it, it doesn't go back to it properly. !
This is weird, I cannot reproduce this. Also, for , I only have 2 conflicts. And this checkbox is also very weird: !
I'm on commit , not the latest commit. Does that make a difference?
If you can reproduce on the latest commit, can you try to give me a call?
yup, things look good on the latest on master for diff-merge-datasets for demo1. :) One thing I noticed, though, is that, if you're focused on the result and try to skip to next conflict, it's hard to tell by looking at the two inputs where the conflict is (seems that the two inputs aren't telling me anything in this screenshot): ! When I make the input editors a little bigger, then it starts making a little more sense. ! Not too big of a deal though, just wanted to bring your attention to it!
Change:
updateParent(parentContextKeyService: IContextKeyService): void; } <del> export const SET_CONTEXT_COMMAND_ID = 'setContext'; </del> function cmp1(key1: string, key2: string): number { if (key1 < key2) { return -1;

Discussion:
This came from vscode-docs issue customer comment "The biggest missing documentation for extensions is the lack of setContext here " Should we add the description and metadata so that it will be part of the _generateCommandsDocumentation output?
FYI I would love this. At the same time, could we think about adding the corollary ? The number of hoops that need to be jumped through to get the right context make things very difficult (and other impossible). Here is a concrete example. In GitLens, I have commands that navigate forward and backward through revisions. The current diff editor behavior make these difficult to implement well -- leaving aside the details there, to work around it one solution I've come up with is duplicating those 2 commands, 1 for normal editors and 1 for diff editors. And then I have to duplicate all the placements ( and and then have the command behave appropriately based on the context. Alternatively, if there was a type api, I could avoid all of that, and just look up in my existing command and do the right thing. Way less complexity and explosion of commands and placements. Please?
I am also very concerned about this issue. I found the when I'm reading the source code of , but I didn't find it in , but in the . I hope the official team can fix this issue soon. Best wishes. : )
Like I found use of in the samples () and the 2016 update documentation. 2016 blog reference, but not in API docs and this issue has been open more than a year? Is it maybe considered "proposed API"?
seems like the issue belongs to , right?
same here too... unfortunately documentation is falling behind!
examples to Command Extension Guide with
Why is this still open? Are we happy that it is documented in the docs?
Change:
import { isEqual } from 'vs/base/common/resources'; import { ChatAgentLocation } from 'vs/workbench/contrib/chat/common/chatAgents'; import { INotebookEditorService } from 'vs/workbench/contrib/notebook/browser/services/notebookEditorService'; <ins> import { escapeRegExpCharacters } from 'vs/base/common/strings'; </ins> export const enum State { CREATE_SESSION = 'CREATE_SESSION',

Discussion:
open inline chat type , accept suggestion and type :bug: you know have "/explainthis" even tho it isn't rendered as such !
Change:
})); // #region DEBT <del> // DEBT@jrieken </del> <ins> // DEBT@jrieken https://github.com/microsoft/vscode/issues/218819 </ins> // REMOVE when agents are adopted this._sessionStore.add(this._languageFeatureService.completionProvider.register({ scheme: ChatInputPart.INPUT_SCHEME, hasAccessToAllModels: true }, { _debugDisplayName: 'inline chat commands',

Discussion:
open inline chat type , accept suggestion and type :bug: you know have "/explainthis" even tho it isn't rendered as such !
Change:
import { Action, IAction, Separator } from 'vs/base/common/actions'; import { $, addDisposableListener, append, clearNode, EventHelper, EventType, getDomNodePagePosition, hide, show } from 'vs/base/browser/dom'; import { ICommandService } from 'vs/platform/commands/common/commands'; <del> import { toDisposable, DisposableStore, disposeIfDisposable, MutableDisposable } from 'vs/base/common/lifecycle'; </del> <ins> import { toDisposable, DisposableStore, MutableDisposable } from 'vs/base/common/lifecycle'; </ins> import { IContextMenuService } from 'vs/platform/contextview/browser/contextView'; import { IThemeService, IColorTheme } from 'vs/platform/theme/common/themeService'; import { NumberBadge, IBadge, IActivity, ProgressBadge } from 'vs/workbench/services/activity/common/activity';

Discussion:
Explorer focused: ! It's only working for debug: !
It seems to working for me <img width="370" alt="image" src=""Do you have any special theme, or customisations or set up? Probably try trouble shooting?
Also the state can be frozen: ! ! Same thing in dark modern. No errors in console
Here's a repro that seems reliable: the side bar narrow enough to make some of your activity icons get displaced into the ... menu. an option from that menu. Its icon appears and get selected with the underline correct. drag that icon left to position it nearer the start of the set of tabs in order for it not to get displaced onto the ... menu again. It loses its underline and even when you switch to another icon and back to this one it doesn't get underlined.
To reset, move activity bar to side, then back to top again.
Thanks for repro steps
OFF TOPIC. May I ask how to move the activity bar from left to top? Tried searching for settings and Googling, but didn't get any results.
if you're on the Insiders build you can right click the activity bar to change the position
To verify: Move activity bar to top Reduce the width of sidebar so that activity bar actions are exactly fit Switch to Debug view container. All activity bar actions moved to overflow action From overflow action, select explorer Make sure explorer is shown active