-
Notifications
You must be signed in to change notification settings - Fork 30.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Secondary sidebar opens empty, requiring extra click #185179
Comments
Marking this as important because it gives users the expression something is severely broken |
I gave this a stab but I'm throwing the towel, I don't really understand what's happening. When debugging I see that Question: the I now attempted to fix this by registering chat views/viewlets a bit more eagerly, esp before I am happy to continue the investigation and can make a PR but I am lost and would need someone pointing in the right direction. |
@jrieken thanks for taking a look at this, but I think the root cause of this issue (as well as another issue regarding views getting reset) is that the Chat extension contribution point breaks the contract we have with the extension service. The chat view container and view are created by core but controlled by the interactive session extension point. In the view descriptor service, we rely on the extension service to tell us when all extensions have been processed (and all their contribution points have been processed). However, the chat contribution extension point is not registered until the chat contribution service is instantiated and thus happens AFTER the extension service tells us all extension contribution points have been processed. The true fix IMO is that ChatContributionService gets converted to a workbench contribution (much like views and view container contributions). Additionally, this issue has been around since the chat view container got created. I would like to tackle this next iteration instead of trying to fix it in endgame. |
That's exactly what I have tried, I made sure that chat views are contributed after waiting for installed extensions here but then the wrong view would get focus-restored
That's fine for me, I was just curious so I started to investigate |
If I understand correctly, I mean the opposite. The chat views are essentially extension contributed views which need to be processed before that promise returns (that's the contract we have with the view descriptor service). I hackily ensured this by making the extension service depend on the chat contribution service and made it eager. This produced the desired result in my testing. |
fixed by #192827 |
This only get's a half verified, see #194280 |
Type: Bug
STR:
Sidebar is stuck in blank state. This happens often for me, and always takes me a minute as I hope it still loads.
Clicking the chat icon or closing/opening it does load the chat panel.
VS Code version: Code - Insiders 1.80.0-insider (f3aa9a2, 2023-06-14T09:04:32.379Z)
OS version: Darwin x64 22.5.0
Modes:
System Info
canvas_oop_rasterization: disabled_off
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
metal: disabled_off
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: enabled
Extensions (74)
(2 theme extensions excluded)
The text was updated successfully, but these errors were encountered: