Add additional swipe mode - actions on swipe (i.e. Fleksy mode)#1898
Add additional swipe mode - actions on swipe (i.e. Fleksy mode)#1898ndom91 wants to merge 38 commits intofuto-org:masterfrom
Conversation
…ng thorugh next suggestions from next word
|
Really excited to see this merged. A UI suggestion: it's best to use radio buttons for mutually exclusive options. Maybe something like Swipe input
|
Yeah good shout - let me update this |
…s a misspelling of a dictionary word
…cent character (other than space)
… back up to non-dictionary words
|
@magvag no problem. Let me know if there's anything you think we should tweak. I've been daily-driving it since opening this PR and am pretty happy with it at this point. Recommended "Keyboard & Typing" settings to emulate Fleksy behaviour include:
Apk can be found on my gdrive here: https://drive.google.com/file/d/1U04Gr2siSExq_0H-rmcYY_TZK5RiWsXE/view?usp=sharing |
|
@ndom91 thanks! so far so good, will come back with feedback later! |
|
first bug! horizontal swiping on space bar should be a separate zone with its own triggers. right now both swiping and long pressing do not work as language switcher and cursor mover. edit: same goes for swipes from backspace, not sure it should be addressed. |
|
2: a swipe to the left removes spaces as a separate instance. e.g. "two words" will require 3 swipes to remove. 3: a swipe up to restore original spelling makes the cursor go wild. if you swipe up in the middle of some paragraph, the cursor ends up glued to the start of a next word. If you swipe in the end of that paragraph, cursor jumps to the next line. 4: swiping up past original spelling of the last word starts spamming next word suggestions (or is it the end of the list of autocorrection suggestions?) 5: currently the swipe to the left feels like "selecting a word manually and removing it". I can even see the blue highlighter and it feels rather slow on my low-ish end device. Would be easier to just reuse the logic under the "Backspace behaviour while holding or swiping: delete whole words" setting (will solve bug №2 as well) if you are feeling like making a whole new feature, an "Add/remove last word to personal dictionary" action PR would be terrific. Currently it's very cumbersome to add words to dictionary since it requires going into settings. And with this functionality it would be trivial to replicate Fleksy behaviour of adding or removing words to dictionary with a swipe up (bug №4) overall thanks for your marvellous contribution. if you need reproduction steps or videos, I'll be glad to make them |
If you look how Fleksy manages swipe corrections, you will see that it stores suggestions and original spelling for every word in a typed (in one session) text block, so if you move you cursor to another word, you will see its state and corrections. Having this type of structure is a fundamental change, might not be mergeable – but at the very least the swipe correction should be disabled if the word under/before it is not the target one |
|
Amazing, thanks for the detailed feedback! I'll try to knock some of the low hanging fruit ones out this week and come back with a more detailed response when I have a bit more time 🙏 |
7432c28 to
805effa
Compare
|
cca3d33 to
59da6e0
Compare
59da6e0 to
231c1be
Compare
|
@magvag okay I think I've got all your reported bugs squashed 🤞 I also fixed a bug regarding adding punctuation to the last word if theres a space between the cursor and the last word, instead of adding it after the space. Let me know how this build feels: https://drive.google.com/file/d/1R1W1xQ7W9TSnng4fI-Dh0tRNi4bAIFMI/view?usp=sharing I noticed that if you swipe down through suggestions and it recommends an emoji (i.e. from 'team' -> swipe down a few times), this kind of breaks the 'swipe back up to the original word' behaviour. As long as there are no emoji's though it should be fine as of that build haha. Can take a look at this again soon. This build feels really good imo. I feel really at home on this from Fleksy and I can move super fast in terms of text input again! |
|
@ndom91 I’ve been using it for a day and I think you are crushing it! Must more solid and faster too. I like how you can even use swipe down to finish a word with a first suggestion, which is how that gesture is done in #1923 (there really are a lot of Fleksy devotees). And the up/down swipes can be used not only on the last word! I’ve encountered a bug tho, when you replace a word in the middle of a text, move cursor to another word and swipe down there, it will be replaced with a correction for the previous word. Can record a video later today. I don’t know how you’ve done it (I suppose by pulling from the output for the suggestion bar), but that suggestion/correction pull should be done each time a cursor moves IMHO. Wondering if the original spelling for each word is stored somewhere too already? The biggest gripe as of today is swiping up/down not recognized when expected — I really need to make a proper long swipe for that. I suppose that’s because vertical swipes are shorter than horizontal ones and the whole swipe recognition was made for space/backspace swipes. Could you perhaps make two developer settings with swiping length threshold / sensitivity coefficients for vertical and horizontal swipes, so we can figure out a comfortable setting? P.S. Can confirm, emoji suggestion behave weird and start multiplying when swiping on them. |
|
Thanks for the feedback! Will take a look at your latest bug report. I think I know what you mean, once you have it loaded up with the history of suggestions for one word, so you speak, if you change the cursor to another word it would apply those suggestions there then when swiping up/down, right? It builds a cache off the suggestion list and it isn't clearing it on cursor move correctly most likely. Ideally I don't want to modify this project any more than necessary, outside of this new feature of course, but I agree it'd be nice to have some global swipe sensitivity settings in addition to distance, like tolerance for off angles. I played around with the values in this branch a good bit to match my preferences / muscle memory for swipe distance and tolerance for angle offsets (off of the perfect vertical / horizontal swipe), but of course that won't make everyone happy. But yeah I've been daily driving this build since the other night as well and am super happy with it so far too. Will get those bugs squashed and hopefully another maintainer can help us get it merged soon then 🤞 |
|
@magvag okay I think I've got the emoji and up/down different word bug fixed here 🤞 https://drive.google.com/file/d/1GJ-KsSTSW6FhoO-WO_om8tR3sInW0Zgq/view?usp=sharing Appreciate all the testing!! |
|
@ndom91 daily driving it for a few hours and it feels great! Totally understand your desire to not overload this PR with features. The swiping tolerance is just a matter of muscle memory for me, no big deal to relearn. Have found a rather rare bug: if you move a cursor in between space and the first letter of the word, swipe left will remove this word and not the word before it. E. g. "real |deal" to "real |" Otherwise it's only the suggestion bugs I mentioned in PR 1923. Thank you so much for your contribution, typing with this feature is a blast! |
Not strictly necessary, but significantly helped me feel like I was getting closer to the typing speed I had with Fleksy
SettingsRadiocomponent for this new settings section.Question: