微軟新貢獻:進一步優化Chromium的滾動特性
基於谷歌的開源瀏覽器Chromium,近日微軟面向Windows 10、Windows 7和macOS平台推出了首個Edge Beta版本。新版本中引入了諸多新功能,並有望在近期的版本更迭中獲得增強版滾動特性。
今年早些時候微軟已經提交了名為“Compositor threaded scrollbar scrolling”的commit,通過“continuous-scrolling”(持續滾動)特性的原型設計,讓滾動功能更加的平滑順暢,允許瀏覽器在您單擊並按住滾動條箭頭時順利執行滾動。目前Edge和Chrome瀏覽器的Canary通道版本可以通過啟用實驗性Flag來啟用這項特性。
而近日微軟再次提交了新的Commit,希望在按下(或者按住)滾動條箭頭的時候能夠啟用流暢滾動特性,並為自動滾動過渡動畫啟用播放/暫停功能。
微軟表示這項改變允許當鼠標光標從滾動條箭頭/跟踪邊界上移出時候自動暫停滾動動畫,直到重新回到這個界限範圍內才會重新恢復。微軟工程師寫道:“這個CL部署是服務於Compositor threaded scrollbar的一項功能。”
目前這個Commit已經被標記為“Active”,應該會在近期的Canary通道版本更新中啟用。微軟還分享了該特性的技術細節:
這樣做的方式是,當您按住可自動滾動的ScrollbarPart時,會發布一個回調以創建滾動動畫。如果ScrollbarPart保持超過250毫秒,則將執行此回調。在mouseup上,動畫被中止,因此停止自動滾動。自動滾動動畫是常量且永久的,直到中止。
根據另一項提交的Commit,微軟的流暢滾動部署還支持無限自動滾動:
這個CL能夠啟用無限滾動。每幀都會監視滾動圖層的長度,如果長度增加(如果正向旋轉正在進行中),舊動畫將中止,新的滾動條長度的新自動滾動動畫將啟動