-
-
Notifications
You must be signed in to change notification settings - Fork 108
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
More visual options for gesture typing #944
Conversation
Why? You can just disable the floating preview and see the word in suggestion strip.
Why? I can see that you would want it shorter, but im my opinion just reducing the default would be enough. (I'm not sure why this time actually exists, but I don't use the floating preview except when testing).
Please do not change existing translations. The string name might not be fully correct any more, but iirc that's the case for some others too. |
The static preview is a reduced-motion visual option that looks nice. The center-suggestion can be pretty cramped, especially if there's a lot of toolbar keys. The moving preview can be hard to track with your eyes, while the static one keeps that visual prominence without moving all over the place. It's good to have this as a way of honoring system reduced-motion without turning the preview off entirely. It also looks less janky when gesturing with multiple fingers, even if recognition for that still isn't really there. I really prefer it myself, and the code for it is really simple. I've simplified the preview timeout configuration. Rather than have its own setting, it's just the trail fadeout duration divided by four—equal to the previous default. This really simplifies the settings and looks pretty slick across the board, compared to the unnecessarily janky configs you could do before. From this, I consider that "todo: make configurable" to be resolved. |
c396b79
to
3e843a7
Compare
I've once again broken my branch and need to shove it back to normal... |
There's just a few bullet points before I consider this "complete." How to handle the old translations for "Dynamic floating preview?" I've assumed the summary is no longer reliable across languages for one or the other, so it's been removed. Currently, the string If animations are toggled in the system settings, the moving preview setting is updated to match. But currently, this only applies when the app is initially loaded (reboot, force stop, etc.) or the keyboard theme is force-updated by the gesture settings page. Is there a simple way to watch for changes to that setting and force-update as needed? Not that folks are toggling animations regularly, but it would be best for polish. Speaking of, I tried applying the force-update approach to my fast typing cooldown setting as well, but |
Sounds fine, thanks!
Alright, then let's have it in there.
Possibly there is some listener for system settings. Did you check whether this triggers
This is unexpected.
Existing strings should not be changed, even if the name does not match any more. I found that any change has too much potential for creating issues with Weblate. You can adjust the comment above the string, as far as I know this is shown in Weblate. Maybe you could name the new floating preview setting something like |
… to the system default
83da7fb
to
21de7e7
Compare
they call me wood chips because my branches are broken. Ok anyways, I've given up on that listener because I just couldn't get it to apply the change when triggered. Similar situation to the fast typing cooldown, something in there just causes those setting values to lag behind in certain circumstances. For now, it should adapt to system reduced motion at install and reboots. I can finagle it later, maybe it has something to do with that The best clue that I have is that I don't see the MainKeyboardView constructor actually explicitly invoked anywhere. String keys have been fixed to not change, summary string is deleted. We now have static preview and configurable gesture trail lifespan. |
they call me wood chips because my branches are broken. Ok anyways, I've given up on that listener because I just couldn't get it to apply the change when triggered. Similar situation to the fast typing cooldown, something in there just causes those setting values to lag behind in certain circumstances. For now, it should adapt to system reduced motion at install and reboots. I can finagle it later, maybe it has something to do with that The best clue that I have is that I don't see the MainKeyboardView constructor actually explicitly invoked anywhere. String keys have been fixed to not change, summary string is deleted. We now have static preview and configurable gesture trail lifespan. |
btw all the
Ah, the wonders of the Android view system... Do you want to try some more? If not, I'd merge it as is. |
I'm definitely dormant on the settings listener for now, I'll come back to it once I've learned more about how Android works. I don't plan on any more work here, but I'll open a minor issue about the aforementioned things. |
This patch creates 2 new options for gesture typing visuals:
More pondering...
This closes #942. even though I've not done adjustable trail width yet. If added, that'd need to apply to the regular trail as well as the sliding one. In the future, I think it'd be a good idea to do that and also disable the sliding trail with the regular one. More reduced motion 😌
That'd entail making the gesture settings page always visible, since the sliding trail is relevant regardless of whether a library is loaded. Maybe you could move a few more in there too, like the library loader and key swipe stuff.