macOS touchpad gestures glitching

Issue #831 resolved
Former user created an issue

Also affects Detail and Layout modes.

Pre-requisites: Trackpad settings as attached as three screenshots from Settings.app.

To reproduce:

Open a pattern with reasonable number of items (say, a jacket) and zoom to approx 60% (screenshot from Valentina.app).

Press command (⌘) and use two-finger gesture to zoom/pan up down and left to right.

Observe erratic behaviour. It's neither zooming or scrolling.

I suspect some sort of conflict.

Comments (30)

  1. Douglas Caskey

    Considering the fact the program does not handle gesture events, it is performing as programmed.

    I would assume that IF there is any "erratic" behavior it is the result of some gesture events being interpreted as mouse events.

    That said, I would suggest to get a (Logitech?) wireless mouse with a wheel & middle button... it will function much better with greater control than the touchpad.

  2. Former user Account Deleted reporter

    @DSCaskey have you reproduced the bug on Apple hardware and are you a Valentina maintainer?

    Unless answer to both questions is 'yes', I would suggest that your response is redundant and counterproductive. This is not a discussion forum. This is a technical bug tracker. Please take such comments to an appropriate medium, like an internet discussion forum. Please refrain from further hijacking and diverting this bug report.

    Thanks.

  3. Roman Telezhynskyi repo owner

    are you a Valentina maintainer?

    @JZ this project has only one maintainer and it is me. I know @DSCaskey only as Seamly2D user.

    As to the issue with touchpad i believe code base just doesn't support touchpad. But now i have one and can try to fix it.

  4. Former user Account Deleted reporter

    this project has only one maintainer and it is me.

    That's what I thought. Thanks for clarifying.

    Back to the bug:

    It 'feels' like the two finger up/down is interpreted as zoom input from HID but trackpads generally allow for two dimensional 'pan' event.

    My gut feeling is that with a mouse only one of them is sent at any given time (pressing the scroll wheel to pan makes it unlikely it will scroll up/down). On the trackpad both of those can be sent together and I suspect this is what causes the behaviour.

  5. Roman Telezhynskyi repo owner

    Now i understand why do you want support for trackpad. I like work with it very much!

  6. Former user Account Deleted reporter

    Please reopen.

    There is a problem with panning up/down and left/right.

    The slightest pan gesture is moving the work area three steps. So it's not possible to pan accurately.

    I think it's a remnant of mouse-scroll that scrolls multiple lines at one time.

    Tested with valentina_0.6.0a-20180422134221_64bit-OSX.dmg

  7. Roman Telezhynskyi repo owner

    I believe this is independent issue. If we are speaking about horizontal and vertical scene scrolling seems like it is not adopted for sensor data. Scrolling step is too big.

  8. Former user Account Deleted reporter

    If we are speaking about horizontal and vertical scene scrolling

    Yes, that's what I meant by 'panning'

    Scrolling step is too big

    Correct.

  9. Ronan Le Tiec

    I have a basic mouse with a scroll-wheel on ubuntu. Before your improvment, it was way to fast indeed. Now it's to slow. Like you said in your blog-post, it's empiric and everyone will feel it differently.

    You mentioned in your blog-post that it might be a possibility to implement an editable setting for the speed of the mouse. I think that would be a good idea, so that everyone can configure the way they best like it. That's something I could also help with (after I took care of the curve stuff).

    A question would be if it's possibile for a normal mouse-wheel to have the scrolling happen faster when you scroll fast, and having it happen slowly when you scroll slowly.

  10. Roman Telezhynskyi repo owner

    A question would be if it's possibile for a normal mouse-wheel to have the scrolling happen faster when you scroll fast, and having it happen slowly when you scroll slowly.

    I made two options:

    1. Controls scrolling zoom. You should scale it up in your case.
    2. Controls acceleration.

    There is no such thing as scrolling faster or slower in case of a scroll-wheel mouse. This is of course how i understand it. The basic idea is simple. We have 350 milliseconds to scroll. Each update interval, 40 milliseconds, the animation happens and make some portion of scroll. The more closer we to the end, the more we get from our "debt". Because a user continue scrolling the debt became bigger. Each time we add new portion, we accelerate whole debt by multiplier. Make small scroll and acceleration will have smaller effect. Maybe someone have better idea, but i spend several hours and satisfied for now with the result.

  11. Former user Account Deleted reporter

    I think the 'debt' you mentioned on your blog is what Apple calls rubber-banding. I like the idea to implement it for regular mouse.

    Followup question:

    When user presses middle mouse button (the scroll wheel) and starts moving the 'page' around, does that rubber-band or is that 1:1 mouse movement? I think it should be the latter.

  12. Roman Telezhynskyi repo owner

    As to settings. As temporary solution we could add options to setting file. From there you could set your settings. But this is not solution for all.

  13. Roman Telezhynskyi repo owner

    I think the 'debt' you mentioned on your blog is what Apple calls rubber-banding. I like the idea to implement it for regular mouse.

    Some new terms, don't think i understood you correctly.

    When user presses middle mouse button (the scroll wheel) and starts moving the 'page' around, does that rubber-band or is that 1:1 mouse movement? I think it should be the latter.

    I will use Qt terminology. When you press a middle mouse button you will call the ScrollHandDrag. When you press a left mouse button you call the RubberBandDrag.

  14. Ronan Le Tiec

    Controls acceleration.

    I don't see any acceleration happening, when it doesn't matter how I scroll, it seems always constant. I can make a video in the next days maybe to show you.

    When user presses middle mouse button (the scroll wheel)

    I don't now for how long this function was here but I just discovered it and love it!

    As to settings. As temporary solution we could add options to setting file. From there you could set your settings. But this is not solution for all.

    Yes that can be the first step. The second can be to be able to enter a value in File > Configuration

  15. Roman Telezhynskyi repo owner

    I don't see any acceleration happening

    It's hard to see, but it there. You can play with qreal PrepareScrolling(qreal scheduledScrollings, QWheelEvent *wheel_event) yourself.

    I don't now for how long this function was here but I just discovered it and love it!

    I added it ages ago. :)

  16. Former user Account Deleted reporter

    I checked out code from Github 10 minutes ago and built it and the scrolling is much improved at lower speeds.

    I still feel that the acceleration is perhaps a bit too much but it could be a personal preference and as such would be satisfied with a Preferences option.

    Overall, good resolution, pending an adjustable 'acceleration'.

  17. Roman Telezhynskyi repo owner

    I checked out code from Github 10 minutes ago and built it and the scrolling is much improved at lower speeds.

    Why do you use GitHub mirror at all? I post there changes only from time to time. Mostly in cases where i need to build packages. And the improvement is not there yet. I recommend you to switch to using HG repo. Don't tell me you have bias toward using HG? :)

    Also we cannot anymore talk about acceleration on Mac with sensor devices after the last improvement. I switched to using native acceleration.

  18. Roman Telezhynskyi repo owner

    Use an application pref to edit & store _zoom_factor_base... which is used here:

    Yes, this option also could be good to have in option. But i did not ask about zooming factor. This discussion is not about zooming so let's not create an offtopic.

    Here's a short vid

    Very good indeed!

    my build

    I remember you mentioned that you have your private changes. Why don't make at least part of them public?

  19. Former user Account Deleted reporter

    Re github, my mistake, I saw you say something about pushing to github and assumed that was the source I should be using. I'll pull from bitbucket now. No problem with HG at all!

    Apologies for (my) confusion.

    Re acceleration, that's great, thanks!

  20. Ronan Le Tiec

    Before your improvment, it was way to fast indeed. Now it's to slow.

    To give you the heads up, I installed the new Ubuntu 18.04 (before I was using a Debian). Now it's not slow anymore. I don't know if it had to do with my Debian distribution, or because I did a complete new build, but now it's all fine :-)

  21. Log in to comment