Accessibility/JSON ARIA: Difference between revisions

 
(2 intermediate revisions by 2 users not shown)
Line 61: Line 61:


* One suggestion is to create a new processing instruction like: <code> <?xml-aria href="chrome://calendar/content/access/roles.json" type="text/json"?></code>
* One suggestion is to create a new processing instruction like: <code> <?xml-aria href="chrome://calendar/content/access/roles.json" type="text/json"?></code>
**Aaron: can we do this on a role by role basis for SVG? We have that advantage in the link solution for HTML
* Also, since XUL has XBL, and this is effectively a new widget, we could require that it be a new element. The nsIAccessibleProvider interface used in XBL could be extended to provide a property that points to the JSON file. Or, in XBL we could actually directly define the properties that would have been in the JSON.
* Also, since XUL has XBL, and this is effectively a new widget, we could require that it be a new element. The nsIAccessibleProvider interface used in XBL could be extended to provide a property that points to the JSON file. Or, in XBL we could actually directly define the properties that would have been in the JSON.
** Fallen: processing instruction has the advantage that its a more general form of inclusion, which could possibly lead to allowing aria extensions for any type of XML document.
** Fallen: processing instruction has the advantage that its a more general form of inclusion, which could possibly lead to allowing aria extensions for any type of XML document. Aaron: I think we might want to allow either. If XBL is available though I suggest to put it there as part of widget definition.
** Fallen: In XBL, we could probably use the <resources> block to add something, i.e:
** Fallen: In XBL, we could probably use the <resources> block to add something, i.e:
<pre>
<pre>
Line 74: Line 73:
   ...
   ...
</binding>
</binding>
</pre>


== Authoring content with the new widget ==
== Authoring content with the new widget ==
Line 123: Line 123:
       [ "ignored", "boolean" ],
       [ "ignored", "boolean" ],


     "passiveProperties": [    <!--  AT should not notify user of changes, but should still present these properties when the object receives with them focus -->
     "passiveProperties": [    <!--  AT should not notify user of changes, but should still present these properties when the object receives focus -->
       <!-- prop attribute name, data type, optional l10n string -->
       <!-- prop attribute name, data type, optional l10n string -->
       [ "idle",    "string" ],      <!-- readable string -->
       [ "idle",    "string" ],      <!-- readable string -->
Confirmed users
1,085

edits