When working with Facets, there are a few accessibility issues that appear thus far from my testing on other Facet panel issues.
- Going from a default font size in browser of 14 to 20 can cause issues of unnecessary padding and wrapping for the
leftPanelTabs
specifically in regards to the<ui role="tablist"
. - Unneccesary jumping up/down of Facet panels while users click on selections. The div
browsing-panel-indicator
will quickly show a hidden spinner “Refreshing facets…” which is above thebrowsing-panel-controls
and hence causes all child elements underneath to suddenly move down and then back up. The effect to a user is disconcerting with jerky motion.
Current Results
Expected Behavior
We should try to have more flexible handling (Flex Box, CSS Grid, whatever other means) so that adaptive resizing is more easily handled in various places. Simple font size increases which is a common accessibility item, should not break (force wrapping?) feature areas, but instead those areas should just adaptively resize larger or smaller.
I.E. Containers should grow larger or smaller to fit the font size, instead of font size fitting the container. In the case of increasing the font size in the browser, a common expectation would be that text size is increased over the entire app, which would mean that the datagrid is likely to show much less columns which is fine, and the Facet panel would be allowed to grow wider.
Ideally the Facet panel could then have a draggable resize handle in the middle bar so that users can make it wider, at the cost of pushing out into the datagrid and losing some columns in the view that would overflow with horizontal scrollbar growing.
Alternative Behavior
For the “Refreshing facets…” an alternative might be to move this notification into the processPanelDiv
where other notifications are handled. Even though it is currently located above the datagrid area, this is where all other notifications are displayed for processes. This would offer more room in the Facet Panel when a refresh is happening and not disconcert the user experience.