Accessibility/Comparisons:States: Difference between revisions

 
(One intermediate revision by the same user not shown)
Line 8: Line 8:
--[[User:Hwaara|HakanW]] 12:27, 9 May 2006 (PDT)
--[[User:Hwaara|HakanW]] 12:27, 9 May 2006 (PDT)


=== Color legend ===
=== Legend ===
<table border="1"><tr><th>Color legend</th></tr>
<table border="1"><tr><th>Legend</th></tr>
<tr><td class="OK">UA seems compatible</td></tr>
<tr><td class="OK">[OK] UA seems compatible</td></tr>
<tr><td class="maybe">UA probably compatible</td></tr>
<tr><td class="maybe">[MAYBE] UA probably compatible</td></tr>
<tr><td class="irrelevant">Seems irrelevant?</td></tr>
<tr><td class="irrelevant">[NOT NEEDED] Irrelevant</td></tr>
<tr><td>Not yet done / Undecided (white).</td></tr>
<tr><td>Not yet sure; TBD</td></tr>
</table>
</table>


Line 36: Line 36:
       <td>CHECKED</td>
       <td>CHECKED</td>
       <td>CHECKED</td>
       <td>CHECKED</td>
       <td>Value attribute is "1"</td>
       <td>[OK] Value attribute is "1"</td>
       <td>Checkbox, radio button, or toggle
       <td>Checkbox, radio button, or toggle
button is checked.</td>
button is checked.</td>
Line 43: Line 43:
       <td>COLLAPSED</td>
       <td>COLLAPSED</td>
       <td>!EXPANDED, COLLAPSED</td>
       <td>!EXPANDED, COLLAPSED</td>
       <td>Disclosing (for tables/outliners),
       <td>[OK] Disclosing (for tables/outliners),
ShowMenu action for
ShowMenu action for
popupsbuttons/menus.</td>
popupsbuttons/menus.</td>
Line 55: Line 55:
       <td>Use a text attribute or add a custom
       <td>Use a text attribute or add a custom
state?</td>
state?</td>
       <td>DefaultButton</td>
       <td>[OK] DefaultButton</td>
       <td>Default button or menu item.</td>
       <td>Default button or menu item.</td>
     </tr>
     </tr>
Line 61: Line 61:
       <td>EXPANDED</td>
       <td>EXPANDED</td>
       <td>EXPANDED</td>
       <td>EXPANDED</td>
       <td>Expanded</td>
       <td>[OK] Expanded</td>
       <td>The children items of expandable objects that provide
       <td>The children items of expandable objects that provide
progressive disclosure, like trees and drop-down lists are currently
progressive disclosure, like trees and drop-down lists are currently
Line 69: Line 69:
       <td>FOCUSABLE</td>
       <td>FOCUSABLE</td>
       <td>FOCUSABLE</td>
       <td>FOCUSABLE</td>
       <td>Check if the focused attribute is settable</td>
       <td>[OK] Check if the focused attribute is settable</td>
       <td>Object can accept keyboard focus, which means all
       <td>Object can accept keyboard focus, which means all
events resulting from typing on the keyboard will normally be passed to
events resulting from typing on the keyboard will normally be passed to
Line 77: Line 77:
       <td>FOCUSED</td>
       <td>FOCUSED</td>
       <td>FOCUSED</td>
       <td>FOCUSED</td>
       <td>Focused</td>
       <td>[OK] Focused</td>
       <td>Object currently has the keyboard focus.</td>
       <td>Object currently has the keyboard focus.</td>
     </tr>
     </tr>
Line 86: Line 86:
Would ATK_STATE_MANAGES_DESCENDANTS
Would ATK_STATE_MANAGES_DESCENDANTS
apply?</td>
apply?</td>
       <td>The object supports the ShowMenu action</td>
       <td>[OK] The object supports the ShowMenu action</td>
       <td>Object has a popup, but in ATK the popup children need
       <td>Object has a popup, but in ATK the popup children need
