From 6940c158ee4cd00c033e6c02a43c1141a8e217c9 Mon Sep 17 00:00:00 2001 From: Orinks Date: Wed, 11 Feb 2026 17:08:34 +0000 Subject: [PATCH] fix: add accessible names to settings dialog controls for screen readers Add SetName() calls to quiet hours spin controls, voice choice dropdown, and speech rate slider so screen readers can identify each control. Fixes #21 --- src/accessiclock/ui/dialogs/settings_dialog.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/accessiclock/ui/dialogs/settings_dialog.py b/src/accessiclock/ui/dialogs/settings_dialog.py index 7795102..e2058e0 100644 --- a/src/accessiclock/ui/dialogs/settings_dialog.py +++ b/src/accessiclock/ui/dialogs/settings_dialog.py @@ -162,6 +162,7 @@ def _create_voice_tab(self, parent: wx.Notebook) -> wx.Panel: voices = ["(Default system voice)"] self.voice_choice = wx.Choice(panel, choices=voices) + self.voice_choice.SetName("Voice selection") self.voice_choice.SetSelection(0) sizer.Add(self.voice_choice, 0, wx.EXPAND | wx.ALL, 10) @@ -172,7 +173,8 @@ def _create_voice_tab(self, parent: wx.Notebook) -> wx.Panel: self.rate_slider = wx.Slider( panel, value=150, minValue=50, maxValue=300, - style=wx.SL_HORIZONTAL | wx.SL_VALUE_LABEL + style=wx.SL_HORIZONTAL | wx.SL_VALUE_LABEL, + name="Speech rate", ) rate_sizer.Add(self.rate_slider, 1, wx.EXPAND) sizer.Add(rate_sizer, 0, wx.EXPAND | wx.ALL, 10) @@ -226,6 +228,7 @@ def _create_quiet_hours_tab(self, parent: wx.Notebook) -> wx.Panel: self.quiet_start_hour = wx.SpinCtrl( panel, min=0, max=23, initial=22, size=(60, -1) ) + self.quiet_start_hour.SetName("Quiet hours start hour") start_sizer.Add(self.quiet_start_hour, 0, wx.RIGHT, 5) start_colon = wx.StaticText(panel, label=":") @@ -234,6 +237,7 @@ def _create_quiet_hours_tab(self, parent: wx.Notebook) -> wx.Panel: self.quiet_start_min = wx.SpinCtrl( panel, min=0, max=59, initial=0, size=(60, -1) ) + self.quiet_start_min.SetName("Quiet hours start minute") start_sizer.Add(self.quiet_start_min, 0) time_sizer.Add(start_sizer, 0, wx.ALL, 5) @@ -246,6 +250,7 @@ def _create_quiet_hours_tab(self, parent: wx.Notebook) -> wx.Panel: self.quiet_end_hour = wx.SpinCtrl( panel, min=0, max=23, initial=7, size=(60, -1) ) + self.quiet_end_hour.SetName("Quiet hours end hour") end_sizer.Add(self.quiet_end_hour, 0, wx.RIGHT, 5) end_colon = wx.StaticText(panel, label=":") @@ -254,6 +259,7 @@ def _create_quiet_hours_tab(self, parent: wx.Notebook) -> wx.Panel: self.quiet_end_min = wx.SpinCtrl( panel, min=0, max=59, initial=0, size=(60, -1) ) + self.quiet_end_min.SetName("Quiet hours end minute") end_sizer.Add(self.quiet_end_min, 0) time_sizer.Add(end_sizer, 0, wx.ALL, 5)