- From: Aaron M Leventhal <aleventh@us.ibm.com>
- Date: Mon, 8 Dec 2008 10:26:20 +0100
- To: James Craig <jcraig@apple.com>
- Cc: WAI XTech <wai-xtech@w3.org>, wai-xtech-request@w3.org
- Message-ID: <OF8972F0CE.5898BD7E-ONC1257519.003301E2-C1257519.0033D9E4@us.ibm.com>
James Craig <jcraig@apple.com> wrote on 12/08/2008 10:13:34 AM: > On Dec 8, 2008, at 12:36 AM, Aaron M Leventhal wrote: > >> The difference (at least on Win32) appears to be that in a spinbox >> you can also directly enter the value with the keyboard, as in >> "2009" in a spinbutton for year. > > What's the difference on a platform-agnostic equivalent? I don't have that many cross-platform apps that use it, but I just tried in Open Office and the spinbutton allows direct editing. > This is a > minor behavioral difference for the view, not a semantic difference > for the controller. >From what I understand, the roles we have today match up with what ATs describe to users today, and what users expect. It's a bit of a mix between the strict semantic view of what widgets are, and what users find useful to know. By hearing a role, a user knows what keys to press. This is why it's useful to know whether you are on a radio group vs. a combo box, there are different keys available. Yes they are both single selection lists. A similar reason exists for exposing slider vs. spinbutton. With a slider, a user would not expected to be able to type in the value. >> I think the suggestion to support value formats so that the value >> can be set by the AT is interesting, and we indeed used to have >> something like that with aria-datatype. This ultimately became very >> complicated and IIRC, we dropped it for reconsideration in a later spec. > I'll raise it as an issue for ARIA 2.0. Good idea. >> For now the aria-valuenow can only be set numerically, although for >> output purposes the value can be exposed via aria-valuetext in any format. >> >> If the author really needs a user to be able to set the value of >> something using a text label, at the moment they will need to use a >> combobox instead. I think this is an alright tradeoff for the >> complexity involved and where we are with the spec. > >> Type-ahead selection can also be achieved with listbox and combobox. >> We can even add a note on slider that authors should support type- >> ahead where possible if the user types an appropriate entry for >> valuenow or valuetext. I don't think users would expect it, and therefore would be unlikely to try it. I doubt authors would take the time to do it, either, because it's not really expected for a slider. > This works the same way with native HTML select/option lists, which > act as type of listbox, even if the values it contains are a range. The name > spinbutton is very unclear and implies more about style than it does > about semantics or function. FWIW, I'm not sure why it's called a spinbutton; that is a bit strange. Sometimes I sometimes have heard it called a spinbox, which seems to fit better (sounds more like a textbox). > If this role stays, perhaps it should > be named something more consistent with the rest of the class hierarchy, like > rangebox, rangelist, or rangelistbox, as it would inherit from both rangeand > listbox. > > From: > > James Craig <jcraig@apple.com> > > To: > > WAI XTech <wai-xtech@w3.org> > > Date: > > 12/08/2008 08:01 AM > > Subject: > > Should ARIA ranges have value formatting defined? Also, spinbutton > should be removed. > > > > > > > slider is defined as, "A user input where the user selects a value > from within a given range." The value of aria-valuenow is a decimal, > defined as "a real number, represented as a decimal." Furthermore, > the user interface hints in the spec imply that the value will > always be set by the web application (when the user presses the > arrow keys), and that the value should never be set by the user > agent or assistive technology. From the perspective of a screen > reader user, what's the functional difference between a slider and a > spinbutton if they both have 1, 2, and 3 as potential values? None, > as far as I can tell. Finally, the resulting functionally identical > to that of a listbox; the only difference is semantics. > > listbox is defined as, "A widget that allows the user to select one > or more items from a list of choices." Similarly, spinbutton, a type > of range, is defined as, "A form of range that expects a user to > select from amongst discrete choices." Therefore, the only semantic > difference in ARIA seems to be that a range is just a listbox whose > choices are in some form of numerical order. > > I understand the semantic benefit of alerting the use to the fact > that a range is ordered selections, but since the user cannot set an > arbitrary value on any ARIA range widget, I propose both of the > following changes. They are related, so I am listing them together, > but they are not interdependent, so each proposal should be > considered separately. > > 1. Remove the spinbutton role, because the functionality and > semantics are already covered by slider and listbox. > > 2. Allow the the aria-valuenow property of range widgets to be set > directly by the user agent or assistive technology. This will allow > range widgets to be more in line with the behavior of desktop range > widgets, but would require a value format property (and potentially > an increment value). > > For example, if the range were to increment a currency amount from 0 > to 100 US dollars, the value formation could be defined as "$###.##" > with an aria-valuemin="0" and aria-valuemax="100", and if the range > were to represent a date from December 10, 2008 through January 5, > 2009, the value format could be "yyyy-mm-dd" with an aria- > valuemin="2008-12-10" and aria-valuemax="2009-01-05". There may also > need to some hint of increment value if it cannot be determined from > the value format or other range data. > > Thoughts? Comments? >
Received on Monday, 8 December 2008 09:27:09 UTC