to establish the relationship with the parent. </td>
to establish the relationship with the parent. </td>
Line 93: Line 93:
       <td>INVISIBLE</td>
       <td>INVISIBLE</td>
       <td>!VISIBLE</td>
       <td>!VISIBLE</td>
       <td>Parent can tell if this object is in the
       <td>[MAYBE] Parent can tell if this object is in the
VisibleChildren attr. We can also see if the NSView is visible.</td>
VisibleChildren attr. We can also see if the NSView is visible.</td>
       <td>The object is hidden, whether on-screen or off-screen. </td>
       <td>The object is hidden, whether on-screen or off-screen. </td>
Line 99: Line 99:
     <tr class="OK">
     <tr class="OK">
       <td>LINKED</td>
       <td>LINKED</td>
       <td >Implement AtkHyperlink and
       <td>Implement AtkHyperlink and
AtkHypertext</td>
AtkHypertext</td>
       <td>LinkedUIElements (objects associated
       <td>[OK] LinkedUIElements (objects associated
with each other), TextLink role/attribute for text links, and WebKit has a Link extension role</td>
with each other), TextLink role/attribute for text links, and WebKit has a Link extension role</td>
       <td>The object links to another object. </td>
       <td>The object links to another object. </td>
Line 109: Line 109:
       <td>INDETERMINATE or
       <td>INDETERMINATE or
add custom state</td>
add custom state</td>
       <td>Checkbox's value attribute is set to
       <td>[OK] Checkbox's value attribute is set to
"2"</td>
"2"</td>
       <td>A checkbox object is in a state other
       <td>A checkbox object is in a state other
Line 118: Line 118:
       <td>MULTISELECTABLE</td>
       <td>MULTISELECTABLE</td>
       <td>MULTISELECTABLE</td>
       <td>MULTISELECTABLE</td>
       <td>There should be a property of the outliner/table view to see if it supports this.</td>
       <td>[OK] There should be a property of the outliner/table view to see if it supports this.</td>
       <td>Object allows more than one of its children to be
       <td>Object allows more than one of its children to be
selected at the same time. </td>
selected at the same time. </td>
Line 125: Line 125:
       <td>OFFSCREEN</td>
       <td>OFFSCREEN</td>
       <td>!SHOWING</td>
       <td>!SHOWING</td>
       <td>Same as INVISIBLE above</td>
       <td>[OK] Same as INVISIBLE above</td>
       <td>An object is currently not visible and not on-screen. </td>
       <td>An object is currently not visible and not on-screen. </td>
     </tr>
     </tr>
Line 131: Line 131:
       <td>PRESSED</td>
       <td>PRESSED</td>
       <td>PRESSED</td>
       <td>PRESSED</td>
       <td>Use non-UA API to check the value of a Toggle or OnOffButton</td>
       <td>[OK] Use non-UA API to check the value of a Toggle or OnOffButton</td>
       <td>Object is currently pressed down. </td>
       <td>Object is currently pressed down. </td>
     </tr>
     </tr>
Line 137: Line 137:
       <td>PROTECTED</td>
       <td>PROTECTED</td>
       <td>Use ATK_PASSWORD_TEXT as the role</td>
       <td>Use ATK_PASSWORD_TEXT as the role</td>
       <td>See the SecureTextField role</td>
       <td>[OK] See the SecureTextField role</td>
       <td>Object is a password field. </td>
       <td>Object is a password field. </td>
     </tr>
     </tr>
Line 143: Line 143:
       <td>READONLY</td>
       <td>READONLY</td>
       <td>!EDITABLE &amp; SENSITIVE</td>
       <td>!EDITABLE &amp; SENSITIVE</td>
       <td>Object is a StaticText role, or TextField not focused,
       <td>[OK] Object is a StaticText role, or TextField not focused,
