Home Assistant offers the ability to reorder items in the left sidebar, which is great. But… WTH, why is this feature completely inaccessible for users relying on keyboards or screen readers?
Currently, the only way to change the order of items in the sidebar is by dragging them with a mouse. This is a huge barrier for users who cannot use a mouse or who rely on assistive technologies. For example, here’s how a screen reader (NVDA) reads the sidebar in edit mode:
GOTOWE
Przegląd
Ukryj panel
Centrum Streamingu
Ukryj panel
Music Assistant
Ukryj panel
Listy zadań
Ukryj panel
Kalendarz
Ukryj panel
Mapa
Ukryj panel
Energia
Ukryj panel
Media
Ukryj panel
Dziennik
Ukryj panel
Historia
Ukryj panel
This lack of accessibility is frustrating for several reasons:
No keyboard navigation. There’s no way to reorder items using the keyboard, such as with “Move Up” and “Move Down” buttons.
No input for manual positioning. There’s no option to assign a specific position number to an item.
Inconsistent with other features. In earlier dashboard versions (without sections), it was possible to rearrange cards using keyboard-accessible controls. Why not offer the same here?
Suggested solutions:
Add “Move Up” and “Move Down” buttons for each item in the sidebar settings, accessible via keyboard and screen readers.
Allow users to manually assign a position number to items for precise control.
Ensure the feature integrates well with assistive technologies, providing clear announcements for changes (e.g., “Moved Music Assistant to position 3”).
This would make the sidebar much more accessible and inclusive for all users.
Is anyone else facing this challenge? Or am I the only one wondering why such a simple feature is inaccessible?
Having been at companies in the past on the receiving end of accessibility lawsuits, I strongly encourage the community to do a full a11y audit and make a plan for WCAG v2 compliance if there isn’t one already in place (didn’t see anything in a quick search).
+1 . I’m not facing the same exact challenge, but related ones.
a. I reluctantly use a laptop with a trackpad, because it’s impossible to get anything with proper buttons these days, and a trackball. I loathe trackpads, especially for dragging, and I’ll use keyboard shortcuts any chance I get.
b. even though I’m able to drag in other apps such as Windows explorer, the re-ordering feature does not seem to work in Firefox. I’m not sure what UI element I am supposed to click, with which button, how long to hold it, and where to drag it. The typical action with left button click, hold and drag does not work, nor does anything else I have tried. The only thing on that screen that works for me is the X to hide items.
Edit: looks like it works in Microsoft Edge, so the bug may be Firefox specific. Unfortunately, since this is a client-side setting, there is no simple workaround (copying cookies or data across browsers doesn’t count). That brings up my next comment, which is that I wonder why this can’t be done server side. Being able to set a default order for the user would be useful - or even a default order for all users. Having per-user and per-client override is great, but shouldn’t be the only way to accomplish this.
It is possible in the Android app - bring up the sidebar, then press and hold on the “Home Assistant” text at the top of the sidebar. (Not the most obvious interface…)
Reorder the sidebar items works in MS-Edge browser. Wen i then go back to Firefox the order is still not changed. So i guess those settings are saved in the browser not the server.
Yes. To be fair, that is somewhat expected given that the UI has a section for client/device only. I made the case above that some of these should be possible to set server side.
One more oddity is that if you delete the default dashboard from the list, it still remains as default. For instance, I chose to hide “Overview”.