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

Issue 711182 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner: ----
Closed: May 2018
Cc:
Components:
EstimatedDays: ----
NextAction: 2017-04-24
OS: Linux
Pri: 2
Type: Bug



Sign in to add a comment

Odd behavior with scroll events highlighted by react-virtualized

Reported by stevedel...@gmail.com, Apr 13 2017

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36

Steps to reproduce the problem:
1. Go to https://plnkr.co/edit/yn7eOIa5jN5oINuQ2IG9?p=preview
2. In the Preview Window, scroll the left list down a bit.
3. Now scroll the right list.

What is the expected behavior?
The left list should remain visible while scrolling the right list as can be seen in firefox and safari.

What went wrong?
As you scroll the right list, the left list blanks out until scrolling is stopped.

Did this work before? N/A 

Chrome version: 57.0.2987.133  Channel: stable
OS Version: 
Flash Version: Shockwave Flash 25.0 r0

I initially thought this was an issue with my implementation of react-virtualized's api, but after a response from the creator: http://stackoverflow.com/questions/43377474/how-can-one-combine-an-autosizer-list-with-a-windowscroller-list-properly-using

I'm lead to believe that this is a chrome issue.
 

Comment 1 by junov@chromium.org, Apr 13 2017

Components: -Blink Blink>Paint Blink>Scroll
Status: Untriaged (was: Unconfirmed)
Confirmed on 57.0.2987.133/Linux
Components: -Blink>Paint Blink>Compositing
Labels: -Pri-2 BugSource-User Hotlist-ThreadedRendering PaintTeamTriaged-20170413 M-57 Needs-Bisect Pri-1
NextAction: 2017-04-24
Also in M58 linux. When the mouse-down happens on the scroll bar for the right element we repaint the left list to blank, then paint it properly again when the mouse up happens after scrolling.

Removing will-change: transform on the left scroller makes the issue disappear, so this is a compositing issue.

A bisect is required.
Mouse-up/mouse-down is not required. Just dragging without lifting the mouse reveals the issue.

In the left pane, React is adding and removing list elements (divs) at absolute positions with top set to position the element at the correct location within the scrolling layer. At any given time, only the divs for the visible region of the scroller are in the DOM.

When the right pane scroll begins moving, we repaint the left pane incorrectly, while scrolling we do not repaint the left frame (we shouldn't) and when scrolling stops we repaint again and get the correct content.

If you scroll the left pane just a little, you can see that we do paint content that is visible with 0 scroll offset, as if it were positioned with 0 scroll offset. But we do not repaint content that is visible only at the current scroll position. This makes me think that the compositor code is at fault here, always compositing the scroll offset 0 content during the mouse move.

I'll dig some more trying to see what the JS/CSS does when the scroll is happening, as there are definitely some dynamic changes.

Comment 4 by bokan@chromium.org, Apr 13 2017

Owner: schenney@chromium.org
Status: Assigned (was: Untriaged)
schenney@, assigning to you while you investigate.
Labels: -Needs-Bisect
OK, I have a bisect on Linux.

I found 399529 is a good version and 425230 is bad version. Bisect points to this set:
https://chromium.googlesource.com/chromium/src/+log/d50f0b14f31a77d7c18296dde00e54a07687d06b..49cbf7dc7508bec4920ed325afa0b57749795ac1

schenney@: could you take a look at the above list? Could it be:

Raster display item lists via a visual rect RTree. by wkorman
Labels: -M-57 M-60
Nothing jumps out. It might be the rtree though.

I'll double check, and try to get a per-commit bisect.
Cc: schenney@chromium.org
Labels: -Pri-1 -M-60 Pri-2
Owner: wkorman@chromium.org
The rtree patch does indeed seem to be to blame, although I have no idea why it would. I don't think this is a P1. Though the content disappears while scrolling, it does reappear promptly and functionality is not lost (you can't do anything in one pane while scrolling another). 
Cc: wkorman@chromium.org
Owner: ----
Status: Available (was: Assigned)
I don't expect to get to this soon, unassigning self in case others able to look.
Labels: -Hotlist-ThreadedRendering
Project Member

Comment 10 by sheriffbot@chromium.org, May 18 2018

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Status: WontFix (was: Untriaged)
Works now, it seems. Closing.

Sign in to add a comment