Microsoft says that it has made several “personality improvements” to scrolling in Edge and that some have come to Chromium as well.
“We’re working to learn from our past experiences to improve scrolling for both Microsoft Edge and all Chromium-based browsers,” the Microsoft Edge team writes in a new post. “Together with the Chromium community, we are working to deliver meaningful user experience and performance improvements that will be more sustainable over time.”
The most interesting thing in this post, honestly, isn’t what Microsoft has done with scrolling in the new Edge, nor is the work it’s done to bring as much of that as possible to Chromium. Instead, it’s the admission that its work with the original proprietary version of Edge was so flawed. Many lauded the native capabilities of legacy Edge, in particular, it’s scrolling. But Microsoft now says that model was untenable.
“Tight operating system integration meant that we couldn’t bring the experience to other OSes, including previous versions of Windows,” the team continues. “Even worse, while processing input and output independently from the browser’s main thread improved the responsiveness and allowed for a stable frame rate, it didn’t work great for script[s] that performed updates based on frame updates, leading to jitter, one of the most common pieces of feedback we received at the time.”
The poor design of legacy Edge eventually led to an even bigger issue, Microsoft says: Broken websites.
“As time went on … some features were incredibly hard to support in this model due to the dependency on the OS compositor – fixed position content with clipping ancestors, content with negative z-index, some z-index: auto scenarios, and CSS filters,” the Edge team says. “In those cases, our users could experience missing or incorrectly clipped content, leading to non-interoperable experiences between browsers – broken sites.”
With regards to the new Edge, Chromium, and scrolling, Microsoft now says that the biggest amount of feedback it gets now is about what it calls “scroll personality,” the way scrolling feels, and how it matches how the underlying operating system works and feels. Functional issues—where scrolling doesn’t work as expected on specific sites, or general issues with wheel, touch, touchpad, keyboard, or scrollbar-based scrolling are a close second.
For this reason, Microsoft decided to focus initially on scrolling personality and performance. And the following features are now available on all shipping versions of Edge, regardless of channel or platform (where appropriate; Mac doesn’t support touch):
Improved impulse and touch fling animation curves. Microsoft has brought a new animation curve to Chromium and the new Edge that gives every mouse wheel, keyboard, and scrollbar scroll—plus touch flings—the smooth personality users experienced in legacy Edge.
Percent-based scrolling. Previously, Chromium browsers use fixed scroll delta values (100px per mouse wheel tick, or 40px per scrollbar button click or keyboard arrow press). But Microsoft changed this behavior to match legacy Edge, which used scroller height to compute scroll deltas. “Percent based scrolling is a great functional addition making it much easier to navigate smaller scrollers,” Microsoft says.
Overscroll bounce effects on the root scroller. Overscroll bounce is a signal to the user that they’ve reached the end of a page while scrolling, Microsoft explains. (Some call this “rubber banding”.) In its user studies, Microsoft saw that over 70 percent of users preferred the overscroll bounce effect, so it’s now enabled for both touch touchpad input in Edge when scrolling in any direction.
Additionally, Microsoft also changed some of the behaviors between legacy Edge and the new Edge because some behaviors were not well-liked. A feature called scroll chaining—an effect that scrolls the parent scroller once the sub-scroller has reached its bounds—was perceived as a bug by many users, so it’s been removed; Edge now uses a Chromium feature called scroll latching, where all scrolling manipulation is directed to the same scroller until a certain amount of time passes with no scroll, instead. The firm also removed quick flick, which produced large scroll deltas when a user made a short but fast flick gesture on the screen.
“We’re looking to make the new Microsoft Edge not just a carbon-copy of [legacy Edge], but an improvement that combines the best of Chromium with the best of [legacy Edge],” the team explains. “To that end, we’re evaluating other personality improvements and are investigating how to enable those in the coming updates.”
Tagged with Chromium