(In reply to greg v [:myfreeweb] from comment #71) > Yes, "smooth scrolling" is exclusively about wheels/keyboards — a more accurate name for it would be "simulate smoothness by interpolating pixel-precise events from line scrolling events" or something. It's not really interpolating anything. It's just taking the destination of the scroll (e.g. "1 line below current position"), and instead of jumping to it immediately, an animation is launched which follows a predefined curve to take you to the destination over several frames. If another event is received while the animation is in progress, the animation's destination is updated and the current position along the curve is recomputed. For this reason... (In reply to Yariv from comment #80) > In any case I see no problem with enabling both kinetic scrolling and a smoothing filter, so we can get the better of both worlds. ... it's not just a matter of enabling a "filter". Pan gesture events (which is what Greg's patch switches to using, instead of wheel events, and which is what enables kinetic scrolling) have never been hooked up to trigger animations the way wheel events do with smooth scrolling (mostly because trackpads generally send events frequently enough that there's no point). We could conceivably try to hook that up, but it would involve additional work beyond what Greg's patch currently does, and it would be an unknown in terms of the impact it would have given the variety of trackpads out there. I wonder if the issue is that some trackpads or trackpad + driver combinations do not generate events often enough, or generate events that are not precise enough, to feel smooth with instant scrolling (no animations). If so, the next question would be is whether we can identify such trackpads programatically, and make our behaviour conditional on them.
Bug 1213601 Comment 84 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
(In reply to greg v [:myfreeweb] from comment #71) > Yes, "smooth scrolling" is exclusively about wheels/keyboards — a more accurate name for it would be "simulate smoothness by interpolating pixel-precise events from line scrolling events" or something. It's not really interpolating anything. It's just taking the destination of the scroll (e.g. "1 line below current position"), and instead of jumping to it immediately, an animation is launched which follows a predefined curve to take you to the destination over several frames. If another event is received while the animation is in progress, the animation's destination is updated and the current position along the curve is recomputed. For this reason... (In reply to Yariv from comment #80) > In any case I see no problem with enabling both kinetic scrolling and a smoothing filter, so we can get the better of both worlds. ... it's not just a matter of "enabling a filter". Pan gesture events (which is what Greg's patch switches to using, instead of wheel events, and which is what enables kinetic scrolling) have never been hooked up to trigger animations the way wheel events do with smooth scrolling (mostly because trackpads generally send events frequently enough that there's no point). We could conceivably try to hook that up, but it would involve additional work beyond what Greg's patch currently does, and it would be an unknown in terms of the impact it would have given the variety of trackpads out there. I wonder if the issue is that some trackpads or trackpad + driver combinations do not generate events often enough, or generate events that are not precise enough, to feel smooth with instant scrolling (no animations). If so, the next question would be whether we can identify such trackpads programatically, and make our behaviour conditional on them.