E14 : Trackpad Discussion Only

Discussion in 'HP' started by bmzero, Jul 23, 2010.

Thread Status:
Not open for further replies.
  1. flipkun

    flipkun Notebook Guru

    Reputations:
    1
    Messages:
    72
    Likes Received:
    0
    Trophy Points:
    15
    The first implementation was able to do this, but it was sort of buggy: I am able to move the cursor, then go into scrolling mode without any issues in this version. However, when removing the second finger after scrolling in order to get back to moving around the cursor, I find that it is locked.

    Possibly an improved version of pinch-zoom? It's WAYYYY smoother on macs than with synaptics (though this is probably due to the OS in some way, so it may not be possible). Thanks very much for updating this, I appreciate it!!
     
  2. Friendly0Fire

    Friendly0Fire Notebook Consultant

    Reputations:
    8
    Messages:
    135
    Likes Received:
    0
    Trophy Points:
    30
    Hmm... I hadn't thought you'd want to scroll then lift a finger to move around again. The way it's designed right now indeed locks it down (I tend to do swipes when scrolling so I never had an issue with that).

    Unfortunately pinch zoom would most likely require knowledge of where each individual finger is, which the SDK does not provide. I don't think it's possible.
     
  3. reil

    reil Notebook Guru

    Reputations:
    45
    Messages:
    62
    Likes Received:
    0
    Trophy Points:
    15
    a suggestion about momentum. when doing multiple swipes with two fingers, it queues multiple momentums and keeps going outside of the users control.

    in the beginning of the handle packet, if there is a finger present, it probably makes sense to cancel the previous momentum. this would also prevent multiple momentums from happening.

    i re-wrote two-finger-scroll envy last week (using vs 2010, so it might need .net 4.0) and i'm attaching it for a contrast of implementation/behavior. it was written for personal use so is not very configurable, it just behaves how i want it to.

    it has:
    -inertial scroll using robert penner's easing algorithms. (depending on how fast you were scrolling, it will go farther. touching the pad will stop the inertial scroll)
    -three finger swipe back/forward,
    -1/2/3 finger tapping (double tap and drag for 1 and 2 fingers)
    -two finger scrolling.

    i'm not really developing it anymore as it fits all my current needs (unless someone knows how to invoke aero peek from a c++ app). if someone wants the source, just ask.

    two licensing things:
    robert penner's easing algorithms license
    the icon license

    link to app:

    edit: removed link, see later post.
     
  4. zeth006

    zeth006 Traveler

    Reputations:
    83
    Messages:
    2,796
    Likes Received:
    1
    Trophy Points:
    55

    NOTE: Include this file in the same directory as the software:

    http://www.dll-files.com/dllindex/dll-files.shtml?msvcr100

    Testing out your version. Two-finger tap to right-click runs better than on the MBP! Repping you for that as that's an amazing development (SUCK ON THAT APPLE FANBOYS!). I can't seem to get inertial scrolling to work. When I try to open up the popup, it zooms through what looks like 1,000,000 options then closes immediately. Also 3-finger middle click needs some fine-tuning.
    Also need to work on my palms causing the touchpad to jump.


    EDIT: Got inertial scrolling to work SOMEWHAT. Soon as you click on the dropdown menu, you have to make sure to capture one option. Or use your arrow to move down a few at a time.
     
  5. zeth006

    zeth006 Traveler

    Reputations:
    83
    Messages:
    2,796
    Likes Received:
    1
    Trophy Points:
    55
    Yep. As a tester, here's my assessment:

    +Two-finger right click is fantastically implemented. But I may turn it off as it sometimes conflicts with two-finger scroll. If you could put in an option to turn off two-finger tap, that'd be great. The other "X" options go backward or forward.

    -Still need something to prevent palm from hitting touchpad and moving the cursor

    -Inertial scrolling shows promise. I'm tweaking with the settings and getting it closer and closer to MBPlike settings. Will post SS later if I get there.

    -Major issue bug. When I try to do basic stuff like change some settings in Synaptics or click on a tab in slickdeals.net for some reason it gets registered as a double click even though I tap just once. Try it out to see what I mean.


    EDIT2: Trying to find out which easing algorithm works best. I love the inertial concept, but i may have to go back to the other 0.1 version as this one interferes with palm settings. Almost seems to turn down palm check.
     
  6. Mike415

    Mike415 Notebook Evangelist

    Reputations:
    66
    Messages:
    498
    Likes Received:
    0
    Trophy Points:
    30
    Awesome. After this program the trackpad is insanely good. Three finger gestures finally work all right. The only problem I have now is the click on drag using the physical push of the keys getting stuck which I use for gestures in Chrome or the occasional highlighting. For example I will be left clicking by physically pressing the key and using another finger to move the cursor and then the cursor will just fail to move all of a sudden and wont until I let go. Especially annoying when dragging a file somewhere and it gets stuck over a folder I dont want it to get dropped into.

    Anyone have any ideas? I realize the click and drag is there too, but edge motion is also now gone.
     
  7. classcix

    classcix Notebook Guru

    Reputations:
    0
    Messages:
    56
    Likes Received:
    0
    Trophy Points:
    15
    yeah i noticed a serious problem with the palmcheck recently, possibly because of installing this program (not sure). my left and right palms hitting the touchpad triggers both the scroll and the right click, its unbelivably frustrating. It happened like 4 times already just writing this paragraph.
     
  8. reil

    reil Notebook Guru

    Reputations:
    45
    Messages:
    62
    Likes Received:
    0
    Trophy Points:
    15
    tapping will take precedence over scrolling. if you tweak the tap threshold and distance, to smaller values (depending on how you tap), it does alright. i'm at 150/20.

    for inertial, i use easeOutSine and a 800 (ms) duration. its fairly natural to me. i gave up trying to mimic a macbook (or iphone) since macbooks scroll at pixel level while windows has mouse wheel level (which is 1 line minimum).

    the palm check thing is probably true. i don't check any W or Z values. i don't know how synaptics maps the palm check values to Z values.

    i don't have your major issue. you have to turn off tapping in the synaptics settings. i don't lock out other software from receiving taps (since i personally don't have anything else running that reacts to tap events), so every tap can be reacted to by multiple software.

    anyway, added max w and z threshold configuration, this will probably help with palm check:

    edit: had a bug, removed a line of code i wasn't supposed to.
    edit2: added max z to scrolling too. i don't think w will help here.

    link
     
  9. zeth006

    zeth006 Traveler

    Reputations:
    83
    Messages:
    2,796
    Likes Received:
    1
    Trophy Points:
    55
    Will try tomorrow while at coffeeshop. Getting bored in my apartment and it's LATE!
     
  10. reil

    reil Notebook Guru

    Reputations:
    45
    Messages:
    62
    Likes Received:
    0
    Trophy Points:
    15
    looking at the packet data that my palms can generate on the pad, i don't think its possible for someone to completely prevent the palm from triggering a tap or scroll. if the palm hits the edge of the pad (or is lightly pressed against the pad), it will have W and Z values exactly like a finger would generate.

    with the max w and z thresholds, it triggers a lot less often than it did before.
     
Loading...
Thread Status:
Not open for further replies.

Share This Page