Currently, when there are new scroll coming in, the previously queued smooth scrolls are all aborted. However, scrolls with type UserScroll should have higher priority than ProgrammaticScroll and shouldn't be aborted by ProgrammaticScrolls.
An example is smooth scroll of "Find" in Android. After user tapping "Find", the smooth ScrollIntoView of the target is queued. However, the virtual keyboard also disappears at this moment, causing the viewport to reset its offset and abort the queued smooth scrolls. In such circumstances, it is the later ProgrammaticScroll that should be aborted, not the user's smooth scroll.
Comment 1 by bugdroid1@chromium.org
, Dec 17