Summary of User Request
On Linux the UI uses smooth scrolling, which is annoying especially with a free-spinning mouse wheel.
Disable the smooth scrolling by default, or at least add some option to disable it.
Response and Plan
Seems like a small thing but getting quite a few complaints about this. I personally hate the smooth scrolling and would be happy to kill it, but it is actually a bitch to add as an option, or even turn off by default on Linux.
The smooth scrolling is a feature of Chrome / Chromium, on which Electron is based, which in turn the BugJail Application is built on, and the feature cannot be controlled easily. For some reason Chrome / Chromium on Windows has smooth scrolling turned off by default, usually, but on some/many/all Linux distros it's on.
See notes at the bottom of this page if you care, or see the workarounds directly below if you don't, and just want to kill it.
Linux (and Windows, in case smooth scrolling is on for some reason)
- Chromium, and thus Electron, and thus BugJail's desktop application supports command line option -disable-smooth-scrolling that gets rid of it.
- On Windows you can add shortcut to BugJail.exe with that extra option.
- On Linux how to do this depends on what Desktop Environment you use; some allow doing it easily, and some require bit more fighting. [TODO add here instructions for the KDE change that I use myself]. If you need help with killing smooth scrolling in particular Desktop Environment just submit support request.
- And on both, you can of course just start the BugJail desktop application directly from command line and manually pass the option.
- Apparently the full story is that the smooth scrolling originated from macOS, and because some heroes thought it was the best thing ever, they added 'macOS-like-smooth-scrolling-emulation' to Chrome / Chromium. As result, it seems that Chrome / Chromium doesn't do smooth scrolling on macOS, and whatever scrolling behaviour you are seeing is straight from operating system level. On older versions of macOS the smooth scrolling can be disabled via "System Preferences" | "Accessibility" | "Scroll without inertia". Newer versions of macOS seem to have removed the smooth scrolling entirely, after infecting Chrome and Firefox with it, thanks Steve.
Notes for Implementation
There's a few different ways how the smooth scrolling could be turned off for Windows and Linux.
- A: Turn it off by default, via changing the shortcuts, launch commands etc that are created by installers and distribution packages. The current distribution package builder (Electron Builder) does not support this, so there would be fair amount of work. In addition some package types, like flat ZIP and TGZ currently contain and launch via direct executable, so the launching would need to be wrapped to .bat or .sh.
- B: Electron's main process allows setting some command line arguments, but not this one unfortunately. There is an open Github issue for adding support for this option. Can't be that difficult, so we could just do it and send PR. Sounds easiest alternative really.
- C: The flag can be toggled via the chrome://flags url, but seems that chrome://flags cannot be accessed programmatically for safety reasons, and in addition it doesn't work at all in Electron, by default. Could check if chrome://flags can be enabled on Electron, and if it can then this would be fairly clean workaround.
- D: Pulling a Spock; the flag that can be set via chrome://flags must be saved somewhere in the file system, because it is persistent. Therefore it must be possible to just knife the file where the damn flag is persisted.