<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">I took a look at the <a href="https://www.w3.org/wiki/RadioButton">W3C accessibility guidelines for radio button groups</a> since that’s the closest thing I could find to a group of ToggleButtons. The W3C suggests that Tab/Shift+Tab takes you in and out of the group and the arrow keys navigate within the group with wrap-around. Based on that (3) is correct.<div><br></div><div>That’s where the W3C guidance ends; a single radio button doesn’t make much sense so it’s not even mentioned. I would expect a single ungrouped ToggleButton to navigate like a checkbox so (1) seems wrong. A group with just one ToggleButton is an odd thing so (2) could go either way.</div><div><br></div><div>Martin</div><div><div><br><blockquote type="cite"><div>On Dec 1, 2023, at 11:21 PM, John Hendrikx <john.hendrikx@gmail.com> wrote:</div><br class="Apple-interchange-newline"><div><div>In my exploration of a potential Behavior API, I discovered this oddity in how ToggleButtons work.<br><br>1. If you have a single ToggleButton that is not part of a ToggleGroup, you can't navigate away from it with the arrow keys, only by using Tab or Shift-Tab.<br><br>2. If you have that same single ToggleButton, but it does have a group (a group of one) then you CAN navigate away from it with the arrow keys.<br><br>3. When you have two ToggleButtons, both part of the same group, then you can only navigate away from the group with Tab or Shift-Tab again, as the arrow keys will loop back to the first/last button when the end of the group is reached.<br><br>I get the impression at least one of these is incorrect.<br><br>I mean, either ToggleButtons should always loop, even if it is a group of one, meaning (2) would be incorrect...<br><br>Or... ToggleButtons should never loop, in which case (1) and (3) are incorrect...<br><br>Or... Single ToggleButtons (grouped or not) behave differently and don't do looping, in which case (1) is incorrect<br><br>Thoughts?<br><br>--John<br><br></div></div></blockquote></div><br></div></body></html>