There are a number of cross platform programs I use on OS X that use "scrolling" for zooming and don't have this problem (Google Earth, which is Qt based, and a number of Java programs come to mind). So it should be possible to get this to work better in Stellarium without doing a lot of extra work to support gestures and pinch zooming.
I'm not a programmer, I have minimal experience with Qt, and I'm not in a position to start hacking on Stellarium, so I apologize if the following comment is not helpful.
"There are two ways to read the wheel event delta: angleDelta() returns the delta in wheel degrees. This value is always provided. pixelDelta() returns the delta in screen pixels and is available on platforms that have high-resolution trackpads, such as Mac OS X."
Stellarium's behaviour *seems* like it uses low resolution values because I need to pull my fingers on the trackpad for quite a long distance before it responds at all to the scroll event, and when it does respond, it zooms a relatively large amount. The ideal behaviour would be to zoom continuously as I'm pulling my fingers over the touchpad, and allow zooming just a little bit.
Isn't the key to the solution using the high resolution value from the pixelDelta() member function (on OS X, as this might not be available on other platforms)?
There are a number of cross platform programs I use on OS X that use "scrolling" for zooming and don't have this problem (Google Earth, which is Qt based, and a number of Java programs come to mind). So it should be possible to get this to work better in Stellarium without doing a lot of extra work to support gestures and pinch zooming.
I'm not a programmer, I have minimal experience with Qt, and I'm not in a position to start hacking on Stellarium, so I apologize if the following comment is not helpful.
Looking at the Qt docs,
http:// qt-project. org/doc/ qt-5/QWheelEven t.html
I see this:
"There are two ways to read the wheel event delta: angleDelta() returns the delta in wheel degrees. This value is always provided. pixelDelta() returns the delta in screen pixels and is available on platforms that have high-resolution trackpads, such as Mac OS X."
Stellarium's behaviour *seems* like it uses low resolution values because I need to pull my fingers on the trackpad for quite a long distance before it responds at all to the scroll event, and when it does respond, it zooms a relatively large amount. The ideal behaviour would be to zoom continuously as I'm pulling my fingers over the touchpad, and allow zooming just a little bit.
Isn't the key to the solution using the high resolution value from the pixelDelta() member function (on OS X, as this might not be available on other platforms)?