Despite Apple getting into the on-screen keyboard market, Keystrokes is still the gold standard as far as I’m concerned.

Why do you need an onscreen keyboard

Sometimes you need keys

I can’t use my hands to type, so keyboards are not accessible to me. I’ve got a whole pile of workarounds - TrackerPro for a mouse to move the cursor around, Dragon Dictate for writing posts like this, Dasher for text input without talking… [^1] but sometimes I still need the functions of a traditional “keyboard”.

So I use Keystrokes from AssistiveWare. It’s an on-screen keyboard that sits somewhere on your screen until you need it, at which point you use your mouse to select any one of the buttons on what AssistiveWare Scan Panels. This does mean you need some way of controlling the cursor which means I can’t use it whilst lying on my back and working using my projector, but for that use case we have Switch Control which is outside the scope of this post.

Scan Panels

Scan Panels can be made to do pretty much anything your computer can.

Out of the box, Keystrokes comes with lots of different scan panels which you could use fine. However they also provide a tool called LayoutKitchen which makes it possible for you to create your own Scan Panels. I have a panel that I use every single day that has evolved over time as new needs have come up, as my physical and technical abilities have got better or worse and as new software has been released.

Scan Panels can be made to do pretty much anything your computer can. It’s all just triggers. From pressing the letter “A” to something more complicated like triggering a Bash Script which launches a Terminal window. Essential shortcuts like Cut, Copy, Paste and “Open Hacker News in Google Chrome”. (That last one is totally essential.) You can also open applications, really anything you can think of. Awesomesauce, I think you’ll agree.

Here’s a picture of my current scan panel:

Keystrokes vs Dwell Control

a brilliant and flexible solution

Keystrokes is a brilliant and flexible solution that doesn’t really have a peer at the moment. Apple have their own system called Dwell Control which is an on-screen keyboard just like KeyStrokes but isn’t quite there yet. Dwell Control uses the same paradigm of an on-screen keyboard which waits for you to activate one of its buttons, but you must “dwell” to… click. For instance, to click the “Copy” function on a Scan Panel to copy a piece of text, you need to hover over that button for a little while and the computer automatically clicks it for you. You can turn this function off on a panel by panel basis, but that means that every time you switch panels you have to turn Dwell off. I switch panels a lot so this is very annoying. I want to be able to turn that function off completely and only use my Buddy Button to activate buttons on the Scan Panel, and if that function exists I haven’t found it yet. If anybody knows how to do this, please let me know!

One other thing to say about this Dwell Click problem is that you can’t rest your head anywhere, because every time you stop even for a second the computer issues and mouse click. Which means it’s completely feasible to accidentally click on the wrong thing, and when I say feasible I mean happens all the time. Double trouble annoying.

So yes, until Apple sort out their on-screen keyboard (Which I’m sure they will) I’ll definitely be sticking with Keystrokes. It’s pretty great.