rxhanson / Middle-Community

Discussion, Bugs, and Localization for the Middle app (for macOS middle clicking)
https://middleclick.app
21 stars 40 forks source link

Three Finger Click on trackpad intermittently stops working #50

Open GregoryHinton opened 2 years ago

GregoryHinton commented 2 years ago

Three Finger Click on the trackpad will sometimes stop working for no obvious reason. Then, sometime later, it will resume working; again, for no obvious reason.

This has been happening to me several times a day. Unfortunately, I've been unable to discern any common denominator, so I can't reliably reproduce it. It just seems to happen randomly.

While in this state, the Viewer shows 3 finger contacts as it should but it doesn't flash gray when I click. Whatever app I'm using at the time will treat it like a 2-finger click. Fn-Click always seems to works normally. Also, when I set Middle to use Three Finger Tap or One Finger Force Touch I have yet to see any problems. It seems to be limited to Three Finger Click. I've tried disabling all gestures that use 3 fingers in System Preferences > Trackpad but the problem still happens.

I most often see this while browsing with Firefox 103.0 but it also occurs with Safari 15.6 and other apps. I'm using Middle 1.7.5 (82) on an M1 max MacBook Pro running macOS 12.5.

Coincidentally, after finding this github repository and deciding to submit an issue, the problem started occurring. But by the time I signed into github and clicked on "New issue" it was working normally again. Very sneaky! I'll continue trying to reliably reproduce it; but, as I said, so far it seems completely random.

rxhanson commented 2 years ago

Thanks for reporting. At a start, it would help me the most if you could send a screen recording with the touch viewer visible while it's not working. That way I can get a better handle on if it has any relation to touch positioning / macOS touch rejection, or if it is something else. It's likely that I'll have to create a build with some fine grain logging.

c0pland commented 2 years ago

Thanks for reporting. At a start, it would help me the most if you could send a screen recording with the touch viewer visible while it's not working.

Since OP didn't reply, I will. I'm really frustrated as I've just bought your app a week ago and it doesn't work as it should. Screen Recording 2022-09-08 at 17.38.10.mov.zip

rxhanson commented 2 years ago

@c0pland thanks for the recording, and apologies for the frustration. On the positive side, we can go ahead and rule out the touch positioning being the issue, since it's apparent that you have three touches detected. Do you have three finger tap, or click configured?

One thing we can try first is to change where Middle is receiving touch input from to the private framework: in the about window, select Debug > Use Private Framework. For some users this will fix this type of issue since the touch API can sometimes be affected by process outside of Middle, and the private framework will sometimes sidestep that. Let me know how that goes and we can dig deeper.

If you're unhappy with the purchase, just send me an email directly to support@middleclick.app and we can sort it out.

c0pland commented 2 years ago

@rxhanson I have the 3 finger click selected since that's what I want to use. The 3 finger tap works perfectly. Using private framework didn't help, it still happens randomly. What else should I try?

rxhanson commented 2 years ago

@c0pland Thanks for the additional information. I'll need some fine grain detail on timing. If you are willing, please use v1.7.8 and send me the log file: https://middleclick.app/downloads/Middle1.7.8.dmg

The log file will be located at: ~/Library/ApplicationSupport/Middle/middle.log

With this level of logging, you don't want to always have it running - just reproduce the issue, and if possible follow a failed attempt with a five finger click so I know where to look in the log. Then quit the app and send the log to me, without restarting the app since that will clear the log file.

Depending on what I find in the logs, I will either be able to make an adjustment that you can test in a follow up build, or this could be a scenario where Middle is doing what it's supposed to do with the data it is provided, and it's just not getting sufficient or accurate data from macOS. If it is the latter, then the issue could be related to other applications running on your Mac or something else that's outside of my control. The public & private touch data APIs unfortunately don't come with a 100% guarantee of consistency in all circumstances - hence the free trial for the app. In that case, I don't mind issuing a refund for a recent purchase.

c0pland commented 2 years ago

@rxhanson I followed the steps you mentioned, took about 3 failed attempts to 3 finger click and then followed it by two 5 finger clicks. middle.log

rxhanson commented 2 years ago

@c0pland Thanks for the log. Please try v1.7.9 and let me know if it fixes your issue.

https://middleclick.app/downloads/Middle1.7.9.dmg

c0pland commented 2 years ago

After testing it for 3 days, the bug seems to be eliminated in v1.7.9, thank you so much @rxhanson !

rxhanson commented 2 years ago

@c0pland Thanks for the help getting this one figured out - glad it's working properly now.