Open Enrico204 opened 3 years ago
(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like:
I tried to reproduce on Ubuntu 20.04, but I could not reproduce.
Could you please close all instances of vscode and launch code --user-data-dir <specify-some-absolute-directory-path-here>
?
I can reproduce the issue using the environment described above (Fluxbox in Debian 10). I just installed a clean VM for tests. I can't reproduce the issue in Xfce instead. So apparently it depends on the desktop environment.
I tried the CLI switched you indicated. No luck, the issue is still there.
PS: I installed VSCode using the .deb
package
I can confirm the behavior running Manjaro and KDE Plasma 5.21.5. Switching to Gnome 40 on the same computer and scrolling works as expected. VS code is the only application I see this issue.
I hit a somewhat similar issue on icewm (on Debian 11) : it occurs after switching windows (using keyboard or mouse). So the workaround is simple : switch virtual desktops or iconize-raise VScode.
I confirm it does not occur on 1.55.2. It does not occur using openbox WM.
Unfortunately the workaround that @prigaux discovered is not working in my setup :-(
Version 1.56 coincides with our Electron 12 update.
@prigaux @Enrico204 Does this reproduce for you when opening https://vscode-web-test-playground.azurewebsites.net/?enter=true in Chromium?
No, the issue is not present in Chromium. I'm using Chromium Version 90.0.4430.212 (Developer Build)
. Shall i test that page with Chromium 89?
Shall i test that page with Chromium 89?
@Enrico204 That would be great if you could! VS Code Insiders is currently using Chromium 89.0.4389.128
.
The lookup for 89.0.4389.128 says 843830. I could not find it so I searched something alike. I just tested with https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html?prefix=Linux_x64/843831/ (version 89.0.4389.0) and https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html?prefix=Linux_x64/843844/ ( 89.0.4389.0 ) : the bug is present with icewm.
Thank you @prigaux ! This indicates that this was an upstream issue that has been fixed in the meantime. We regularly adopt the latest Electron releases, which also regularly adopts the latest Chromium releases. So as time goes on, we will end up adopting this fix as well.
run code with --disable-features=SendMouseLeaveEvents
same problem https://bugs.chromium.org/p/chromium/issues/detail?id=713746
Have had this issue for very long now. Both the file explorer and in the code editor (vertical + horizontal) scroll bars cannot be dragged. Only way to interact with these scroll bars is to right-click to jump, but in the file browser this opens a context menu.
It is extremely annoying, especially in the filebrowser, when the list is very long and you can only navigate by using the scroll-wheel.
Btw the scroll-bars do highlight when you mouse-over them, so there is some interaction happening.
Currently with 1.60.2 on Debian 11 with Fluxbox, but this has been going on for as long as I can remember (years).
Same issue here. Using Arch Linux, installation data:
I noticed they start working if I make some clicks inside the file I want to scroll.
Same issue here. Using Ubuntu 20.04 LTS and Fluxbox.
Visual Studio Code: Version: 1.62.0 Commit: b3318bc0524af3d74034b8bb8a64df0ccf35549a Date: 2021-11-03T15:18:44.904Z Electron: 13.5.1 Chrome: 91.0.4472.164 Node.js: 14.16.0 V8: 9.1.269.39-electron.0 OS: Linux x64 5.11.0-36-generic
@lampaczcz tip works:
run code with --disable-features=SendMouseLeaveEvents
$ code --disable-features=SendMouseLeaveEvents . Warning: 'disable-features' is not in the list of known options, but still passed to Electron/Chromium.
Despite warning the scrollbars are working with this parameter.
run code with --disable-features=SendMouseLeaveEvents
$ code --disable-features=SendMouseLeaveEvents . Warning: 'disable-features' is not in the list of known options, but still passed to Electron/Chromium.
Can confirm that this works! (hopefully a breadcrumb to whoever intends to solve this issue)
I hit a somewhat similar issue on icewm (on Debian 11) : it occurs after switching windows (using keyboard or mouse). So the workaround is simple : switch virtual desktops or iconize-raise VScode.
I am having this problem to. iconize-raise works for me. still a pain though.
Version: 1.62.3 Commit: ccbaa2d27e38e5afa3e5c21c1c7bef4657064247 Date: 2021-11-17T08:00:36.721Z Electron: 13.5.2 Chrome: 91.0.4472.164 Node.js: 14.16.0 V8: 9.1.269.39-electron.0 OS: Linux x64 5.8.0-59-generic snap
Still an issue for me on 1.62.3
I am seeing this on 1.63.0 under KDE on fedora 34. It is intermittent. Shrinking the window to a single monitor made the scrollbars work, then after expanding it they continue to work.
Version: 1.63.0
Commit: 7db1a2b88f7557e0a43fec75b6ba7e50b3e9f77e
Date: 2021-12-07T05:16:45.441Z
Electron: 13.5.2
Chromium: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Linux x64 5.15.5-100.fc34.x86_64
scrollbar doesn't work for me either, ubuntu 16.04,
I found an alternative to scroll with the wheel with
ALT
pressed so it turns out to scroll faster
This does not seem to be specific to VSCode/Chromium, I get basically the same problem in Meld, for the arrows used for merging. It happens intermittently on Plasma, but it's consistently reproducible on IceWM by having VSCode/Meld on one desktop and some other application on another desktop, and switching between them.
I am facing same problem with my Debian 11 KDE plasma.
This just started after I installed Jasmine and Karma. I ran the the tests a few times, and then I got the all green. Closed the browser (which I was not able to click the link in Terminal to open the browser). Now I can't scroll. The hover works, but when I click to drag it does nothing....and it is working again. While I was writing this it started working again. LinuxMint 20.3 Desktop KDE
As of latest update the --disable-features=SendMouseLeaveEvents
workaround doesn't seem to work anymore :disappointed: .
Yes, no working, no solution now
Version: 1.71.2 Commit: 74b1f979648cc44d385a2286793c226e611f59e7 Date: 2022-09-14T21:12:14.256Z Electron: 19.0.12 Chromium: 102.0.5005.167 Node.js: 16.14.2 V8: 10.2.154.15-electron.0 OS: Linux x64 5.18.0-4-amd64 Sandboxed: No
As of latest update the
--disable-features=SendMouseLeaveEvents
workaround doesn't seem to work anymore disappointed .
I was using this option and now its also no longer working, I had to switch back to the July release for now.
Latest version(
Version: 1.72.1
Commit: 129500ee4c8ab7263461ffe327268ba56b9f210d
) seems to have fixed it for me!
Well I still need to click the window once before it's reactive but much better than having to unfocus/refocus the window!
edit: Nvm it's still broken...
Certainly still an issue with:
Still an issue with 1.72.2-1665614327
Never had this issue before. Opened this morning and suddenly can't use scrollbars. Restarting app and rebooting machine not helping. 1.72.2, about window: https://i.imgur.com/odrMb5j.png
Note sure that will help anyone but I switched today from KDE to Xfce and the issue(which for me was scrollbar not working after switching virtual desktop and coming back to vscode) is just not present, scrollbar always works fine. So the issue may be with KDE?
@RipleyTom
I don't think so, as mentioned earlier it happens with other DEs, such as IceWM.
For what it’s worth: I’m having that problem in macOS 🤷
Update: I tried --disable-features=SendMouseLeaveEvents
, which has been mentioned above. It no longer seems to work for other people, and it didn’t work for me either.
I also tried a portable installation to rule out issues with extensions and my settings. Same result.
This has been an issue in at least the last two versions (1.72.0 and 1.73.0).
I am having this issue on 1.73 on MacOS 13.0 as well.
lol, once mac users have this issues, they're gonna take this issue seriously now
Today I’m not having the issue anymore: I can drag the scrollbars.
The only thing that I know to have changed is that I updated to macOS 13 (Ventura). Maybe that was it, even though @mhtawfiq is having the issue in that version 🤷
I'm still having this issue on 1.73.1, Ubuntu.
I've noticed if I keep the minimap enabled, I can click to scroll, thus putting a band-aid on the issue. Hopefully that helps others who are currently pulling their hair out!
I came up with a way to reproduce this on linux with a minimal window manager. It seems to be related to some interaction that happens with the window manager wants to grab button presses with XGrabButton and then pass those through with XAllowEvents.
First, run Xephyr:
Xephyr -br -ac -noreset -screen 1024x800 :1
Run vscode:
DISPLAY=:1 code . --disable-extensions
At this point, all scroll bars are working. I've checked the terminal scroll bar, editor scroll bar, and the extensions one.
Here's an example wm:
#include <X11/Xlib.h>
#include <stdio.h>
int main(void)
{
Display * dpy;
XEvent ev;
if(!(dpy = XOpenDisplay(NULL))) return 1;
XGrabButton(dpy, 1, AnyModifier, DefaultRootWindow(dpy), False,
ButtonPressMask|ButtonReleaseMask|PointerMotionMask, GrabModeSync, GrabModeSync, None, None);
for(;;)
{
XNextEvent(dpy, &ev);
if(!(ev.xbutton.state & Mod1Mask))
{
printf("XAllowEvents\n");
XAllowEvents(dpy, ReplayPointer, ev.xbutton.time);
}
}
}
To compile it:
gcc wm.c -lX11 -o wm
Run the example window manager:
DISPLAY=:1 ./wm
At this point, the editor scroll bar and extensions scroll bars no longer work. The terminal one continues to work.
We can use some other tools to gather more information:
We can get the window id of vs code by running:
DISPLAY=:1 xwininfo
Click on vs code inside Xephyr. It should display the window id.
With this, we can print xevents with xev:
DISPLAY=:1 xev -id 0x200002
When trying to scroll by clicking on the bar, I get the following output:
LeaveNotify event, serial 19, synthetic NO, window 0x200002,
root 0x52e, subw 0x0, time 1306485143, (1010,234), root:(1011,249),
mode NotifyGrab, detail NotifyAncestor, same_screen YES,
focus YES, state 256
EnterNotify event, serial 19, synthetic NO, window 0x200002,
root 0x52e, subw 0x0, time 1306485143, (1010,234), root:(1011,249),
mode NotifyUngrab, detail NotifyAncestor, same_screen YES,
focus YES, state 256
KeymapNotify event, serial 19, synthetic NO, window 0x0,
keys: 46 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
PropertyNotify event, serial 19, synthetic NO, window 0x200002,
atom 0x159 (_NET_WM_USER_TIME), time 1306485144, state PropertyNewValue
I think the thing that's throwing stuff off here is the LeaveNotify and EnterNotify. If you now kill the window manager, the scroll bars should correctly work again. Looking at xev, the LeaveNotify and EnterNotify events wont keep repeating, and only:
PropertyNotify event, serial 19, synthetic NO, window 0x200002,
atom 0x159 (_NET_WM_USER_TIME), time 1306911717, state PropertyNewValue
I got this bug, so should I change my WM? I'm using fluxbox.
I encountered this bug on Windows10. Closing all windows and reopening vscode (temporarily?) fixes this issue.
version : 1.80.0 660393deaaa6d1996740ff4880f1bad43768c814 x64
It seems to be related to some interaction that happens with the window manager wants to grab button presses with XGrabButton and then pass those through with XAllowEvents.
Some window managers, e.g. Fluxbox, send LeaveNotify/EnterNotify on click to ensure "activate window by click" feature. So sequence is:
LeaveNotify
EnterNotify
ButtonPress
EnterNotify
It's not a problem if application handles these events correctly. Internal flag indicating button pressed should be set on ButtonPress and reset on ButtonRelease events only. But if application (or underlaying library) reset the flag on LeaveNotify/EnterNotify, we observe such weird behavior: button press is ignored.
Hi all, I experienced a similar issue (https://github.com/microsoft/vscode/issues/144656) a while back and I was able to resolve it with this fix.
run code with --disable-features=SendMouseLeaveEvents
same problem https://bugs.chromium.org/p/chromium/issues/detail?id=713746
However, on newer vesions of VSCode the issue has returned. I have been using an older version (1.69.1), the last version before I encountered the bug again, for a long time now and need to update to the latest version.
I am also using fluxbox window manager.
Hi all, I experienced a similar issue (#144656) a while back and I was able to resolve it with this fix.
run code with --disable-features=SendMouseLeaveEvents same problem https://bugs.chromium.org/p/chromium/issues/detail?id=713746
However, on newer vesions of VSCode the issue has returned. I have been using an older version (1.69.1), the last version before I encountered the bug again, for a long time now and need to update to the latest version.
I am also using fluxbox window manager.
Same problem. Vscode 1.82.2-3 I use berry window manager.
I use ctrl button to drag vertical scroll bar.
Same problem. I use
VSCode:
Version: 1.82.1
Commit: 6509174151d557a81c9d0b5f8a5a1e9274db5585
Date: 2023-09-08T08:41:36.199Z
Electron: 25.8.0
ElectronBuildId: 23503258
Chromium: 114.0.5735.289
Node.js: 18.15.0
V8: 11.4.183.29-electron.0
OS: Linux x64 6.1.53
KDE:
Operating System: NixOS 23.11
KDE Plasma Version: 5.27.8
KDE Frameworks Version: 5.110.0
Qt Version: 5.15.10
Kernel Version: 6.1.53 (64-bit)
Graphics Platform: X11
Graphics Processor: llvmpipe
Hello. Workaround. The same problem. For me, vertical scrolling in the terminal panel works again when I close the left opened panel in the IDE (explorer, extensions, etc) Greetings
version 1.83.0 - works for me!
^ 1.83.0 still very much broken over here
Works with the special flag:
code . --disable-features=SendMouseLeaveEvents
Warning: 'disable-features' is not in the list of known options, but still passed to Electron/Chromium.
Clicking on scroll, dragging scroll or clicking on minimap does not work for me:
Version: 1.87.2 (Universal)
Commit: 863d2581ecda6849923a2118d93a088b0745d9d6
Date: 2024-03-08T15:21:31.043Z (1 wk ago)
Electron: 27.3.2
ElectronBuildId: 26836302
Chromium: 118.0.5993.159
Node.js: 18.17.1
V8: 11.8.172.18-electron.0
OS: Darwin x64 22.3.0
Go to VS Code settings, then search for "editor hover stick" to see if it's checked or not.
For me this has been fixed in recent versions.
Does this issue occur when all extensions are disabled?: Yes
Steps to Reproduce:
Apparently the scrollbar is "missing" the click event. Clicking on the scrollbar is actually sending the click in the current editor itself. I can see the change in the opacity of the scroll indicator, however on click-and-drag VSCode is selecting text from the editor pane instead of scrolling.
Also, left-clicking everywhere over the scrollbar is not scrolling (the correct behavior is to scroll up to the click position immediately). The only way to scroll immediately on click is to use the right click.
No problem scrolling using mouse scroll wheel, or clicking over the minimap.
Currently I went back to 1.55.2 and the issue is not yet there. I also tried in 1.56.0 and the issue is present, so the bug was introduced somewhere between these two versions.
My current desktop environment is Debian 10 with Fluxbox. I tested with a clean install (I removed
.vscode
and.config/VSCode
dirs). I also tried hiding the minimap. No effects, the issue is still there.