Hi, Joanie. Answering inline.
On Fri, Dec 13, 2013 at 11:41 AM, Joanmarie Diggs <jdi...@igalia.com> wrote: > On 12/12/2013 04:12 PM, Alexander Surkov wrote: > > > I'm ok with AtkValue extension, it makes sense if Orca wants complete > > information about the control. > > Exactly how Orca is going to provide this information is something I am > still considering. But potentially, yes, Orca is going to want this > information. > > The problem we have with states are the following: > > 1. States apply to the widget itself; the low, high, and optimum are not > states that apply to the meter *widget*. They describe the current > value. > Said above can be applied to wrong value which is exposed as invalid state but nevertheless it's a state. So I don't see a semantical contradiction here. If the value is optimal then control is in optimal state. > 2. A given value falls somewhere within a subrange. Something can be > "a tiny bit {low,high}", "smackdab in the middle of {low,high}" or > "really, really {low,high}. If we make these things AtkStates, we > lose the "how much" with respect to those attributes. > Right. Not sure how missing information bites though. > 3. This solution does not seem like it will scale. What happens if, > down the road, the meter (or some other value-reflecting widget) > has more than these (low, high, sub-optimal) ranges? > States approach isn't scalable, right, but probably we don't need scalable API here. I don't really have any other example where it can be reused. I suspsect that HTML5 meter will be unique element of this sort. > That's why states were suggested > > originally since they would be descriptive for visual part and don't > > require much work as opposed to value interface. > Is it that much more work? Maybe 10 minutes vs 30 minutes so not big deal. Meters will need to have an associated > AtkValue implementation in which the minimum, maximum, and current > values can be obtained. So we're asking for implementors to provide the > high, low, and optimum values in addition to the values already being > provided. Also, meters will need to emit a value-changed event. If you > go the state route, meters will also need to emit a state-changed event. > is that ATK requirement? It seems like AT would need value change event only (state change events would be duping in that case). > Whether or not the ordering of these events will matter is something I'd > have to give some more thought to. Regardless, the "more work" issue > surprised me. > > On a related note, since IA2 is presumably having to deal with these > same issues, have they made a decision on the new API yet? > IA2 development is much slower than ATK. So I feel skeptical about new interface. We could go with object attributes (IA2 allows to have non string type attributes). Jamie suggested states approach. So basically I went here to figure out what guys you think. Having less diversity in APIs is highly appreciated by me :) but in any case I think Firefox can implement both versions if ATK gets different from IA2. Also, what would the human-consumable name of these "states" be? > a good question, probably OPTIMAL, SUBOPTIMAL and NOT_OPTIMAL or SUBSUBOPTIMAL if it makes sense. Thank you. Alex. > --joanie and alejandro >
_______________________________________________ gnome-accessibility-devel mailing list gnome-accessibility-devel@gnome.org https://mail.gnome.org/mailman/listinfo/gnome-accessibility-devel