- From: Jason White <jason@jasonjgw.net>
- Date: Sat, 22 Feb 2014 15:28:39 +1100
- To: public-indie-ui <public-indie-ui@w3.org>
warning: highly speculative material follows. The following is my understanding of the problem raised by James at the meeting on Thursday. The basic scenario <div role="slider" aria-valuenow="0"> <!-- The thumb of the slider --> <div>[Image goes here]</div> <!-- Slider track --> <div>[another image, positioned appropriately]</div> </div> <!-- slider --> The JavaScript and CSS are of course omitted. James supposes that we add a ValueChangeRequest event listener, for example, to the outermost DIV element or one of its ancestors in the DOM tree. If the user tries to manipulate the slider via touch or mouse events, the user agent can't determine (1) the coordinates that correspond to the minimum value; (2) the coordinates of the maximum value; or (3) the step size by which to change the value as the slider is moved within the range. These data should be sufficient in typical cases to implement the visual interface of the control. Thus one solution (which I understand to be along lines suggested by Rich) would be to define an attribute that gives a reference to the manipulable element (slider thumb in this instance) and provides the necessary data for a linear manipulation. Problem: this would only work for sliders, and perhaps not even all of these. Consider a knob that the user rotates by touch, or one that has a hand/indicator similar to a clock face. Here we have a circular path that corresponds to value change events, and clearly the proposal breaks down at this point. Perhaps what is required, then, is a callback function for calculating values based on movements, i.e., formalizing the kind of solution that James suggested without actually invoking move events on the manipulable component of the control. Or maybe James' proposal is the best we have on offer after all.
Received on Saturday, 22 February 2014 04:29:05 UTC