florisboard / florisboard

An open-source keyboard for Android which respects your privacy. Currently in early-beta.
https://florisboard.org
Apache License 2.0
5.84k stars 393 forks source link

Use universal haptic constant for keyboard press #2298

Open scottjenson opened 11 months ago

scottjenson commented 11 months ago

The current haptic is a very old school 50ms vibrate call which is very buzzy and doesn't feel good and I'd argue will encourage people to turn haptics off. There is however, a haptic constant that you can use that is implemented on all Androids, not just Pixels:

https://developer.android.com/reference/android/view/HapticFeedbackConstants#KEYBOARD_PRESS

Just call this constant instead, if will feel GREAT on Pixels, but also Samsung, and nearly every other mid-tier android. For really low end phones, it will be just like what you have now.

scottjenson commented 11 months ago

p.s. I work on the haptics team at Android so if you have any other questions, I'm happy to help.

BloodRaven0 commented 11 months ago

Maybe it depends on the phone and what haptics motor each uses, as well as personal preference, but I actually prefer the haptics on FlorisBoard to these on other keyboards (like Gboard), because it feels heftier and more responsive. I use Poco X3.

It would be cool if we could customize the duration of the vibrations in milliseconds, so every user can make it to their liking.

scottjenson commented 11 months ago

A) Only a tiny fraction of users actually find and use settings B) Users don't prefer vibrator haptics C) We have user studies of 100s of users to back up both of these points

BloodRaven0 commented 11 months ago

A) The default could be set to the "haptics constant", and the option to change it is there for users who want it. B) People who use OSS apps are more likely to be tech savvy and want to fine tune their experience via settings.

I don't see why you're against customizability. It's a situation in which everyone wins. Have your cake and eat it too, as they say.

scottjenson commented 11 months ago

I'm not against it at all. I'm just saying that the vast majority of users won't use settings so finding the right default is critical. Users like you will certainly find then and offering to make it whatever you want is fine. My point is that even open source users don't tend to use settings very much.

tsiflimagas commented 11 months ago

Hi, thank you for your report and for your offer to help! Actually, what you want is already implemented. Go to Settings>Keyboard>Sounds & Vibration>Vibration mode and select "Use haptic feedback interface".

scottjenson commented 11 months ago

Thanks great to hear, thank you. I realize this might be contentious but I'd suggest making haptic feedback the default. I've got more user studies than you'd care to read to show it's preferred by the vast majority of users. But, obviously, it's your call.

xxxcrow commented 7 months ago

Just a personal review I have a pixel, and not sure how it really works on other devices I used to turn the haptics off, but they started just making the vibration time shorter But yeah, there are two times of vibrations, i'm not sure what feels more loud and disturbing