Accessibility in SpeakerClock 1.3.1 | Cocoanetics

Now you can totally function SpeakerClock with no or low imaginative and prescient. We gave SpeakerClock the complete Accessibility therapy. On this article I describe a few of the issues I realized including accessibility options to SpeakerClock, now that it’s totally written in SwiftUI.

SpeakerClock’s UI is split into 3 sections, the presets on the prime, the LED timer as large as attainable within the heart and the section “site visitors mild” on the backside.

The principle interplay gesture is to horizontally swipe over the LED digits to alter the timer. This type of gesture isn’t attainable when VoiceOver is energetic as a result of there you may pan over the display screen to shortly get to the new spots of interactive parts.

I solved this by having individually adjustable sub-elements for the minutes and seconds whereas the timer isn’t operating. This fashion you may swipe vertically to regulate the minutes and seconds individually.

There are three varieties of ordinary gestures for Voice-Over which I made full use of:

  1. double-tap with single finger to pick a component
  2. double-tap with two fingers to carry out a “magic faucet”
  3. draw a Z with two fingers to “escape”

I used #1 for the single-tap operate of the preset and talking section buttons. #2 substitutes for the lengthy press. The rationale is that it’s a must to consciously faucet with two fingers as a substitute of 1 to change the presets, as to stop you from by accident altering them.

Within the common circulate of issues, VoiceOver mainly feedback on the centered aspect and after a brief pause additionally reads out the accessibility trace that tells the consumer what interactions are attainable. I additionally used VoiceOver’s announcement notifications to provide audio suggestions on some interactions.

See also  ios - Can you're employed with Kotlin Multiplatform Cell (KMM) utilizing Home windows for Android half?

The cherry on prime is that sure timer values get purple out aloud. Within the yellow and inexperienced phases you get a voice immediate each minute. The section transitions get introduced as nicely. Within the purple section there’s an announcement very 15 seconds, with the ultimate 10 seconds being accompanied by beeps.

That felt like an affordable quantity of voice suggestions for starters. I would add some configuration choices at a later level.

On this video I’m demonstrating all that we mentioned.


I’d say my implementation is 95% good. There are some edge circumstances nonetheless – which I can not do a lot about – the place VoiceOver will insist of talking one thing that it wouldn’t must. Sadly there isn’t any method to inform Accessibility to “shut it” for sure instances when there’s something extra vital happening.

It value me a variety of experimenting and the higher a part of a day to get to this stage. I’m anxious to listen to from precise customers of SpeakerClock, specifically those that are visually impaired and may need use for a timer. And a few common customers additionally requested about acoustic suggestions. What kind of configuration choices associated to sounds would possibly make sense?

Additionally printed on Medium.

Tagged as:

Classes: Updates

Leave a Reply