etc. Also, if the value attr is not settable...</td>
etc. Also, if the value attr is not settable...</td>
       <td>Object is interactive (sensitive) but the contents
       <td>Object is interactive (sensitive) but the contents
Line 151: Line 151:
       <td>SELECTABLE</td>
       <td>SELECTABLE</td>
       <td>SELECTABLE</td>
       <td>SELECTABLE</td>
       <td>Has a settable Selected attr</td>
       <td>[OK] Has a settable Selected attr</td>
       <td>Object is the child of an object that allows its
       <td>Object is the child of an object that allows its
children to be selected, and this child is one that can be selected. </td>
children to be selected, and this child is one that can be selected. </td>
Line 158: Line 158:
       <td>SELECTED</td>
       <td>SELECTED</td>
       <td>SELECTED</td>
       <td>SELECTED</td>
       <td>Selected, and SelectedChildren attr</td>
       <td>[OK] Selected, and SelectedChildren attr</td>
       <td>Object is the child of an object that allows its
       <td>Object is the child of an object that allows its
children to be selected, and this child is selected. </td>
children to be selected, and this child is selected. </td>
Line 165: Line 165:
       <td>SIZEABLE</td>
       <td>SIZEABLE</td>
       <td>RESIZABLE</td>
       <td>RESIZABLE</td>
       <td>For windows, there's a GrowArea role for the part where
       <td>[OK] For windows, there's a GrowArea role for the part where
