Re: Smooth scrolling
Hi Max, I've had a small look at your work. I've often had requests to do this by users who assumed this would work the same way as pointer acceleration, which unfortunately it doesn't. So I have a small comment and a suggestion. The comment first; from your rationale: The new event would specify the scrolled range in pixels or inch (needs to be decided!)... The problem I see is that it's really degrees or cycles on a wheel, or some distance on more freaky devices (e.g. pad on mouse). Maybe it's preferable to add some (user-overrideable) axis information which toolkits may use to ultimately do something sensible. Now for my suggestion: when things work fine (i.e. not now ;), you may want to add acceleration to the scroll wheel. The ptrveloc.h header contains the necessary methods to create an 'acceleration context', feed it with the wheel data and map it over acceleration functions. I think some windows drivers implement such a feature. In case you're interested, just mail me. Cheers, Simon Am 02.04.2010 20:12, schrieb Max Schwarz: Am Freitag 02 April 2010 19:46:55 schrieb Dima Ryazanov: I would love this feature. I'm running Linux on a MacBook, and smooth scrolling is the one feature I miss from OS X. Glad to hear someone else noticed it :-) I started a repository on github (http://github.com/x-quadraht/pscroll) and imported a few projects that might need to be changed. But after becoming more familiar with the X.org architecture I realised the fix actually might be quite small. I've already modified xorg-input-evdev to send exact relative wheel motions again, and report the resolution back to X.org. No change to X.org itself was required. The applications can identify the right valuator via XI2 and get the resolution info. So what's missing is support in frameworks like GTK/Qt, and the change of the synaptics input driver. The frameworks just need to detect the new valuator via XI2, and listen to the valuator events instead of the old button presses (which will still be sent out). As I'm just finishing another project of mine, I won't have time for pscroll in the next two weeks, but after that at least a patch for firefox should be ready, as that is the most annoying occurance of clicky-scrolling for me. (firefox uses it's own scrolling system, not GTK's) Max ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg
Re: Smooth scrolling
I would love this feature. I'm running Linux on a MacBook, and smooth scrolling is the one feature I miss from OS X. ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg
Re: Smooth scrolling
Am Freitag 02 April 2010 19:46:55 schrieb Dima Ryazanov: I would love this feature. I'm running Linux on a MacBook, and smooth scrolling is the one feature I miss from OS X. Glad to hear someone else noticed it :-) I started a repository on github (http://github.com/x-quadraht/pscroll) and imported a few projects that might need to be changed. But after becoming more familiar with the X.org architecture I realised the fix actually might be quite small. I've already modified xorg-input-evdev to send exact relative wheel motions again, and report the resolution back to X.org. No change to X.org itself was required. The applications can identify the right valuator via XI2 and get the resolution info. So what's missing is support in frameworks like GTK/Qt, and the change of the synaptics input driver. The frameworks just need to detect the new valuator via XI2, and listen to the valuator events instead of the old button presses (which will still be sent out). As I'm just finishing another project of mine, I won't have time for pscroll in the next two weeks, but after that at least a patch for firefox should be ready, as that is the most annoying occurance of clicky-scrolling for me. (firefox uses it's own scrolling system, not GTK's) Max ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg
Re: Smooth scrolling
On Fri, 2 Apr 2010, Dima Ryazanov wrote: I would love this feature. I'm running Linux on a MacBook, and smooth scrolling is the one feature I miss from OS X. sorry for 'hijacking' the thread, but on the occasion it reminded me one feature i quite miss in Xorg for bit weaker machines (or insane resolutions, in which even pretty decent ones seem 'slow' ) idea would be to defer scrolling updates, so i.e. just tiled pattern would be scrolled up, each 2nd line , etc. (there would have be many of such 'cpu saving' patterns as various hardware benefits from various methods, and also various users have various preference depending also on various application, i.e. for text scrolling each 2nd. line would degrade quality of text rendering it unreadable and making scrolling tiresome,but i.e. large solid tiles or blocks would allow to quickly scroll i.e. to next paragraph without loosing focus on the text). point of this to allow quick (and sometimes also visually smooth) scrolling not taking much of cpu and not blocking pci/agp/whatever bus significantly. ofcourse once user stops scrolling (or reaches slow enough scrolling rate), contents of scrolled element/window should be updated usual-way. ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg
Smooth scrolling
Hi, I'd like to make a proposal for mouse wheel handling. Today's pointer devices often have the capability to get more resolution on the mouse wheel velocity than the old click-by-click wheels. For example, for an IBM TrackPoint user the EmulateWheel option is very nice, but it's very disconcerting to see the screen move 3 lines at a time instead of one smooth motion. Same behaviour with mouse wheel emulation on touchpads. I know that there are attempts to correct this on the client side (i.e. Firefox smooth-scrolling) but because of the missing resolution in Xinput events the clickety-feel remains. I'm ready to put considerate effort into this issue, I just need someone with experience to tell me where to start. I see two ways of improving the resolution: 1) Just send more axis up/down button events This would break compability. Old software just expecting a few button ticks would suddenly scroll wildly. 2) Provide additional axis events with true resolution I realize that the GUI frameworks would also need work to make them use the new interface. Thank you, Max Schwarz ___ xorg@lists.freedesktop.org: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: http://lists.freedesktop.org/mailman/listinfo/xorg