New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 744579 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug-Regression



Sign in to add a comment

Scrolling with scroll wheel not possible if visiblity: hidden

Reported by king-s...@hotmail.de, Jul 17 2017

Issue description

UserAgent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36

Steps to reproduce the problem:
1. Set parent element CSS to visibility: hidden.
2. Set child element(s) CSS to visibility: visible.
3. Try to scroll when theres a overflow. Its not possible (sometimes it is, but then after some scrolling it stops and isn't possible anymore)

What is the expected behavior?
Scrolling shall be possible all the time.

What went wrong?
I've created a fiddle. If you open it with Firefox, Edge or IE you can scroll the box. (You will notice it because it is a gradient). In Chrome you can't scroll it.

https://jsfiddle.net/5f54g4sw/

Did this work before? No 

Does this work in other browsers? Yes

Chrome version: 59.0.3071.115  Channel: stable
OS Version: 6.1 (Windows 7, Windows Server 2008 R2)
Flash Version:
 
Labels: Needs-Triage-M59 Needs-Bisect
Able to reproduce this issue on Latest Canary#61.0.3160.0 for 'Win7'.
Cc: ranjitkan@chromium.org
Labels: -OS-Windows -Type-Bug -Pri-2 -Arch-x86_64 -Needs-Bisect -Via-Wizard-API -Needs-Triage-M59 M-61 OS-All Pri-1 Type-Bug-Regression
Owner: msten...@opera.com
Status: Assigned (was: Unconfirmed)
Able to reproduce the issue and is broken in M51 on Windows, Mac & Ubuntu 14.04. Issue is observed on Stable 59.0.3071.115 and as per above comment on canary as well. Below are the bisect details for the same:

Bisect info:
============
51.0.2686.0 - Good Build
51.0.2687.0 - Bad Build

Bisect URL:
===========
https://chromium.googlesource.com/chromium/src/+log/6bebadddb399ad1c1f91592efed410040617e708..5840ac85a7c912d9ddb764007b6a9ec65a26ad22

Suspecting below change could be a possible culprit:

Change-log:
==========
https://chromium.googlesource.com/chromium/src/+/8796ca1186b3ff3e3da105b3ee41f1698be01821

@ mstensho: Assigning to you, kindly take a look into it. Please help us to find an owner if not with respect to your change.

Thanks.!

Comment 3 by msten...@opera.com, Jul 19 2017

Summary: Scrolling with scroll wheel not possible if visiblity: hidden (was: Scrolling not possible if visiblity: hidden)
I can scroll it just fine with the arrow keys on the keyboard, but not with the scroll wheel on the mouse. I'm assuming this is the issue? Otherwise, I misunderstood.

Attaching a demo. Please verify that this is the issue you're talking about. Removing visibility:hidden on the scrollable container makes the problem go away, FWIW.
demo.html
348 bytes View Download
Sometimes it is possible to scroll this with the arrow keys and sometimes its not, but I don't know why.

I've done a little bit of investigation and figured out it is sometimes possible to scroll even with the mouse wheel. But if it is possible, its very limited (e.g. it works for about 2 seconds and then the functinality is just gone again). The same counts for the arrow keys.
It worked only with the developer tools open so far. It worked more often after I've resized the window and scrolled immediately after. 


Comment 5 by msten...@opera.com, Jul 19 2017

I really don't think the blamed CL is the one, though. It's purely multicol specific, and there's no multicol in the tests here.

Comment 6 by msten...@opera.com, Jul 19 2017

Cc: skobes@chromium.org dtapu...@chromium.org szager@chromium.org msten...@opera.com
Labels: -Pri-1 Pri-2
Owner: ----
Status: Available (was: Assigned)
https://chromium.googlesource.com/chromium/src/+/ca4feba9a31e10d1baab5813650c192e06cfd643 is probably a better candidate. CCing author and a couple of scrolling experts in Blink (since I suspect the root cause is in Blink). Lowering priority, since it's a very old regression. Unassigning myself.
Cc: flackr@chromium.org smcgruer@chromium.org
Labels: Hotlist-ThreadedRendering
Status: Untriaged (was: Available)
flackr@, smcgruer@ please triage. This is another issue related to threaded scrolling that occurs but really shouldn't.
Owner: flackr@chromium.org
Status: Assigned (was: Untriaged)
This seems to belong on the list of effects of hit testing/ event routing failures.

flackr to group and redirect...
Components: Blink>HitTesting
It is probably the case that the hittest is not hitting because the element is hidden. The other browsers must be special casing this in some way.
flackr, any update on this issue?
Cc: nzolghadr@chromium.org
flackr@ is still OOO for another week.

However I cannot reproduce this using the original fiddle on Ubuntu 71.0.3578.98. nzolghadr@, can you confirm if you can reproduce (I may just be doing it wrong).

I will run a when-was-it-fixed bisect later today but would appreciate confirmation of whether others can reproduce or not.
I tested on Mac and Windows as well and I am able to scroll with mouse wheel.
Hrm, when bisecting I saw that it seems improved but not perfect. There is a definite jump from when it doesn't move at all to when it moves almost all the time, but I was able to reproduce a few cases where it seemed to get 'stuck' at the top of the scroll for multiple seconds before I was suddenly able to wheel-scroll again.

The bisect also pulled out a very strange CL:

You are probably looking for a change made after 552588 (known bad), but no later than 552589 (first known good).
CHANGELOG URL:
  https://chromium.googlesource.com/chromium/src/+log/7bbdb70b2643201e9ec6236443b7b2003deaf03d..fb1ccf02ee8ca79e1404abfd3a3a7d540b7d2dbd

https://chromium.googlesource.com/chromium/src/+/fb1ccf02ee8ca79e1404abfd3a3a7d540b7d2dbd

'Make --site-per-process the default on ToT via fieldtrial_testing_config'


Confirmed that using --disable-site-isolation-trials reproduces the original broken behavior. 

So this can still be reproduced when the scroll target *isn't* out of process (interesting!) e.g. at https://output.jsbin.com/jataxag
Owner: nzolghadr@chromium.org
It seems the scroller is not composited, looks like blink side problem.

Sign in to add a comment