I am wondering about some shortcomings in text input tools on Android. IIUC, it is a system on-screen keyboard that pops-up in all (or most?) applications so I believe it can be considered an OS-level tool.
Just to name most noticable shortcomings that I encountered when I started with the text input on a smartphone.
- Lack of "undo" command when I type (or delete/cut/paste etc.). How can I e.g. undo last delete commands? Say if I've typed and accidentally deleted a lot of text, am I supposed to retype it all!?
- Lack of keys to control selection and the caret. The only way to select text or move the caret is to hold the fingertiup on the text and drag to select. Which can be really frustrating at times. And on a mini-smartphone it is close to impossible to do some operations involving text selection or placing cursor at certain position.
Also, for example when I use voice input, I don't have much control of what's going on, the voice recognition itself works great, but seems there is not much that I can do to effectively control the input, but maybe this it depends on the 3d party tools. E.g. Google voice recognition widget has only Mic button and backspace button. Another phone I have has nothing, just switch back to keyboard button when recording.
So my questions are:
- Just in case I am missing the point - are default input tools OS-level? (i.e. should appear in any app like Web browsers or WhatsApp by default)
- If so, how comes these tools get positive approval by QA/usability tests? The above mentioned features are very basic and I can't see any reason why they are lacking.
One of my assumptions is that maybe the OS provider (Google) leaves the initiative to customize the input tools to the phone manufacturers. So in the end it is what it is.
P.S. I was mostly using Android versions 8 and 5. I think Android OS is an opensource project, but maybe there are commercial extensions like a better/cusomizable system keyboard? But again, if it is OS-level hard-coded keyboard, would it be possible to replace?