tst-wheel_and_double icon indicating copy to clipboard operation
tst-wheel_and_double copied to clipboard

Shift-scroll for scrolling the tab sidebar doesn't stop on shift release

Open maxaxehax opened this issue 6 years ago • 10 comments

First: Many thanks for the effort to restore old functionality I couldn't imagine living without after FF 57!

I've found the following issue which I've been able to reproduce reliably. First off, my options:

image

Reproduce like this:

  1. Expand enough tabs so that the tab sidebar shows a scrollbar. Given the options, scrolling should (and does) switch tabs instead of scrolling the sidebar.
  2. Shift-scroll should (and does) scroll the sidebar.
  3. After scrolling the sidebar like this, the sidebar-scrolling behavior stays enabled even after releasing the shift key.

The only fix seems to be to "Save options" in the addon settings, perhaps trigerring some re-registration. I have a burning suspicion this could be related to the problems in issue #6 where an auto-update can be ruled out as the cause (since for users who don't require shift to sidebar-scroll, the behaviour would change as soon as the tree gets large enough and apparently doesn't switch back to tab switching on its own)

maxaxehax avatar Dec 11 '18 08:12 maxaxehax

Hi mhaaz, I can recreate this on my end. That feature was added by a contributor. I'm going to ping them and see if they would like to check it out. It seems like the detection of when shift is being pressed and released is off. It might be due to some change in Firefox itself, because the feature worked when it was added.

Hi, @AllenAnthes do you have time to check out this bug?

joshuacant avatar Dec 11 '18 14:12 joshuacant

I should be able to poke around a bit later today.

AllenAnthes avatar Dec 11 '18 16:12 AllenAnthes

@joshuacant @mhaaz I haven't been able to reproduce the bug. Could I get any extra information you can think of that could be related? Versions of Firefox, TST, TST-wheel, your OS, etc?

AllenAnthes avatar Dec 14 '18 22:12 AllenAnthes

Windows 10 x64, build 1809 (Latest) Firefox Dev Edition, x64, 65.0b4 (Latest) Tree Style Tab 2.7.1 (Latest) TST Mouse Wheel and Double Click 1.3 (Latest)

(Note: The following steps assume you have enough tabs and a small enough vertical window for the tab sidebar to scroll.)

Here's the exact behavior I see (which I believe matches what mhaaz reported), upon checking the "Enable shift to scroll" box and hitting save:

  1. Place mouse over tab sidebar.
  2. Rotate mouse wheel.
  3. Scrolling works normally.
  4. Hold down shift.
  5. Rotate mouse wheel.
  6. Tab view scrolls for the very first wheel rotation, then ceases to work.
  7. Release shift.
  8. Rotate mouse wheel.
  9. Tab view scrolls freely.

At this point, it is no longer possible to change tabs with the wheel. If you hold down shift again and scroll, nothing happens. Tabs don't change. View doesn't scroll. However, if you release shift, and then scroll, the view scrolls freely again. The only way to restore normal operation is to uncheck shift to scroll and hit save, at which point everything works normally again.

My guess is that it's something in Firefox being weird, and probably down to the OS level. I wonder if mhaaz and I both use Windows and you use something else? @mhaaz what OS are you running?

joshuacant avatar Dec 14 '18 22:12 joshuacant

Still not able to reproduce. I tried on Standard, Developer, and Nightly. I'm also on Windows 10.

I hate the pass the buck but could it potentially be another addon interfering?

I'll leave the options on and see if I notice anything but the shift-scrolling isn't a functionality I generally use.

AllenAnthes avatar Dec 14 '18 22:12 AllenAnthes

Yeah, I don't use it either, to be honest. Maybe it is another addon. I'll try to see if I can narrow it down.

Edit: Even when I disable every addon except TST and Mouse Wheel, it still happens. It could be a Firefox setting, it could be a TST setting, it could be something else on the PC. @mhaaz if you want to, you can try testing with a blank/new Firefox profile, see if it works, then see if you can narrow down what the trigger is.

