Over the years of using Linux (about 15 years), when using KDE, I have dealt with controls in KDE System Settings where I’ve had to move my mouse away from the controls in order to keep scrolling through the page of settings. Before I was a web accessibility analyst, I never thought to bring this up until the OP called this out to our attention. This behavior of controls stealing focus from scrolling the page to scrolling the values not only can become a nuisance for users who may not have any disability issues, but it actually affects people with various kinds of disabilities.’
These disabilities include:
-
Users with visual disabilities: They may have difficulty precisely positioning the mouse cursor, and unexpected value changes can be disorienting
-
Users with motor disabilities: Those with tremors or limited motor control might struggle to avoid accidentally hovering over interactive elements
-
Users with cognitive disabilities: Unexpected changes can cause confusion and frustration, potentially leading to errors; this includes those with mental and memory disabilities
-
General users: Even without disabilities, this behavior can be jarring and lead to unintended settings changes; this is true especially for those who came from other operating systems such as Windows and macOS
This reminded me of Web Content Accessibility Guidelines, or WCAG for short. Although WCAG primarily applies to the web, WCAG can increasingly apply to software as well. Here are the following WCAG 2.2 Success Criteria that this focus-stealing scrolling behavior can violate:
- 3.2.1 On Focus: This success criterion states: “When any component receives focus, it does not initiate a change of context.” When scrolling causes a dropdown, slider, or number input to receive focus and immediately change its value, this violates this criterion. The element is initiating a change (to its value) simply by receiving focus, which is not permitted according to WCAG.
- 3.2.2 On Input: This criterion states: “Changing the setting of any user interface component does not automatically cause a change of context unless the user has been advised of the behavior before using the component.” The scroll wheel behavior could be seen as an “input” that changes a setting without the user intending to interact with that specific element. This would violate this criterion unless the user had been explicitly warned about this behavior.
Now, I don’t know about WCAG 2.4.3 as the WCAG standards obviously applies to users who must rely on keyboard for navigation, but I would like to copy a response that I’ve had conversations with Kagi’s AI:
WCAG 2.4.3 Focus Order and Mouse Users
WCAG 2.4.3 primarily addresses keyboard navigation and tab order, but it does have implications for mouse users in the context of our scroll wheel discussion.
How 2.4.3 Relates to Mouse Users
While 2.4.3 is fundamentally about keyboard navigation, it becomes relevant to mouse users in this specific scenario:
- Focus Consistency: When scroll wheel interactions cause elements to receive focus unexpectedly, it disrupts the logical focus order that should exist regardless of input method. Even mouse users can be affected by inconsistent focus behavior when they switch between mouse and keyboard.
- Predictable Interaction Model: 2.4.3 helps ensure that focus behaves predictably across all interaction methods. If scrolling with a mouse wheel causes focus to jump to unexpected elements, this violates the principle of a consistent, logical focus order.
- Mixed Input Methods: Many users switch between mouse and keyboard. If scroll wheel interactions disrupt the focus order, it creates problems when users subsequently try to use keyboard navigation.
The Primary Issue Is Still 3.2.1
For the specific scroll wheel issue you described, WCAG 3.2.1 (On Focus) is actually the more directly applicable criterion:
- 3.2.1 states: “When any component receives focus, it does not initiate a change of context.”
- The scroll wheel behavior violates this because elements are both receiving focus AND changing values when the user is simply trying to scroll the page.
Balancing Tab Order and Mouse Interactions
To address your question about not violating tab order while accommodating mouse users:
- Separate Concerns: The tab order (2.4.3) should be maintained for keyboard users, while scroll wheel interactions should be designed to not disrupt this order.
- Explicit Focus Requirement: A good approach is to only allow scroll wheel to affect form elements when they have explicit focus (not just hover), which preserves both the tab order and prevents unexpected changes.
- Focus Indicators: Ensure clear visual focus indicators so users understand which element currently has focus, regardless of how they’re interacting with the interface.
The key is ensuring that focus behavior is consistent and predictable across all interaction methods, which aligns with the spirit of multiple WCAG criteria, not just 2.4.3.
The controls in the System Settings application and just about all other applications can be referred to as “form elements” even though native GTK/Qt applications are not web pages.
I hope I can be of help despite using AI to copy a response from my conversation in here.
Oh, I do want to end my post by saying that accessibility deals with someone who has disabilities such as myself and that usability is about user experience and/or user-friendliness. Accessibility is a subset of usability and in this case, the controls stealing the scroll wheel from the page is in fact an accessibility issue. Improved accessibility benefits everyone even for those without any disability issues of any kind.