Thanks for the report, Ali.
I can reproduce this. It looks a lot more subtle on my computer, but by opening the devtools and toggling the
overflow-y: auto; on the
<div class=storeScrollArea> element it becomes pretty clear.
What I have figured out so far, is that in
update_transform() for the scrollable list of stores,
state.coordinate_system_relative_scale_offset.y ends in
.5. As of bug 1620014, we now snap that here, whereas previously it was not being snapped.
state.coordinate_system_relative_scale_offset comes from the parent node's
content_transform, which is the combination of a few different things, but the
.5 is coming from here. (All the other contributing offsets are whole numbers, and there is no scale.)
info.source_transform is in this case a
PropertyBinding::Value rather than a
PropertyBinding::Binding, so I guess the value is coming from the display list gecko sends?
Andrew, any ideas what the problem is here? The intention of bug 1620014 was to snap animated tranforms (specifically scrolling, but css animations would probably be okay too), not non-animated ones. Is it surprising that we get this result when we snap non-animated transforms?