Slack Hints For Screen Readers
At A360, we use Slack constantly to communicate within our teams. Many of our staff are remote and the tool has been invaluable for keeping everyone connected. However, Slack has a number of accessibility challenges, particularly on the desktop for screen reader users. While Slack is starting to take accessibility seriously, knowing a few tricks and shortcuts will make the user experience much better. The following are some tips we’ve assembled as a team:
General Slack Items
- Slack users will often mention someone and put ^. This means: “look up” in the list of messages. ^^ = look up two messages.
- Rickrolling is alive and well, so you should be ready for it.
- Screen readers will read emojis on all platforms except Android, so tell your sighted colleagues to emote with care. The emoji box on desktop and IOS is also quite accessible, so you should feel free to join in.
- We did not have a great experience with threading when we first tried it, so we avoid it, mostly out of habit. We would not be surprised to learn it has improved since then, however.
Web and Desktop Client
- Although we’re generally big fans of NVDA here at Accessible360, we have found JAWS to work better overall with Slack.
- The best way we have found to Slack someone is to open the Direct Message modal by pressing Ctrl+Shift+k. You will then be placed in an edit field. Start typing someone’s name, then use the “up” and “down” arrows to choose the person from the list that pops up. If you don’t find them right away, try typing more letters of their name. Then, to add them to the conversation, just press “enter.” You can then either add more people, or simply hit “enter” again on the edit field, and you will be placed in the conversation with them.
- Received Slack messages show up in a list directly above the message edit field. If you click on the link that is someone’s name, it will add a mention, but this is not the easiest way to do it with a screen reader.
- To mention someone, the best way to do it is to type the at sign (@), followed by the first few letters of their Slack name. Then, if JAWS announces the person’s name, press “enter“. This will insert their name followed by a space character, so you are good to continue typing the rest of your message, no extra space required. If you don’t hear the person’s name right away, you can again use the “up” and “down” arrows to choose it, and then press “enter” when you hear it.
- If you want to read a recent message, the easiest way is to just use the virtual cursor. If you want to read a message that has scrolled off screen, it’s a bit trickier. The problem is that there’s not a reliable way to tell Slack that you want to scroll up when using the virtual cursor. The solution is to focus on the new message edit field, turn off the virtual cursor with insert+z, and then press shift+tab twice. This will land you in the list of messages, and you can “up” and “down” arrow through them. This works pretty well, but occasionally, JAWS will refuse to read a message no matter what you do.
- If you want to go to the next conversation you haven’t read, press Alt+Shift+Up arrow or Alt+Shift+down arrow. “Up” arrow takes you to the most recent unread conversation, and “down” takes you to the oldest unread conversation.
- If Slack is not behaving, try pressing Ctrl+q to exit, and then relaunching the app. This has about a 40% chance of working.
The iOS client is quite accessible once you have figured it out.
- The channel list button will put you in a list of both channels and recent direct message conversations. Just tap the one you want, then interact with it similar to a normal messaging app.
- If you need to create a conversation, because you don’t see it in the list of recent conversations, tap “create direct message,” and you will see a list of people in the company. Tap the person you want. VoiceOver should then announce that that person is “selected.” You can then select additional people (up to six, plus yourself) to add to the conversation. When you’re done, press the “Next” button, and it will start the conversation.
- We have found it helpful to know how to create a conversation on both Android and mobile platforms, because occasionally the client on one platform won’t cooperate.
- To mention someone, type an @, then the first few letters of their name. VoiceOver won’t say anything, but if you are lucky, you should be able to find their name by moving your finger around the screen above the keyboard. You can then double-tap it, and it will be inserted with a space at the end.
The Android client is quite accessible as well.
- Use direct touch for the best experience when navigating to and through the channel switcher.
- Low vision/high contrast users are likely to love the new dark theme.
- Emojis are not read on Android.
- Randy Warren, one of our visually impaired Accessibility Engineers who uses Android as his primary mobile OS, says: “Bottom line, when it comes to a communication client, the developers at Slack have done a great job making their app accessible for the most part. I prefer my mobile Android Slack app with TalkBack over the desktop app with NVDA or JAWS. It’s just plain easier to navigate.”
For blind Slackers, the future is bright!
There’s no question that the accessibility of Slack is far from perfect, but it has been slowly headed in the right direction over the past three years that we’ve been using it. We remain optimistic that this trend will continue, and we would generally recommend it as an accessible collaboration tool.