you can resize it.</td>
you can resize it.</td>
       <td>The size of the object can be changed (i.e. it is not
       <td>The size of the object can be changed (i.e. it is not
Line 180: Line 180:
       <td>UNAVAILABLE</td>
       <td>UNAVAILABLE</td>
       <td>!ENABLED</td>
       <td>!ENABLED</td>
       <td>Same as !enabled</td>
       <td>[OK] Same as !enabled</td>
       <td>Object is grayed out and not available at this time. </td>
       <td>Object is grayed out and not available at this time. </td>
     </tr>
     </tr>
Line 193: Line 193:
       <td></td>
       <td></td>
       <td>EDITABLE</td>
       <td>EDITABLE</td>
       <td>For text: StaticText role vs Textfield/textarea roles.
       <td>[OK] For text: StaticText role vs Textfield/textarea roles.
Also whether the "value" attribute is settable.</td>
Also whether the "value" attribute is settable.</td>
       <td>The contents of this object can change. </td>
       <td>The contents of this object can change. </td>
Line 200: Line 200:
       <td></td>
       <td></td>
       <td>ENABLED</td>
       <td>ENABLED</td>
       <td>Enabled</td>
       <td>[OK] Enabled</td>
       <td>Object is not grayed out and can be interacted with if
       <td>Object is not grayed out and can be interacted with if
sensitive.</td>
sensitive.</td>
Line 207: Line 207:
       <td></td>
       <td></td>
       <td>EXPANDABLE</td>
       <td>EXPANDABLE</td>
       <td>Use Disclosing attribute</td>
       <td>[OK] Use Disclosing attribute</td>
       <td>The children items of this object that provide
       <td>The children items of this object that provide
progressive disclosure, like trees and drop-down lists, can be showing
progressive disclosure, like trees and drop-down lists, can be showing
Line 215: Line 215:
       <td></td>
       <td></td>
       <td>HAS_TOOLTIP</td>
       <td>HAS_TOOLTIP</td>
       <td>There's a Help attr. Otherwise some other Cocoa API should be able to help us probably.</td>
       <td>[OK] There's a Help attr. Otherwise some other Cocoa API should be able to help us probably.</td>
       <td>Object has an associated tooltip.</td>
       <td>Object has an associated tooltip.</td>
     </tr>
     </tr>
Line 221: Line 221:
       <td></td>
       <td></td>
       <td>HORIZONTAL</td>
       <td>HORIZONTAL</td>
       <td>Get from Orientation attribute of widget</td>
       <td>[OK] Get from Orientation attribute of widget</td>
       <td>Orientation of this object is horizontal. </td>
       <td>Orientation of this object is horizontal. </td>
     </tr>
     </tr>
Line 227: Line 227:
       <td></td>
       <td></td>
       <td>ICONIFIED</td>
       <td>ICONIFIED</td>
       <td>There's a WindowMiniaturized notification for when a
       <td>[OK] There's a WindowMiniaturized notification for when a
window is minimized.</td>
window is minimized.</td>
       <td>Object is minimized and represented only by an icon. </td>
       <td>Object is minimized and represented only by an icon. </td>
Line 245: Line 245:
this state in response to invalid or malformed user input.</td>
this state in response to invalid or malformed user input.</td>
     </tr>
     </tr>
     <tr class="maybe">
     <tr>
       <td></td>
       <td></td>
       <td>MANAGES_DESCENDANTS</td>
       <td>MANAGES_DESCENDANTS</td>
       <td></td>
       <td>TBD</td>
       <td>Indicates that "active-descendant-changed" event is
       <td>Indicates that "active-descendant-changed" event is
sent when children become 'active' (i.e. are selected or navigated to
sent when children become 'active' (i.e. are selected or navigated to
Line 266: Line 266:
       <td></td>
       <td></td>
       <td>MULTI_LINE</td>
       <td>MULTI_LINE</td>
       <td>is a TextView role</td>
       <td>[OK] is a TextView role</td>
       <td>Text object can contain multiple lines of text. </td>
       <td>Text object can contain multiple lines of text. </td>
     </tr>
     </tr>
Line 279: Line 279:
       <td></td>
       <td></td>
       <td>SELECTABLE_TEXT (proposed)</td>
       <td>SELECTABLE_TEXT (proposed)</td>
       <td>SelectedText attr exists in textviews and textfields.</td>
       <td>[OK] SelectedText attr exists in textviews and textfields.</td>
       <td>Object supports text selection. It should only be
       <td>Object supports text selection. It should only be
exposed on objects which implement the [http://gnome.org/%7Ebillh/at-spi-new-idl/html/html/classAccessibility_1_1Text.html Text]
exposed on objects which implement the [http://gnome.org/%7Ebillh/at-spi-new-idl/html/html/classAccessibility_1_1Text.html Text]
Line 291: Line 291:
       <td></td>
       <td></td>
       <td>SHOWING</td>
       <td>SHOWING</td>
       <td>same as visible?</td>
       <td>[OK] same as visible?</td>
       <td>Object is visible and on-screen. </td>
       <td>Object is visible and on-screen. </td>
     </tr>
     </tr>
Line 297: Line 297:
       <td></td>
       <td></td>
       <td>SINGLE_LINE</td>
       <td>SINGLE_LINE</td>
       <td>textfield role</td>
       <td>[OK] textfield role</td>
       <td>Text object can only contain a single line of text. </td>
       <td>Text object can only contain a single line of text. </td>
     </tr>
     </tr>
Line 303: Line 303:
       <td></td>
       <td></td>
       <td>VERTICAL</td>
       <td>VERTICAL</td>
       <td>Orientation attr</td>
       <td>[OK] Orientation attr</td>
       <td>Orientation of this object is vertical. </td>
       <td>Orientation of this object is vertical. </td>
     </tr>
     </tr>
Line 309: Line 309:
       <td></td>
       <td></td>
       <td>VISIBLE</td>
       <td>VISIBLE</td>
       <td>For widgets, we can check if the NSView is visible.</td>
       <td>[MAYBE] For widgets, we can check if the NSView is visible.</td>
       <td>Object is not hidden but may be off-screen.
       <td>Object is not hidden but may be off-screen.
STATE_VISIBLE is no guarantee that the object is actually unobscured on
STATE_VISIBLE is no guarantee that the object is actually unobscured on
107

edits