marsbar:
NVDA should then read something like "Period, grouping, From day, combo box, 1". The same approach works for all the selects. You already have Day/Month/Year in the language pack, so only "From" and "To" need adding.
Previously, I already tried it out, and this approach would work for an English reader, but for any other languages, it's not that universal — specifically for those having right-to-left text positioning. Right now, to the language pack I've just added:
$l_sday='Day';
$l_smonth='Month';
$l_syear='Year';
but for your case, there must be added:
$l_sdayFrom='From day';
$l_smonthFrom='From month';
$l_syearFrom='From year';
$l_sdayTo='To day';
$l_smonthTo='To month';
$l_syearTo='To year';
— there is no proper approach for other languages just to combine $l_from / $l_to vars with a single definitions of Day/Month/Year within dropdown labels, it will be heard then even less correct than now.
Now it reads when moving by Tabs: Period from grouping — Day combo box 18 collapsed, Month combo box Feb collapsed ... Period to grouping ... the same for Day/Month, their values etc.
marsbar:
If the button's only text is "+", NVDA announces "plus, button, collapsed" without saying what it expands.
It appears aria-label doesn't work for the <span> tags, where +/- signs reside in. But on my side, NVDA reads button values, no aria-label is required. It reads exactly like "Formatting button collapsed", and if the Enter is pressed, it reads now "Expanded". Then if I go through this set again, it reads properly the button value/title and its status, collapsed or expanded.
marsbar:
However, these tools still rely on the same underlying HTML: titles, headings, labels and buttons. Clean, semantic HTML is therefore the foundation for these tools, not an alternative to them.
I agree there should be some strict markup base for these tools. I'm just about the current state of things, which allows to prepare some very basic, reader-like documents, but if we are about the forum, it's more complicated structure. Now I see that if we try to embed reader-required HTML into the current markup of the forum, it doesn't ideally work, and just adds extra bits of codes which would not work certainly the same on all devices.
There could be form of alternative markup, for example JSON-LD or XML-based, similarly like Google did with their Structured Data addition. It wouldn't just being embedded into the current templates layout, but stand out like a separate file being included with a special meta tag — similarly like now JavaScript or CSS codes could be referenced. And then, this file could have more strict and organized structure, clean from visual elements, and represending just structured texts and form labels the reader should take into attention. And it could be way more different from the structure which is accessed by a regular user.
Just my thoughts, and for now, we just should rely on the standards already written...