- backport the latest version of scrolling

(cherry picked from commit 69618c0d56882ac65594247c5f2d7189ccfa3077)