joshuacant avatar Dec 14 '18 22:12 joshuacant

It looks like there are a couple problems here.

One seems to be a regression in TST or Firefox where the scrolled message sent to tst-wheel_and_double has a deltaY of zero when the shiftKey is held down. This bug might be platform dependent. I'll notify Piror of this issue.

Strangely the deltaY is correctly -1 or 1 when the altKey is held down, so swapping the modifier keys would be a workaround.

The other issue seems to be unintentionally asking TST to change tabs immediately after scrolling the window.

EDIT: I propose changing this feature to the Alt key (Option key on Macs) to be platform independent. I strongly suspect that Firefox on macOS interprets the shift modifier as a horizontal scroll and this won't be corrected in TST.

amandamana avatar Dec 19 '19 20:12 amandamana

I don't use this feature at all, so I don't really have any opinions. If someone wanted to fix it up and send a PR, I'd merge it.

joshuacant avatar Dec 19 '19 23:12 joshuacant

Would holding Alt while scrolling Firefox on Windows conflict with a default function, such as giving focus to a menubar?

EDIT: add reference to https://github.com/piroor/treestyletab/issues/2433

amandamana avatar Dec 21 '19 17:12 amandamana

It seems that on Windows, Alt+Scrolling = Forward/Back. I think it must be a built-in feature of Firefox. I didn't test with all my addons disabled, but it's unlikely I have something that would have added that.

joshuacant avatar Dec 21 '19 21:12 joshuacant

Alt-scroll is a firefox built-in feature. The alt+scroll action is controlled by the config string mousewheel.with_alt.action (with possible values and related settings outlined here though that page seems somewhat out of date with the defaults). This is actually kept separate from the mousewheel.with_meta.action, too.

chrstfer avatar Jan 27 '23 16:01 chrstfer

first of all,thanks a lot for this add-on, it may be the reason why many people use FF, but may I ask is Shift-scroll still working? I tried many times but it seems the scrollbar is the only way if anyone can reply I would be so grateful

Cl00m avatar Jul 16 '23 13:07 Cl00m

I just tested it out (it's not a feature I use or added) and it doesn't seem to be working right. It works a little bit and then gets stuck in window-scroll mode and won't go back to tab-scrolling mode until the setting is toggled off and saved. Is this what you experience?

joshuacant avatar Jul 16 '23 22:07 joshuacant

thank you so much for reply! for me, it doesn't seem to work at all, Windows 10 ;FF is 115.0.2 (64 bit) TST 3.9.15;TST Mouse Wheel and Double Click 1.5; if any other information is needed, I would give it as soon as possible, thanks again for your reply!

Cl00m avatar Jul 17 '23 00:07 Cl00m

Hi all, I have uploaded a beta version to AMO with some changes that could possibly affect (or fix?) this scrolling bug. If you would like to try it out, visit this link: https://addons.mozilla.org/firefox/downloads/file/4181773/tree_style_tab_mouse_wheel-1.5.4.xpi

It's a fully signed extension by Mozilla, so you can install it in normal Firefox, but it's not pushed out via the main channel. So if you encounter any problems you can let me know and then downgrade to the published version 1.5 here: https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab-mouse-wheel/

Feedback would be appreciated.

joshuacant avatar Oct 16 '23 21:10 joshuacant

I've been informed that at least some people are getting an error on that addons.mozilla.org link. I uploaded the test XPI here: https://github.com/joshuacant/tst-wheel_and_double/releases/tag/1.5.4

joshuacant avatar Oct 16 '23 21:10 joshuacant

I haven't run into any issues with this test build since I uploaded it back in October. I'm going to release it and mark this issue as closed as no one replied. If anyone here is still using this addon and notices bugs with the new version I'm about to publish, please open a new issue.

joshuacant avatar Feb 19 '24 16:02 joshuacant