-
-
Notifications
You must be signed in to change notification settings - Fork 373
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rework audio and haptic feedback of FlorisBoard #1142
Conversation
Very nice! |
I'm not a contributor, but I think the examples (the |
I agree, the e.g. stuff gets cut off, making it hard to read, moving it to the description would indeed be a solution. |
I've now moved the e.g.'s in the description, looks a lot better. Additionally I've fixed some bugs, adjusted default values and added input feedback to the Smartbar and the one-handed buttons (they were silent before). I've tested out the behavior and will now merge it into master, so I can have it in the next beta release for additional feedback and eventual bug reports on the new implementation. |
Were the types of vibration intended to be different in perceived strength? I find that, in my device, the other vibration types are weaker than the key press vibration. Also, should further bug reports be reported in this pull request? If not, would there be a discussion thread? |
Yes, this is fully intended. I did this because in my testing it was very annoying that things such as the repeated action or moving swipe vibrate in full strength rapidly (it just feels so weird), so these vibrations are reduced in strength.
That's a good question. A discussion thread will be made when I do the beta release, for now if you have a bug report just post it here. |
I see. I'll keep an eye out for that thread! Other than that, I tinkered more with the debug artifact and found some potential bugs:
|
Strange, it does for me. Does the preference "Use vibrator directly" make any difference?
What Android version are you on? Only Android 8.0 and newer support this value, before that version I can only specify the duration. |
I'd like to point out that this setting, assuming this is its full name, could probably be phrased more expressively. Continue on, gentleman! |
Ok ok I agree the preference name is a bit two-phrased now that you say it haha. If in combination with the description it is less worse: An alternative frontend UI string I propose would be "Control hardware vibration directly", which is a long title though. What do you think of this title? (If you have a better title I am also open for suggestions :) ) |
I like that the current heading is short, but the one you suggested sounds better. Additionally, I don't think most people know what an API is 🌝. Putting "Android" into the long description might make it easier to understand. A non-tech-savy description might be sth. like "Trigger vibration directly instead of asking android to do it" |
It being on or off makes no difference, sadly.
My phone is on Android 10.
I think it's good. The alternative titles I've thought of are "Bypass system's vibration settings" or "Ignore system's vibration settings" but they aren't much shorter than your title. |
This sounds amazing. Is it correct, @patrickgold ? |
Actually, I don't think that's correct, as I've just realized that that title is already used as another option! That's a facepalm, to be honest 😄 |
Ok thanks for clarifying, will debug the input feedback manager tomorrow, maybe I can catch the bug.
Nope, it is not correct. There's a setting above the vibrator one which is named exactly like this and indeed checks a system setting if system-wide touch vibration is enabled or not. The use vibrator one literally decides if I call Another suggestion for the vibrator preference: Title: Trigger vibration directly It has a short title but a non-tec-savy description IMO. What do both of you think of this option? |
I like it a lot, go for it! :) |
I like it. I also prefer it over "Control hardware vibration directly". The only thing I want to do is add why this option is necessary in the summary, so the option would look like:
This summary could entice users to enable the option. I don't think there is a problem with enabling it unless it's unnecessary or even harmful, but I'm not sure if it is either of the two. |
I just discovered that while >=Android 8.0 devices supports providing an amplitude in the Vibrator service, many devices have no hardware amplitude control support and then the amplitude (which is basically the value of strength but adjusted) is just ignored. I will add this to the summary of the vibration strength preference. |
Enabling this is never harmful, as I just do a short one-shot vibration effect. Neither unnecessary, more like a personal preference of the user. The only devices where the haptic feedback API is actually good and even better than using the vibrator is on Google Pixel devices. Seems like Google devices have some well-implemented haptics on a hardware level, thus using the vibrator directly is a step back. |
#1150 is the "part 2" of this rework, which overhauls the mentioned UI strings and also adds some more descriptive summaries for the vibration strength and why it won't work (if your device is affected). @klaurence as you have had this PR's debug artifact, could you also try out #1150's and test the settings panel of the audio/haptic panel? Thanks in advance! |
These make sense.
I'm currently having issues with downloading the artifact, but once the issues disappear, I'll update you. |
The vibration strength option is grayed out and says that my device doesn't support amplitude control, which explains the bug, frankly. The new "Trigger vibration directly" title and summary strings appear in my phone just fine too. Other than that, nothing in the artifact's settings seems out of the blue for me. Thank you for the bugfix! |
I added this because else I suspect I will continue to get issues for the vibration strength and why it won't work. Thanks for testing it out. I will merge the improvements in and they will be released in beta09 either tomorrow or on Sunday. |
commit bcbf561 Author: Patrick Goldinger <patrick@patrickgold.dev> Date: Sat Aug 14 18:39:16 2021 +0200 Fix popup merge bug for group assigned keys (florisboard#1028) commit 813f300 Author: Waelwindows <Waelwindows@users.noreply.github.com> Date: Sat Aug 14 12:49:56 2021 +0300 Adjust Arabic popups for main forms and remove nums (florisboard#1087) This commit makes the most common popups the main ones which should allow Arabic sub-layout users to use FlorisBoard's smart popup feature. commit a356585 Author: Patrick Goldinger <patrick@patrickgold.dev> Date: Fri Aug 13 19:59:16 2021 +0200 Fix 5+1 keyboard layout bug (florisboard#1100) commit 689881f Author: dvrnynr <80413364+dvrnynr@users.noreply.github.com> Date: Fri Aug 13 18:12:43 2021 +0200 Remove popups not related to Turkish commit d473369 Author: Patrick Goldinger <patrick@patrickgold.dev> Date: Fri Aug 13 14:37:03 2021 +0200 Improve haptic feedback UI and internal logic commit 5fcd605 Author: Patrick Goldinger <patrick@patrickgold.dev> Date: Thu Aug 12 15:33:18 2021 +0200 Possibly fix repeating delete key commit 2ea9dfe Author: Patrick Goldinger <patrick@patrickgold.dev> Date: Fri Aug 13 18:51:12 2021 +0200 Fix theme editor preview looking distorted (florisboard#1136) commit 07ad682 Merge: efc03a9 1c8523c Author: Patrick Goldinger <patrick.goldinger@pm.me> Date: Thu Aug 12 12:31:32 2021 +0200 Merge pull request florisboard#1142 from florisboard/input-feedback-manager Rework audio and haptic feedback of FlorisBoard commit 1c8523c Author: Patrick Goldinger <patrick@patrickgold.dev> Date: Thu Aug 12 12:14:07 2021 +0200 Adjust input feedback feature toggle internals commit 84f682a Author: Patrick Goldinger <patrick@patrickgold.dev> Date: Sun Aug 8 11:57:05 2021 +0200 Add new InputFeedbackManager
This PR adds a completely revamped settings panel for audio and haptic feedback when pressing keys, doing gestures, etc. and fixes a lot of bugs / unexpected behavior etc.
Audio/haptic feedback screen
The new audio/haptic screen is accessible where the old settings for sounds & vibration where located.
The feature toggles may change and do not work fully yet, still working on it.
Fixes
0
. Fixes Android Vibrator incorrect amplitude causing crash #824 and fixes Crash when setting vibration to 0 #859Known issues currently