Wednesday, September 07, 2011

[yjocvwqy] Keyboard commit for autocorrect

You type im(space) and the smart input device helpfully rewrites it as I'm(space).  Next you hit backspace.  What should happen?  Undo the previous keystroke, leaving im, or delete the space, leaving I'm?  (My current Android phone does neither, leaving im(space).)

I propose the first, because because backspace as logical undo makes more sense to me.  When you want the second behavior, you need to hit an extra key, the "keyboard commit" button, which flushes the "smart" internal state and allows editing of individual letters: im(space)(keyboard commit)(backspace) leaves I'm.

Keyboard commit happens automatically after starting the next word: im(space)x(backspace)(backspace) leaves I'm.

My current phone exhibits this behavior:
im(space)x(backspace) leaves I'm(space) im(space)x(backspace)(backspace) leaves I'm
im(space)x(backspace)(backspace)(backspace) leaves im (!)
I'm(space)x(backspace)(backspace)(backspace) leaves I'
It invisibly remembers whether it was a smart rewrite or manually typed for a long time, which I feel is bad UI.

No comments :