IRC log of aria on 2015-10-27

Timestamps are in UTC.

00:00:55 [RRSAgent]
RRSAgent has joined #aria
00:00:55 [RRSAgent]
logging to http://www.w3.org/2015/10/27-aria-irc
00:01:04 [MichaelC]
rrsagent, do not start a new log
00:01:09 [MichaelC]
rrsagent, make log world
00:01:19 [MichaelC]
meeting: ARIA FtF Day 2
00:01:22 [MichaelC]
agenda: https://www.w3.org/WAI/PF/wiki/Meetings/TPAC2015/ARIA
00:01:27 [MichaelC]
chair: Rich_Schwerdtfeger
00:01:31 [MichaelC]
rrsagent, make minutes
00:01:31 [RRSAgent]
I have made the request to generate http://www.w3.org/2015/10/27-aria-minutes.html MichaelC
00:01:45 [tzviya]
present+ Tzviya_Siegman
00:02:07 [richardschwerdtfeger]
present+ Rich+Schwerdtfeger
00:02:47 [mck]
mck has joined #aria
00:03:27 [jamesn]
scribeNick:jamesn
00:03:39 [mhakkinen]
mhakkinen has joined #aria
00:03:44 [MichaelC]
present+ Léonie_Watson, Matt_King, Rich_Schwerdtfeger, Janina_Sajka, MichaelC, Mark_Sadecki, John_Foliot, James_Nurthen, Joanmarie_Diggs, Jason_White, Judy_Brewer, Cynthia_Shelly, Kenny_Zhang, Takeshi_Kurosawa
00:03:52 [MichaelC]
rrsagent, make minutes
00:03:52 [RRSAgent]
I have made the request to generate http://www.w3.org/2015/10/27-aria-minutes.html MichaelC
00:04:06 [clapierre]
present+ Charles_LaPierre
00:06:26 [Can]
Can has joined #aria
00:07:03 [jamesn]
CS: SO the topic is script based accessibility
00:07:14 [jamesn]
TOPIC: Script-based A11y
00:07:21 [jamesn]
3 inputs WAPA
00:07:28 [jamesn]
Indie UI Events
00:07:36 [jamesn]
Web Accessibility API from Mozilla
00:08:09 [jamesn]
so what I was thinking is that we would talk about use cases and what we are trying to achieve
00:08:16 [Wei_Wang]
Wei_Wang has joined #aria
00:08:24 [Kenny]
present+ Kenny_Zhang, Can_Wang, Wei_Wang
00:08:27 [Judy]
Judy has joined #aria
00:08:37 [jamesn]
the use cases of the 3 proposals overlap then need to look at the 3 different proposals and how they might meet the use cases or not
00:08:49 [jamesn]
the ideal is to have 1 propoal in the end
00:08:53 [tzviya]
tzviya has joined #aria
00:09:07 [jamesn]
side piece is that platform APIs have a bunch of pieces which oeverlap but some that don't
00:09:28 [jamesn]
Web apis may need some of these to platform APIs may need to fill some holes
00:09:39 [jamesn]
Does anyone have use cases?
00:10:24 [jamesn]
So - 1 of the big use cases is virtualization. 2 really good examples. 500 page word doc. don't have it all in the dom. you want you AT to know you are on paragraph 342 for example
00:10:46 [jamesn]
long lists are another example. search results, facebook feeds etc. are other uses. you don't have the whole list in the dom
00:11:01 [jamesn]
another use case we have thought about is increasing performance
00:11:39 [jamesn]
the winjs control set - a JS control set - has a list control. They were managing the posinset and setzise in aria. found that pushing all those strings around was costly
00:12:17 [jamesn]
2 things looked at. 1 was exposing the properties and another was an event which gets fired when there is a call from the api so you can react when someone is listening
00:12:25 [jamesn]
so not pushing the strings around unless consumed
00:12:40 [jamesn]
we are less concerned with automated testing
00:13:14 [jamesn]
MK: if you are doing automated testing of a webpage. simplest example is does it have a name. essentially in a test tool you have to implement the name calculation yourself
00:13:18 [jamesn]
q+
00:13:54 [jamesn]
RS: 1 of the problems with native plaform testing. on the mobile devices for androis and apple the apis are undocuemtned
00:14:13 [jessebeach]
jessebeach has joined #aria
00:14:20 [jamesn]
would be helpful to have 1 consistent layer rather than having to test on each platform. would love to not have the mapping guides.
00:14:44 [jamesn]
had the discussion with JC - asked for mappings. repsonse was that we are the only at so why do we need to supply this
00:15:17 [jamesn]
one of the things we need to do is have device independent interaction. lots of the indieUI stuf f we need to look at
00:15:20 [tzviya]
q+ to provide use-case of data-based simulation
00:15:42 [jamesn]
largest cost to web apps is keyboard support.
00:16:03 [jamesn]
any API that we do do - lets say if there is a property change - i dont want the web app person to send the event to the at
00:16:16 [jamesn]
we should be able to do that and make things easier for authors
00:16:45 [jamesn]
CS: there are use cases for both of those. there are times the compoentn needs to fire the events and the other times the browser should do it for you
00:16:58 [jamesn]
i hear authors wanting more specific cxontrol
00:17:08 [jamesn]
RS: i hear they want to force things
00:17:20 [jamesn]
MK: we don;t want that
00:17:34 [jessebeach]
q+
00:18:50 [Kenny]
s/cxontrol/control
00:18:54 [jamesn]
RS: different types of authors
00:19:01 [jamesn]
RS: power users and others
00:19:07 [Kenny]
s/don;t/don't
00:19:08 [jamesn]
RS: the 2 have to be able to operate together
00:19:17 [jamesn]
CS: I think there are models for that in other places
00:20:30 [mhakkinen]
mhakkinen has joined #aria
00:20:36 [jamesn]
RS: we enforce structure in aria. a problem in early api dev is we didnt do that
00:20:47 [jamesn]
try to fit properties into buckets of apis
00:20:57 [jamesn]
they include the state information in labels
00:20:58 [jamesn]
etc
00:21:03 [jamesn]
we are giving a bigger chainsaw
00:21:09 [jamesn]
going to require thought
00:21:20 [jamesn]
CS: want to design a socket set not a vice grip
00:21:28 [jamesn]
AS: 2 things
00:22:28 [jamesn]
AS: 1 part is provide access for testing and screen readers and other AT to enable a screen reader is JS for example
00:22:54 [jamesn]
the 2nd is alternative to aria where don't have to deal with DOM. Can create the accessible object in JS and feed to the AT
00:22:54 [clapierre]
q?
00:23:01 [jamesn]
ack me
00:23:13 [jamesn]
ack tz
00:23:13 [Zakim]
tzviya, you wanted to provide use-case of data-based simulation
00:23:16 [richardschwerdtfeger]
ack tzviya
00:23:31 [jamesn]
TS: some of the use cases in the world of publishing could be DB simulations
00:24:05 [jamesn]
where have a huge data set and dont want it loaded into the dom. There is a simulation - a CSV for example where a user can maniuplate a graphic in some way
00:24:21 [jamesn]
an example in journal publishing
00:24:28 [jamesn]
we are strugling how to make it availble
00:24:49 [jamesn]
CS: someone i know had an econ 200 class where there was a flash object where could move things around
00:25:16 [jamesn]
RS: with control patterns this will get addressed. don't currently get input events from AT
00:25:31 [jamesn]
q+ to ask if anyone has discussed the privacy implications
00:26:34 [jamesn]
RS: web programming model is different focussed in events coming in. MSFT model is nice but there are 2 sifferent groups. web and native and need to look how work
00:26:49 [jamesn]
CS: an event could bubble but not every thing in the chain handles it
00:26:57 [jamesn]
probably ways around it
00:27:15 [jamesn]
lots of interesting things. how far should onclick bubble etc
00:27:19 [jamesn]
tricky area
00:27:45 [richardschwerdtfeger]
ack jessebeach
00:27:48 [richardschwerdtfeger]
q?
00:27:50 [jamesn]
JB: wanted to understand who the sudience would be. there are conflated asks
00:28:09 [jamesn]
JB: 1 would be access to the a11y tree - then the ability to interact with that information
00:28:22 [jamesn]
JB: who we talk to next would inform what you would ask for
00:28:36 [jamesn]
CS: office needs to do stuff like in the native plaform applications
00:28:46 [jamesn]
CS: other complex web applications have the same issue
00:29:14 [jamesn]
JB: from the perspective of the FB newsfeed. I don't think we would want write access to another model of the inforpmauton. Has the risk of getting out of sync
00:29:18 [asurkov]
asurkov has joined #aria
00:29:45 [jamesn]
JB: potential for collisions. the 1st xhort step to make the a11y infromtion. Make the tree read-only first.
00:30:02 [jamesn]
CS: In browsers with a tree that makes sense - not all do
00:30:19 [jamesn]
RS: 1 thing in the 508 refresh is that can change state from an application
00:30:32 [jamesn]
RS: we devs dont expect the dom to change from AT
00:30:46 [jamesn]
spent about 2 weeks on revised wording on the refresh
00:30:51 [jamesn]
maybe we do do that
00:31:04 [jamesn]
CS: office barely touches the DOM. Want to do everything in the JS layer
00:31:16 [Can_]
Can_ has joined #ARIA
00:31:25 [jamesn]
JB: if you look at angular , react etc. the model is treating the DOM as the state of the application
00:31:56 [jamesn]
CS: enabling a different style of dev
00:32:06 [jamesn]
there could be ways to mix that would be bad practice
00:32:10 [jamesn]
and others not
00:32:25 [jamesn]
CS: if a Checkbox was just a JS object and an image then could react to it
00:32:34 [richardschwerdtfeger]
q?
00:32:34 [jamesn]
JB: would love to see prototypes
00:32:49 [jamesn]
JB: with edge can go into about flags with accessibility experimaental
00:33:01 [jamesn]
CS: the WAPA demos should work there
00:33:21 [jamesn]
s/JB: with edge /CS: With edge/
00:33:26 [jamesn]
ack me
00:33:26 [Zakim]
jamesn, you wanted to ask if anyone has discussed the privacy implications
00:34:27 [MarkS]
JN: privacy could be an issue and we need to think about this carefully.
00:35:02 [jamesn]
RS: in Vista UI Automation was for testing then added the accessibility on top of that
00:35:18 [jamesn]
RS: could be automated test procedures - could be stuff on mobile
00:38:00 [jamesn]
TS: epub in germany is not kindle and they have a bunch of accessibility preferences
00:38:29 [jamesn]
CS: are there other use cases which are difficult to solve in markup
00:39:02 [jamesn]
RS: content editable. need to move the caret - an API which would convey the inforomation to notify the position within an object, when focus moves etc
00:39:19 [jamesn]
RS: normally 1 person working on content ediatble for the browser
00:39:27 [jamesn]
CS: webapps has a whole TF on editing
00:39:37 [jamesn]
RS: if there is no api then you are hosed
00:39:45 [tzviya]
ebook reader is Tolino Shine: http://mytolino.de/ (in German)
00:40:07 [jamesn]
CS: 1 thing i like about wapa is that it builds. we built ontop of the stuff they were doing in the editing spec
00:40:30 [jamesn]
RS: 1 thing that ia2 and atk do well is the location of charcters. early UIA disn't do that
00:40:41 [jamesn]
RS: table support is horrific in some platforms
00:41:05 [jamesn]
RS: some of the things we do in rich web content like embedding stuff in tables. need to look at the apis to find out where there are gaps
00:41:13 [jamesn]
CS: editing is a big use case
00:41:31 [jamesn]
q?
00:41:49 [jamesn]
JW: raises some questions
00:42:10 [jamesn]
all the UAs that work on multiple OSes have an internal api which is bridged to OS API
00:42:19 [jamesn]
that is the layer you are suggesting may be connected to
00:42:34 [jamesn]
related to the APis of the OSes which could be taken advantage of
00:42:47 [jamesn]
also interested in the realtionship between any api and what happends in the DOM
00:43:29 [jamesn]
some Apps make use of the aria attributes to control the UI. A legit use case - doesn't breacj the constraint on aria of requiring the UA to do stuff but does alloew the author to take advanteage
00:45:03 [jamesn]
in HTML have a distinction between IDL attributes and content attributes - what is the makrup and the JS. the IDL attributes represent the content attributes
00:45:14 [aboxhall]
aboxhall has joined #aria
00:45:22 [jamesn]
could create IDL attributes for all the state and property attributes. can think about how we want to do that
00:45:48 [jamesn]
connection between any events related proposal and the indieui event work and the WebPlatform WG Editing work
00:45:56 [joanie_]
joanie_ has joined #aria
00:46:08 [jamesn]
what we want is a uniform treatment of intention events which would apply however those events originaTE
00:46:32 [jamesn]
IF GOING TO see more semantically expressive event types on the web then need a more uniform treatement
00:47:03 [jamesn]
see how we can harmonize work in this area
00:47:28 [jamesn]
RS: said not using the dom. how are you doing styling on the object model
00:47:37 [jamesn]
CS: not completely sure. in the doc area
00:48:01 [jamesn]
they keep the visual rendering and the semantic rendering seperate. have some black magic
00:48:15 [joanie_]
history
00:48:16 [jamesn]
kind of like a shadow dom kind of thing
00:48:25 [jamesn]
the a11y information is in JS objects
00:48:34 [jamesn]
want something more similar to windows
00:48:42 [jessebeach]
q+
00:48:56 [jamesn]
RS: what they are doing is creating a different object model. almost non-web
00:49:10 [jamesn]
CS: i believe google docs works a similar way
00:49:40 [jamesn]
RS: would make it very hard to do what JW suggested. if trigger off object model then not going to be reflected
00:50:38 [jamesn]
CS: you are getting JS events. If design is such that exposing stuff to the user. can react to the toggle event and check the checkbox. there is a JS object and DOM object. In reaction to the JS event the script changed the JS object representation and the DOm representation
00:50:57 [jamesn]
CS: dont have to haev 2 trees but some do and no solution currentyly
00:51:05 [jamesn]
RS: may not want to map the dom at all
00:51:11 [jamesn]
going to be very challenging
00:51:24 [jamesn]
have 2 differnt trees. 1 has focus etc.
00:52:07 [jamesn]
CS: like canvas
00:52:15 [Kenny]
s/breacj/breach
00:52:32 [Judy]
q+ Jason
00:52:34 [Kenny]
s/alloew/allow
00:52:53 [Kenny]
s/advanteage/advantage
00:52:54 [richardschwerdtfeger]
q?
00:52:59 [richardschwerdtfeger]
acke jessebeach
00:53:11 [richardschwerdtfeger]
q?
00:53:20 [richardschwerdtfeger]
ack jesse
00:53:23 [jamesn]
JB: when i did a visual representation through canvas without dom.
00:54:07 [richardschwerdtfeger]
q?
00:54:09 [jamesn]
JB: there are similar proposals out there. Would like to hear more from Alex. the moz proposal as i understand it would create an association between a11y node and dom noed. sounds like MSFT doesn't have that at the moment
00:54:16 [jamesn]
how to resolve this
00:54:19 [richardschwerdtfeger]
q?
00:54:34 [richardschwerdtfeger]
ack Jason
00:54:59 [Kenny]
RRSAgent, draft minutes
00:54:59 [RRSAgent]
I have made the request to generate http://www.w3.org/2015/10/27-aria-minutes.html Kenny
00:55:08 [jamesn]
JW: the possibility of what is in the dom being inconsistent with the a11y api. Have concerns about anything that may compicate that
00:55:14 [richardschwerdtfeger]
q?
00:55:16 [tzviya]
q+ to talk about multiple OMs
00:55:30 [jamesn]
JW: the information about the a11y related state is maintained. If there are performance concerns.
00:55:51 [jamesn]
anything with 2 trees which aren't connected is of concern
00:55:52 [richardschwerdtfeger]
q?
00:56:00 [richardschwerdtfeger]
ack tzviya
00:56:00 [Zakim]
tzviya, you wanted to talk about multiple OMs
00:56:02 [jamesn]
TS: observation
00:56:04 [richardschwerdtfeger]
q?
00:56:19 [jamesn]
multiple object models. concerns from multiple groups
00:56:44 [jamesn]
css object model, css selectors to create annoations, and another
00:56:50 [richardschwerdtfeger]
q?
00:56:54 [jamesn]
if we are concerned about 2 what happends when there are 4
00:57:19 [tzviya]
s/another/shadow DOM
00:57:25 [jamesn]
i heard your concern jason - but this is a very advanced scenario. devs with multiple trees would be responsbile for keeping them in sync
00:57:45 [jamesn]
big complex commerical apps with developers on it. sometimes you need sharp knives to do a job
00:58:10 [jamesn]
would not expect a web site dev to use them directly
00:58:27 [jamesn]
agree that trees in sync is hard. but already the case
00:58:39 [jamesn]
DOM, Shadow doms, fallback content, etc. etc. etc.
00:59:07 [jamesn]
all exists now. what i am trying to achieve is some sort of not stupid way to communictae between those layers
00:59:15 [sam]
sam has joined #aria
00:59:17 [jamesn]
RS: dont want test tools going to the api layer
00:59:28 [jamesn]
rs: need a layer in the browser that handles all of this
00:59:44 [jamesn]
otherwise need to think how going to test thos
01:00:11 [jamesn]
want to have a way of testing across devices
01:00:30 [jamesn]
CS: working with a11y the mac office team did a bunch of work.
01:00:45 [jamesn]
seems unliekly to me that we are going to put a layer in the browser
01:00:55 [jamesn]
don't see it as likely
01:01:09 [jamesn]
We also really want a web app and windows app to act the same
01:01:34 [jamesn]
office for win and office for android etc. the user shouldn't have to care. visually that is largely true now
01:01:42 [jamesn]
not there yet at the a11y layer
01:01:58 [jamesn]
RS: if push to the native plaform then going to be very scostly
01:02:16 [jamesn]
RS: test it once - if platform layer has a mapping bug then it is a bug
01:02:19 [rumk]
rumk has joined #aria
01:02:22 [jamesn]
can stop their work there
01:02:39 [jamesn]
need to have something that runs across platforms. need things to be consistent
01:02:51 [jamesn]
CS: we wire more directly from the DOM to UIA
01:03:20 [jamesn]
CS: does this app work the same is our test practice
01:03:28 [jamesn]
a different angle on it
01:04:06 [jamesn]
RS: my product teams. can test once in the browser and then with ATs on the platforms. Can't do special API tests on the plaforms
01:04:14 [jamesn]
RS: we like not having to do that
01:04:22 [jamesn]
CS: both scenarios are real
01:04:36 [richardschwerdtfeger]
q?
01:05:38 [jamesn]
RS: what we do now is use webdriver - run a11y test tools right off that infrastructure. go into the dom and test
01:05:58 [jamesn]
that has a limit in that we have those other object models where you can get that
01:06:14 [jamesn]
i was thinking of that as being the webdriver testing work
01:07:18 [jamesn]
CS: have a test that does a bunnch of ui actions then checks that the right results and the right a11y events got fired etc. etc. etc.
01:07:38 [jamesn]
so i know when AT consumes the api we know everything got through
01:08:05 [jamesn]
RS: If I am creating the web application i don't want to test that the apis go to the browser
01:08:13 [jamesn]
lets think about aria 1
01:08:38 [jamesn]
browsers didn't have full api mapping support. do i not ship becuase a browser doesn't do the API? People hack around the bug
01:08:52 [jamesn]
the average app developer can't call the edge team
01:09:23 [jamesn]
CS: 2 assumptions is that all the browsers have a lot of work to do on mapping. if that is done it should be the same thing testing the dom vs. the API
01:09:29 [jamesn]
RS: yet to see that happening
01:10:03 [jamesn]
MK: more likely to happen if do cross browser implementation
01:10:18 [jamesn]
CS: used to test at API layer - found that didn't correlate to works with AT
01:10:35 [jamesn]
AT on windows are spaghetti
01:10:48 [jamesn]
RS: the way it is
01:12:40 [timeless]
timeless has joined #aria
01:12:51 [jamesn]
CS: do you see it being used primarily for testing or also for web apps?
01:13:06 [jamesn]
AS: writing a screen reader for web devices and we needed this
01:13:13 [richardschwerdtfeger]
RRSAgent, make log public
01:13:18 [richardschwerdtfeger]
RRSAgent, draft minutes
01:13:18 [RRSAgent]
I have made the request to generate http://www.w3.org/2015/10/27-aria-minutes.html richardschwerdtfeger
01:13:23 [richardschwerdtfeger]
q?
01:13:24 [jamesn]
CS: is this implemented
01:13:26 [Josh_Soref]
Josh_Soref has joined #aria
01:13:31 [Josh_Soref]
present+
01:13:34 [jamesn]
AS: yes based on XPCOM stuff
01:13:41 [jamesn]
no demos
01:13:50 [jamesn]
CS: Is it on by default
01:13:57 [jamesn]
AS: yes but have to have permission for it
01:14:20 [jamesn]
AS: Our old API is exposed. connected to the DOM but different tree
01:14:27 [timeless]
s/noed/node
01:14:36 [RRSAgent]
I have made the request to generate http://www.w3.org/2015/10/27-aria-minutes.html timeless
01:14:51 [jamesn]
CS: can you send directions on how to do that
01:15:03 [jamesn]
from a plugin
01:16:13 [Josh_Soref]
s/present+/present+ Josh_Soref/
01:16:40 [timeless]
scribe: timeless
01:16:56 [timeless]
ZZZ: we sent to the Group our draft
01:17:04 [timeless]
... it includes the ZZQ kind of interfaces
01:17:07 [joanie]
s/ZZZ/AS/
01:17:09 [timeless]
... IAccessible2 interfaces
01:17:17 [timeless]
... the second is AccessibleStream Interface
01:17:24 [timeless]
... virtual cursor, allows you to traverse web content
01:17:30 [timeless]
... traverse text stuff and accessible object
01:17:33 [cyns]
cyns has joined #aria
01:17:33 [asurkov]
https://wicg.github.io/a11yapi/
01:17:40 [timeless]
... not yet finished, you can get an idea about it
01:17:50 [timeless]
... other parts I didn't push yet
01:18:01 [timeless]
... you should be able to write/describe what role
01:18:05 [timeless]
... what states/actions/etc.
01:18:12 [timeless]
... if you introduce new role extensions, like debug extensions
01:18:23 [timeless]
... you should be able to describe--write in JavaScript what the new taxonomy is
01:18:28 [tzviya]
s/debug/DPUB
01:18:31 [timeless]
... what relationship between this stuff and existing taxonomies
01:18:48 [timeless]
... browser should be able to map new stuff into existing Accessibility APIs automatically
01:18:52 [timeless]
... that's the third part
01:19:01 [timeless]
... the fourth part is to write accessible interfaces right in JS
01:19:08 [timeless]
... useful, if you don't want to use ARIA
01:19:17 [timeless]
... you don't want to put accessibility stuff right in your web content
01:19:21 [timeless]
... you don't know if you have any consumers
01:19:32 [timeless]
... so you describe accessible objects in JS, create when asked
01:19:41 [timeless]
... or if you want to create stuff that doesn't have DOM, like <canvas>
01:19:47 [timeless]
... or other wild-web-content
01:20:02 [timeless]
... these 4 things I want to happen
01:20:14 [timeless]
RRR: other parts of this document we should look at?
01:20:24 [timeless]
AS: I think you referred to this
01:20:25 [joanie]
s/RRR/CS/
01:20:26 [asurkov]
https://wiki.mozilla.org/Accessibility/WebAccessibilityAPI
01:20:36 [timeless]
... it's an early document
01:20:40 [timeless]
... good enough to get an idea about
01:20:53 [timeless]
... the taxonomies and creation of AccessibleObjects in JS
01:21:05 [timeless]
CS: these objects map directly to your intermediate layer?
01:21:07 [timeless]
AS: yes
01:21:15 [jessebeach]
q+
01:21:18 [timeless]
CS: you're creating the same kinds of objects that are created/mapped from the dom
01:21:22 [timeless]
AS: yes, that's the idea
01:21:31 [timeless]
CS: and they're automatically mapped to the platform APIs
01:21:34 [timeless]
TTT: that's nice
01:21:36 [timeless]
CS: yes
01:21:41 [joanie]
s/TTT/RS/
01:21:42 [timeless]
TTT: it would help testing dramatically
01:21:46 [timeless]
s/TTT/RS/
01:21:50 [timeless]
... the model is nice
01:21:54 [timeless]
CS: yes, that's nice
01:22:02 [timeless]
... we don't have that in our model
01:22:09 [timeless]
... but we have stuff like this
01:22:15 [timeless]
... stuff we have in WAPA
01:22:18 [timeless]
... let me look
01:22:27 [timeless]
... or can you, [AS,] talk about events?
01:22:31 [timeless]
AS: events aren't finished
01:22:44 [timeless]
... events should be able to say "i want to do this events on this tree"
01:23:00 [timeless]
CS: do they raise JS events if you get a call from the Accessibility API?
01:23:27 [timeless]
... if you have the A11y Tool sending an event to a [synthetic] object, does it trigger a DOM event/similar?
01:23:35 [timeless]
AS: not sure it should be DOM events
01:23:45 [timeless]
CS: ARIA does a good job of sending out, but doesn't do a good job of handling in
01:23:47 [clapierre]
q?
01:23:52 [timeless]
RS: It doesn't do a good job at all
01:23:55 [timeless]
CS: I was being nice
01:23:59 [timeless]
RS: I like the intermediate layer
01:24:04 [timeless]
... very thin
01:24:09 [timeless]
CS: I can't commit to that
01:24:14 [timeless]
... maybe it's just a mapping
01:24:27 [timeless]
RS: test that across platforms, if it doesn't work, then browser needs to fix it
01:24:37 [timeless]
... I don't think we need to have authors test across browsers
01:24:47 [timeless]
CS: I don't think it has to happen, the 1pm meeting has to handle that
01:24:52 [richardschwerdtfeger]
q?
01:24:54 [timeless]
ack
01:24:57 [richardschwerdtfeger]
ack jesse
01:25:09 [timeless]
JB: the A11y object has a link back to the DOM node
01:25:17 [timeless]
... if you're writing to the AT Tree, and the DOM node updates
01:25:29 [timeless]
... would the object piece be overwritten by the update?
01:25:34 [timeless]
AS: I don't know that we have an answer
01:25:47 [timeless]
... if you create a JS A11y object, then you just override everything
01:25:58 [timeless]
... if you do, then you're responsible for the semantics you create
01:26:13 [timeless]
... not very sure about this, maybe we should try to find a balance from the DOM semantics and your object
01:26:27 [timeless]
JB: w/ the AT rep, and the ability to create Nodes
01:26:34 [timeless]
... you could create an AX tree with no representation
01:26:50 [timeless]
... divorced from the DOM they kind of live in this intertwined world
01:26:59 [timeless]
... I always saw this as a read-only tree
01:27:07 [timeless]
... there's a lot of complication when you can try to write to it
01:27:09 [timeless]
AS: it's true
01:27:15 [timeless]
[ common laughter/agreement ]
01:27:22 [timeless]
CS: but we're trying to do this
01:27:32 [timeless]
... if you're creating a knife...
01:27:42 [timeless]
PPP: need a knife case
01:27:54 [timeless]
RS: good to have a knife, but want something for people who don't need an Axe
01:28:01 [timeless]
... if we want to create an app, and have a handler
01:28:11 [timeless]
CS: I think the more common scenario is mostly markup w/ this sprinkled
01:28:18 [timeless]
... but some scenarios w/ all JS
01:28:25 [timeless]
PPP: is it possible to set pretty simple limitations
01:28:41 [timeless]
... if something is in the DOM, they wouldn't be able to manipulate it through the tree
01:28:43 [timeless]
s/PPP/MK/
01:28:45 [timeless]
s/PPP/MK/
01:28:52 [timeless]
... if it is in the tree but not in the DOM
01:29:03 [timeless]
... something that makes conflicts very difficult, or almost impossible
01:29:10 [timeless]
... so people don't cut their foot off w/ a knife
01:29:15 [timeless]
CS: yes, I don't know what it would be
01:29:26 [timeless]
... but we'd need to make sure it doesn't block the intended UC
01:29:31 [timeless]
... we need to look very carefully
01:29:38 [timeless]
MK: very serious consideration
01:29:53 [timeless]
... people who are writing JS are not necessarily aware they're holding a knife
01:29:56 [timeless]
[ laughter ]
01:30:02 [MarkS]
q+
01:30:06 [timeless]
CS: true w/ a lot of the stuff we have now
01:30:15 [timeless]
MK: the AT is essentially invisible
01:30:21 [timeless]
... something that goes along w/ this that changes that
01:30:28 [timeless]
... you can't ignore the AT in some way
01:30:33 [timeless]
... no idea what that would be
01:30:42 [timeless]
JN: the AT will need to be less invisible
01:30:44 [timeless]
CS: yeah
01:30:54 [timeless]
... this functionality would allow you to build more plugins
01:30:54 [tzviya]
+! to less invisible AT
01:30:57 [timeless]
... see what's going on
01:31:06 [timeless]
... plugins that integrate w/ F12/Firebug
01:31:16 [timeless]
MK: people using JS functionality to not see what's going on
01:31:21 [timeless]
s/not //
01:31:24 [timeless]
... highly visible
01:31:29 [timeless]
CS: ... in your face even
01:31:33 [timeless]
MK: the browser can be aware
01:31:56 [timeless]
CS: the UC I'm trying to solve in Word, the way Word thinks about documents, and the way HTML thinks about documents
01:31:59 [timeless]
... are radically different
01:32:11 [timeless]
... the visible DOM tree looks like HTML, but
01:32:21 [timeless]
... the team wants it to sound like Word, not HTML
01:32:25 [MarkS]
q-
01:32:36 [timeless]
... yes, it's a very advanced scenario, and most developers don't have to do that
01:32:52 [mck_]
mck_ has joined #aria
01:32:53 [timeless]
CS: AS thanks for joing us
01:33:00 [timeless]
s/ing/ining/
01:33:04 [timeless]
[ Break until 11am ]
02:01:04 [mck]
mck has joined #aria
02:02:43 [clapierre]
clapierre has joined #aria
02:04:53 [richardschwerdtfeger]
richardschwerdtfeger has joined #aria
02:07:11 [jessebeach]
jessebeach has joined #aria
02:11:06 [MarkS]
MarkS has joined #aria
02:13:15 [LJWatson]
LJWatson has joined #aria
02:14:32 [kurosawa]
kurosawa has joined #aria
02:15:26 [tzviya]
tzviya has joined #aria
02:15:43 [Judy]
Judy has joined #aria
02:15:47 [MarkS]
MarkS has joined #aria
02:16:35 [webwatch]
webwatch has joined #aria
02:17:23 [webwatch]
webwatch has left #aria
02:17:56 [MarkS]
scribenick: MarkS
02:18:13 [jasonjgw]
jasonjgw has joined #aria
02:18:23 [webwatch]
webwatch has joined #aria
02:18:58 [MarkS]
Topic: IndieUI
02:19:08 [MarkS]
RS: mark parts of your document that have actions
02:19:20 [MarkS]
...event gets triggered, then that area can have an event handler associated with it
02:19:38 [MarkS]
...as long as the point of regard is in that area, the event bubbles up
02:19:46 [MarkS]
...must have a handler to handle these actions
02:19:54 [MarkS]
...can be generated by a trigger in your web page or by the browser
02:20:01 [MarkS]
...maybe ESC will close a browser
02:20:14 [MarkS]
...browser will look at the context the command was issued in
02:20:32 [jasonjgw]
jasonjgw has joined #aria
02:20:35 [MarkS]
...here is an example. dismiss. a UI action. point of regard has to be inside this UI action dialog box, in this case
02:20:42 [MarkS]
...there is an event listener.
02:21:02 [MarkS]
...author writes a handler to process event
02:21:08 [MarkS]
...here are different actions
02:21:17 [MarkS]
...collapse, delete, dismiss, expand, etc.
02:21:25 [MarkS]
...there are more, just not in last published draft
02:21:46 [MarkS]
...want to talk about triggers. you can put one on a button. anything that has a click, the action will trigger the device ind. event
02:22:28 [MarkS]
...trigger event, cause a dismiss, PoR inside here, have a handler that responds. these can come from the browser or the application.
02:22:34 [Rumk]
Rumk has joined #aria
02:22:41 [MarkS]
...the browser responds to device specific actions.
02:22:57 [MarkS]
...could be a voice recognition command that triggers the closing of the dialog box
02:23:08 [MarkS]
...you can programmatically determine where these are supposed to be triggered
02:23:19 [MarkS]
...good for testing. want to know where response is happeneing
02:23:34 [MarkS]
...events get fired and they bubble up, same as it currently is
02:23:46 [MarkS]
...if you have a control pattern, you would just have a method that responds to the dismiss command.
02:23:55 [MarkS]
...is there a control pattern for dismissing a dialog box?
02:24:08 [MarkS]
CS: there is a window control pattern that has a lot of that]
02:24:23 [MarkS]
RS: what we don't have in ARIA today is the ability to do these higher level actions
02:24:34 [MarkS]
...we can do this through the object later.
02:24:40 [MarkS]
...add a method on that element
02:24:47 [MarkS]
...we have two different models at play here.
02:25:31 [MarkS]
JW: there are some open issues. including the fact that we hadn't reached consensus on how to deal with value changes.
02:25:44 [MarkS]
...like a slider control, by a pointer device. how would that be handled?
02:26:03 [MarkS]
...use indieUI events to change values of UI controls
02:26:11 [richardschwerdtfeger]
q?
02:26:19 [MarkS]
...other difficulty is that we determined that this work would be best carried out elsewhere
02:26:39 [MarkS]
...webapps seemed like a logical place. intention events.
02:26:45 [MarkS]
...interest in editing APIs
02:26:58 [MarkS]
...seemed interested in merging work
02:27:10 [MarkS]
...no decision about where we go from here.
02:27:34 [MarkS]
...benefits to indieUI events is that the events can be generated by all sorts of devices, don't need to be assistive technology
02:27:38 [MarkS]
...easier for authors
02:27:48 [MarkS]
...no handlers for all the possible events.
02:28:01 [MarkS]
...the UA would determine how those are triggered
02:28:35 [richardschwerdtfeger]
q+
02:28:36 [MarkS]
...not effort to let authors customzied the particular events, just the abstract events
02:28:43 [MarkS]
...may be future work
02:29:00 [MarkS]
...this is not accessibility specific, which is its major advantage.
02:29:11 [MarkS]
RS: we talked about value changes and things like that.
02:29:27 [MarkS]
...there needs to be a standard way to get at the current value and how it gets changed
02:29:34 [MarkS]
...could be generated by an API
02:29:44 [MarkS]
...this is where a common layer API would be a benefit
02:30:00 [MarkS]
...scrolling the scrollbar, you need to know where you are and what the increments would be
02:30:22 [MarkS]
JW: james craig had specific implementation concerns that weren't very clear
02:30:42 [MarkS]
...no way to change the value of the UI control. read not write
02:30:53 [MarkS]
...control could be several components,
02:31:12 [MarkS]
...we didn't fully understand the challenge
02:31:45 [richardschwerdtfeger]
q?
02:31:47 [richardschwerdtfeger]
ack
02:31:50 [richardschwerdtfeger]
q?
02:31:52 [MarkS]
JS: we didn't ask for recharter. if this is going to succeed we need developer participation, which we didn't have
02:31:54 [richardschwerdtfeger]
ack rich
02:32:25 [MarkS]
...putting all of this together is the right thing to do. if we look too much to web platform to push it, it might not make it over the finish line, at least in a way that supports our needs.
02:32:37 [MarkS]
...i think we will be expected to drive that work
02:32:45 [MarkS]
CS: i think we all agree that we want to do that
02:32:55 [MarkS]
RS: web platform is only chartered for one year
02:33:02 [MarkS]
CS: its currently in an incubation group
02:33:10 [MarkS]
...recruiting people to work on it with us
02:33:38 [MarkS]
RS: the ARIA WG is chartered for 3 years. if it doesn't work out in the incubator, we can pick it up here.
02:33:54 [MarkS]
CS: the incubator purpose is to grow it and then find a home for it.
02:34:04 [MarkS]
...where it fits best
02:34:29 [MarkS]
...I'm interested in hearing what people think about the common benefits and gaps of the three proposals
02:34:38 [MarkS]
RS: i don't remember seeing details about the commands
02:34:45 [MarkS]
CS: yeah, he said he didn't get to that yet.
02:34:58 [MarkS]
RS: here is how it maps to AAPI, but not back again
02:35:08 [MarkS]
...that is why i like control patterns. can be used for testing.
02:35:20 [MarkS]
...do we do eventing model, methods at object level...
02:35:42 [MarkS]
...UIA provider layer
02:35:52 [MarkS]
...this is like ATK SPI,
02:35:57 [MarkS]
...DBUS
02:36:13 [MarkS]
CS: any ?'s about IndieUI?
02:36:26 [MarkS]
RS: i do know that apple has implemented a little of this.
02:36:34 [joanie]
s/ATK SPI/ATK and AT-SPI/
02:36:38 [MarkS]
JB: looking at the set of actions. it seems CRUDdy
02:37:05 [MarkS]
...it seems to have some medium relations. i wonder if there can ever be enough tokens to represent all you can do in an application.
02:37:27 [MarkS]
RS: it didn't end up in the browser,
02:37:39 [MarkS]
CS: we weren't 100% on the shape of the API
02:38:00 [MarkS]
JS: three part event structure. bubble from body, initial target, then the actual target.
02:38:22 [MarkS]
CS: one of the reasons it stopped where it did
02:38:36 [MarkS]
s/JS: three/JB: three
02:38:40 [jamesn]
rrsagent, make minutes
02:38:40 [RRSAgent]
I have made the request to generate http://www.w3.org/2015/10/27-aria-minutes.html jamesn
02:39:06 [MarkS]
JB: this needs to a happen at the device layer. they are abstracted away componenents
02:39:21 [MarkS]
RS: each platform has their own layer. need a place to map it.
02:39:29 [MarkS]
...how we do it, not sure. this may not be best.
02:39:36 [jasonjgw]
q+
02:39:37 [MarkS]
...we have to figure out how we handle bubbling, or if we do it at all
02:39:41 [MarkS]
can it be done with handlers
02:40:03 [MarkS]
MK: is the question do we have to do it?
02:40:48 [MarkS]
RS: you have a touch interface on the mac. different than how it is done on windows and there is IP barriers so they couldn't be shared.
02:41:05 [MarkS]
...on the platform, what gesture triggers what is different across platforms.
02:41:17 [MarkS]
...then there are the differences in keyboards on various platforms
02:41:27 [jamesn]
q+
02:41:38 [MarkS]
...faster to execute this in the browser, not in the app
02:42:10 [MarkS]
MK: if the people doing all that work today, think its all that difficult and really need this.
02:42:19 [MarkS]
...maybe they are fine doing that work.
02:42:35 [MarkS]
JN: you also have frameworks that aren't doing this and don't even allow some of the interactions we need.
02:42:50 [MarkS]
...they don't work on various touch OSes
02:42:56 [Can]
Can has joined #aria
02:42:59 [MarkS]
...you don't get that event on sliders for instance.
02:43:17 [MarkS]
MK: sounds like an implementation gap
02:43:26 [MarkS]
JN: every framework shouldn't have to do this
02:43:27 [aboxhall]
aboxhall has joined #aria
02:43:29 [MarkS]
should be done in the browser
02:44:08 [MarkS]
RS: keyboard alone, keyup, keydown, ESC, mac has a whole collection of commands that don't map to keyboard at all
02:44:28 [MarkS]
...authoring practices document refers to specific keystrokes that don't exist on mac for instance
02:44:50 [MarkS]
...if a JS framework has to handle this, they shouldn't have to.
02:45:03 [MarkS]
CS: do we know if framework developers are bothered by this?
02:45:25 [MarkS]
MK: there is a tendency to move away from frameworks
02:45:44 [MarkS]
JN: our developers would like to not have to do this stuff
02:45:51 [MarkS]
...they want something like IndiUeUI
02:46:37 [MarkS]
JB: seems like if there are semantic gaps in the token list, say 75% of behaviors represented, i imagine developers would rather just be consistent with how they approach these challenges
02:46:51 [MarkS]
...not sure we can handle all the possible tokens
02:47:13 [Judy]
Judy has joined #aria
02:47:17 [MarkS]
... in HTTP you have put, get, post, etc. then the stuff that HTTP doesn't cover
02:47:32 [MarkS]
JN: there is a finite number of things you could do on a touch device.
02:47:41 [MarkS]
...could probaby cover most of the scenarios
02:47:58 [MarkS]
RS: multi-touch devices. its currently handled at the OS level
02:48:11 [MarkS]
JN: requires passthroughs sometimes
02:48:30 [MarkS]
MK: do we know how this would have been affected by force touch?
02:49:00 [mhakkinen]
mhakkinen has joined #aria
02:49:01 [MarkS]
RS: apple is not going to release how they process 3d touch
02:49:11 [MarkS]
...we're just trying to open a dialog
02:49:26 [MarkS]
CS: time to demo WAPA
02:51:28 [MarkS]
[DEMO]
02:52:00 [mhakkinen]
mhakkinen has joined #aria
02:53:04 [MarkS]
CS: using Inspect. aria properties added when I connected via inspect
02:53:26 [MarkS]
...onariarequest event was triggered when Inspect connected
02:53:45 [MarkS]
...call to build the tree, triggered those aria attributes
02:53:51 [MarkS]
...in the DOM
02:54:02 [MarkS]
...you don't have to use the DOM, but you can
02:54:13 [MarkS]
...here is a list 1,2,3, and 100
02:54:31 [MarkS]
...inspect populates tree
02:54:41 [MarkS]
...triggers onariarequest
02:54:55 [MarkS]
...sticks aria-posinset and aria-setsize
02:55:24 [MarkS]
JN: Dragon will not benefit from this because of the way they interact
02:55:30 [MarkS]
CS: here is a checkbox
02:55:37 [MarkS]
...i will call toggle method from inspect
02:55:56 [MarkS]
...will trigger handler
02:56:33 [MarkS]
...toggle event comes in. has attributes on in. i handle that event, and I grabbed check state of checkbox and toggled it
02:56:41 [MarkS]
...an expand event would not trigger this.
02:57:31 [MarkS]
...inspect can trigger options. will call toggle, it did a couple things
02:57:36 [MarkS]
...visually, I swapped graphics
02:57:42 [MarkS]
...then I added aria-checked state
02:57:52 [MarkS]
...i used the DOM, but you don't have to
02:58:10 [MarkS]
...you can react to calls fro mAAPI, and you can react to more than just click
02:58:25 [MarkS]
...UIA has more than outbound methods
02:59:30 [MarkS]
...multiple inbound actions is something that UIA has that other APIs don't
02:59:46 [MarkS]
...the idea is that AT can interact with browser app the same way it interacts with native app
03:00:08 [MarkS]
...currently the experience between native and web is very different
03:00:14 [MarkS]
...even if visually they are the same
03:00:19 [MarkS]
...this solves that
03:00:54 [MarkS]
RS: something I like about control patterns. microsoft has been doing testing with UIA since vista. when it first came out, it was kind of ugly, but since then, it has improved a lot.
03:01:09 [MarkS]
...i remember just 7-8 control patterns in the beginning.
03:01:22 [MarkS]
CS: patterns can be composited
03:01:46 [MarkS]
...tri-state buttons would have invoke and toggle, can combine, there is expand, you an describe the behavior of an object, etc.
03:02:24 [MarkS]
...curious what people thing about these three approaches
03:02:46 [MarkS]
RS: in terms of device independent interaction. this is a lot farther along
03:03:04 [MarkS]
...with patterns, you are able to get access to states and properties.
03:03:15 [MarkS]
...there is a lot that needs to be investigated here.
03:03:24 [MarkS]
...there are gaps in UIA. the way they handle text
03:03:32 [MarkS]
CS: its better but still needs work
03:03:42 [MarkS]
RS: IA2 text works great with AT
03:03:54 [MarkS]
...is there a way we can pull all of this together
03:04:13 [MarkS]
...Alex is maintaining IA2 now. its used on Chrome, firefox, eclipse
03:04:27 [MarkS]
...there are things that are on mac that don't exist in IA@
03:04:44 [MarkS]
CS: amazon fire has a new AAPI too
03:05:18 [jasonjgw]
jasonjgw has joined #aria
03:05:37 [jasonjgw]
q+
03:06:31 [MarkS]
MS: brings up security
03:06:56 [MarkS]
CS: there is a slight risk, but details about AT are not revealed, just that AAPI call was made
03:07:03 [MarkS]
...and touch uses this API
03:07:26 [MarkS]
[LUNCH]
03:09:48 [tzviya]
tzviya has joined #aria
03:33:13 [richardschwerdtfeger]
richardschwerdtfeger has joined #aria
03:39:20 [Judy]
Judy has joined #aria
03:59:29 [LJWatson]
LJWatson has joined #aria
03:59:46 [jamesn]
jamesn has joined #aria
04:04:43 [mhakkinen]
mhakkinen has joined #aria
04:09:27 [richardschwerdtfeger]
richardschwerdtfeger has joined #aria
04:09:28 [MarkS]
MarkS has joined #aria
04:11:54 [mck]
mck has joined #aria
04:12:26 [jessebeach]
jessebeach has joined #aria
04:12:55 [tzviya]
tzviya has joined #aria
04:17:37 [ShaneM]
ShaneM has joined #aria
04:18:33 [kurosawa]
kurosawa has joined #aria
04:19:25 [clapierre]
clapierre has joined #aria
04:20:08 [Judy]
Judy has joined #aria
04:22:40 [richardschwerdtfeger]
richardschwerdtfeger has joined #aria
04:26:46 [webwatch]
webwatch has left #aria
04:32:45 [richardschwerdtfeger]
richardschwerdtfeger has joined #aria
04:44:02 [kurosawa_]
kurosawa_ has joined #aria
04:45:09 [sam]
sam has joined #aria
04:47:30 [LJWatson]
LJWatson has left #aria
04:51:34 [richardschwerdtfeger]
richardschwerdtfeger has joined #aria
04:52:08 [MichaelC]
MichaelC has joined #aria
04:53:56 [Sumio_Noda]
Sumio_Noda has joined #ARIA
04:54:02 [mck]
mck has joined #aria
04:59:57 [jamesn]
jamesn has joined #aria
05:02:16 [jessebeach]
jessebeach has joined #aria
05:03:47 [joanie]
scribe: joanie
05:04:18 [MichaelC]
scribe: jessebeach
05:04:45 [richardschwerdtfeger]
Topic: Action 1725 Article Feed
05:04:49 [richardschwerdtfeger]
https://www.w3.org/WAI/PF/Group/track/actions/1725
05:06:27 [jessebeach]
MK: Problem space - continuous scrolling is one part of the probelm space
05:06:48 [Can]
Can has joined #aria
05:07:23 [jessebeach]
MK: Original issue 633, the limitation of elements like listbox; when you put any content inside of an option, because that option is the child of a widget, the only thing available to the AT, the content items lose their semantics
05:07:34 [Can_]
Can_ has joined #aria
05:08:09 [jessebeach]
MK: An inherent limitation of all of our widget roles, whether it's treeitem, option (containers); their inherently static
05:08:42 [jessebeach]
MK: That's limiting if you want to flatten your navigation structure, such as putting nav items into a list
05:09:46 [jessebeach]
MK: We have a need to be able to create components that AT user (screen reader users) can read but still have some level of interaction with
05:10:27 [jessebeach]
MK: For ARIA 1.1, bec/ of where we are, bec/ we have immediate probelms that we want to solve, we might need to compromise and adjust the semantics of existing roles
05:11:14 [jessebeach]
MK: For the case of creating a list of links, checkboxes (etc), I am proposing we use a grid for that purpose. A grid cell is a container and the elements in that cell retain their semantics
05:11:36 [jessebeach]
MK: In forms mode of a screen reader and you put focus on a grid cell, then the content of the cell does get reduced to a named string
05:11:41 [Can__]
Can__ has joined #aria
05:12:22 [jessebeach]
MK: One of the proposals, if you have a single interactive element, it's perfectly fine to reduce the content to a contained element
05:12:55 [jessebeach]
MK: Bec/ for them to do the reverse, to receive the information that a grid cell received focus and it contains a button, that's hard to do
05:13:15 [jessebeach]
MK: But to focus on a button in a grid cell, it's easy for SR to say that a button is in a grid cell
05:14:44 [jessebeach]
MK: If you're using a grid to creat ea collection of links and you wnat the screen reader to be able to say and you're navigating with the arrow keys in the grid, the web application has control, you want the SR to be able to announce the complex content in the cell when the focus is on the grid cell; instead, put the focus on the content and then the AT will announce that the content exists in a grid cell
05:15:18 [Sumio_Noda_]
Sumio_Noda_ has joined #aria
05:15:43 [jessebeach]
MK: In the case of an infinite list, in a grid, the web app will have control and it will now how to place and move focus
05:15:59 [jessebeach]
MK: it's an easy way to solve simple, interactive lists that scroll continuously
05:16:27 [jessebeach]
MK: The harder kind of interactive list to make is like the Facebook feed, where every story in the feed is an article
05:17:26 [jessebeach]
MK: To solve the problem where we want the content of the page to be able to read by the screen reader in browser mode, bec/ what they're looking at is content. They're not interacting with static elements that can be put in a widget, you're looking at links, text, pictures...
05:17:51 [jessebeach]
MK: You want the user to be able to move from article to article, and interact with the content, and you want the scrolling to work well
05:19:28 [jessebeach]
MK: Currently, the hack in place, is to establish a handshake between the app and the screen reader and pass through keystrokes for navigation.
05:20:51 [jessebeach]
MK: For example, the j/k keys move down and up the news feed
05:22:42 [jessebeach]
MK: Have site-specific keys for moving between items in a feeed, that steal the ability for SR users to use built-in navigation keys, is a problem
05:23:23 [jessebeach]
MK: The suggestion is to inflect containers with a property that indicates that the container is a feed; that a container has items that will be adding and removed and it is consumed
05:24:02 [jessebeach]
MK: The author makes each element in the feed focusable, and scrolling + positioning is left up to the author
05:25:05 [tzviya]
tzviya has joined #aria
05:25:09 [jessebeach]
MK: In the context of the feed, when an item gets focus, the author is responsible for moving it into focus
05:25:36 [jessebeach]
MK: Articles are not landmarks, they're children of document which is a structure
05:26:17 [mck]
http://rawgit.com/w3c/aria/mck_issue633/aria/aria.html#articlefeed
05:26:59 [jessebeach]
MK: The article feed roll is a special use of the ARIA feed property (not finished yet)
05:27:19 [jessebeach]
MK: I eliminated aria feed pre- and postpend
05:27:56 [jessebeach]
MK: Article feed is a child of list, and instead of having listitems as children, it has articles as children
05:28:20 [jessebeach]
MK: aria-feed is a boolean property
05:28:40 [jessebeach]
MK: Articlefeed is a child of List
05:28:52 [jessebeach]
MK: correction, Articlefeed is a sub-class of List
05:29:37 [Zakim]
Zakim has left #aria
05:29:59 [jessebeach]
MK: aria-feed is a boolean property that indicates that new items will be added to the feed
05:30:19 [joanie]
q+ To ask about why aria-setsize of -1 could not serve for the purpose of there being more stuff in a grid
05:31:24 [Zakim]
Zakim has joined #aria
05:31:30 [joanie]
q+ To ask about why aria-setsize of -1 could not serve for the purpose of there being more stuff in a grid
05:31:30 [mhakkinen]
mhakkinen has joined #aria
05:31:39 [jessebeach]
MK: What about a grid inflected with aria-feed?
05:32:42 [jessebeach]
RS: You have an ArticleFeed, which by itself its a feed. Why do we need aria-feed as a property?
05:33:20 [jessebeach]
MK: Articlefeed is necessary because its children is an Article, which would need to support posinset; it would also support aria-describedby
05:34:11 [jessebeach]
MK: aria-describedby allows an author to define a skimmable summary of the articles
05:34:25 [jessebeach]
RS: What happens if you put aria-feed="false"?
05:34:38 [jessebeach]
MK: I guess it means you're no longer adding content to it
05:34:53 [jessebeach]
MK: What happens if you put aria-live="off" on an alertdialog?
05:35:26 [tzviya]
tzviya has joined #aria
05:35:36 [jessebeach]
RS: The alertdialog would beep; it's an alert
05:35:58 [jessebeach]
MK: alertdialog says if you aria-describedby, it speaks a summary
05:36:01 [tzviya]
tzviya has joined #aria
05:36:24 [jessebeach]
MK: you can have role="alert" and aria-live="off", it doesn't make sense either
05:36:32 [richardschwerdtfeger]
q?
05:36:35 [joanie]
ack me
05:36:35 [Zakim]
joanie, you wanted to ask about why aria-setsize of -1 could not serve for the purpose of there being more stuff in a grid
05:37:22 [cyns]
cyns has joined #aria
05:37:23 [jessebeach]
MK: aria-feed is only necessary on structures, not widgets
05:37:34 [mhakkinen]
mhakkinen has joined #aria
05:38:08 [jessebeach]
JD: posinset and setsize are not supported on article, but do we need an articlefeed role?
05:38:45 [jessebeach]
MK: Maybe we can use aria-setsize and enhance its meaning. We do need it to apply to the container and currently we do not put aria-setsize on containers
05:39:08 [jessebeach]
JD: We have properties that maybe need to be modified so they apply to these use cases
05:39:23 [jessebeach]
MK: I'm totally game for aria-setsize to be applied to containers
05:39:51 [jessebeach]
RS: Does aria-feed have to take a boolean value? Can it be indicative of size?
05:40:18 [clapierre]
clapierre has joined #aria
05:40:25 [jessebeach]
MK: I'm game for using aria-setsize = -1
05:40:47 [jessebeach]
JD: I'm saying we don't need feed properties and roles; scratch all of that is my suggestion
05:40:52 [tzviya]
tzviya has joined #aria
05:41:01 [tzviya]
tzviya has joined #aria
05:41:47 [jessebeach]
MK: When it comes to aria-setsize, the container of list or table, when you put it on the container, it's going to have a very specific meaning, it will indicate that more rows or items could be added; if we're going to define it that way, then it needs to be on the container, not on the items
05:42:24 [jessebeach]
JD: Orca doesn't have this problem bec/ it doesn't have a virtual buffer; the only time this problem is relevant is when the cursor is on the last thing
05:42:51 [jessebeach]
MK: It's also relevant to the user who is moving through a list and needs to know there won't be an end
05:43:01 [jessebeach]
JD: What's the reason for putting it on the container?
05:43:35 [jessebeach]
RS: If you had setsize -1 on the container, it's not because I don't know or because it's a continuous feed
05:44:42 [jessebeach]
CS: It's necessary to know that the set size is unknown
05:45:11 [jessebeach]
JD: Given that it is on the item, could we apply them to articles, and solve the problem without a new role and property
05:45:57 [jessebeach]
MK: In the case of article, hows does anybody and esp. the AT, know what is the container and what is the next element.
05:46:22 [jessebeach]
JD: Why do I need to know what the container of the articles is?
05:46:26 [jessebeach]
MK: to escape it
05:46:48 [jessebeach]
JD: Why does the container have to be anything
05:47:02 [jessebeach]
JN: Why aren't they just listiems in a list?
05:47:32 [jessebeach]
RS: Why can't we say something about lists and grids, to treat the individual units as articles
05:47:37 [jessebeach]
MK: clarify
05:47:58 [jessebeach]
RS: In a list, the listitems are articles.
05:48:10 [jessebeach]
MK: The container would be a list, the children are articles
05:48:41 [clapierre]
clapierre has joined #aria
05:48:47 [jessebeach]
MK: As soon as the container is a widget, you're putting the SR into forms or focus mode and then the only content you get are names
05:49:04 [jessebeach]
RS: By calling it a feed, we don't know whether to go by row or cell in a grid
05:49:13 [jessebeach]
MK: aria-feed doesn't make sense on grid, just on structures
05:49:53 [jessebeach]
RS: Ok, so you want aria-feed on table and list. In the case of a table, say it's a feed, do you move by cell or by row
05:50:13 [jessebeach]
MK: in the case of a table, if you're moving down or across, it's up to the app to take care of focus
05:50:41 [jessebeach]
RS: OK, so in a feed, if you're going by what's focusable, how do you know what to go to?
05:50:57 [jessebeach]
MK: The listitems, the cells, they would be focusable with tabindex -1
05:51:26 [jessebeach]
MK: So that SR and screen magnifiers, when using quick keys, they'd get focus and the web author can take care of the scrolling
05:51:37 [kurosawa_]
kurosawa_ has joined #aria
05:51:54 [jessebeach]
RS: Is it possible that you're in the last cell of the last row and the browser hasn't loaded in any more content and there's no more content to move onto
05:52:00 [jessebeach]
MK: That's a web author's problem
05:52:02 [Rumk]
Rumk has joined #aria
05:52:41 [jessebeach]
MK: Well, maybe it is a problem. It's certainly something to...
05:52:51 [jessebeach]
RS: I'm worried about relying on the AT to set focus
05:53:33 [jessebeach]
MK: This is solvable as part of the handshake. If you're going to do this, it needs to be clear to web authors. If they expect scrolling to continue and you're on the last item, more items need to be loaded
05:53:56 [jessebeach]
RS: I would prefer to let the author set focus and let the AT follow it
05:54:06 [jessebeach]
MK: But then the author needs to listen to keys, not just focus
05:54:26 [jessebeach]
MK: if you're going to make it AT independent, they need to set focus. All ATs can set focus
05:55:21 [jessebeach]
MK: Setting focus works on every platform. Not having something to set focus on would be an application defect
05:55:34 [richardschwerdtfeger]
q?
05:56:06 [jessebeach]
MK: If the last item in the feed has focus and the author doesn't load more items, then it will be an application defect
05:56:12 [jessebeach]
RS: you're asking the author to do too much
05:56:44 [jessebeach]
MK: Right now we have a hacky solution to do this. It's not standard and it doesn't scale. It's not a problem unique to Facebook, Twitter and LinkedIn
05:57:23 [mhakkinen]
mhakkinen has joined #aria
05:57:28 [jessebeach]
MK: There is no standardized way to solve the problem of scrolling through a feed in a standardized way; they result in poor performance
05:58:56 [jessebeach]
RS: In ARIA 2.0, we'd have a pattern for feed
05:59:05 [jessebeach]
RS: We're hacking with tabindex here
05:59:15 [jessebeach]
MK: That's a clearly supported feature
05:59:59 [jessebeach]
RS: What if you don't have an AT
06:00:47 [jessebeach]
MK: If you don't have an AT, we can provide geeky keyboard support like j/k and more friendly like page down; none of that requires ARIA. To have a handshake with AT, we need a handshake
06:01:00 [jamesn]
jamesn has joined #aria
06:01:12 [jessebeach]
MK: Right now, AT are trying to make this work with IA2 scrollto; it doesn't work
06:01:29 [Judy]
Judy has joined #aria
06:01:34 [jessebeach]
RS: I don't think this handshake is reliable; there's a problem to address, this might not be the way to do it
06:02:21 [tzviya]
tzviya has joined #aria
06:03:28 [jessebeach]
JB: Is there a way to indicate business, to deal with async loading?
06:03:42 [jessebeach]
MK: aria-busy is in the proposal
06:03:51 [jessebeach]
RS: There's no limit on what can get tabindex
06:04:24 [jessebeach]
MK: We're not limited to what gets tabindex; we're not looking for elements with tabindex; we're looking for children of the list
06:05:16 [jessebeach]
RS: It would be helpful to be clearer
06:06:03 [jessebeach]
RS: aria-setsize -1 on a list feels like magic
06:06:21 [jessebeach]
JD: Why does it need to go on the container?
06:06:36 [jessebeach]
MK: I'm still pushing for an articlefeed role
06:06:56 [jessebeach]
JD: What about flow-to?
06:07:08 [jessebeach]
MK: Let's not confuse that with more info
06:07:34 [jessebeach]
RS: Do we have to have this on a table? Can we limit it to list?
06:08:13 [jessebeach]
MK: I'm ok with just putting it on list, but then I want to fix the ontology. Menu and list inherit from list. I don't want aria-feed to be inherited by list box
06:08:14 [rumk]
rumk has joined #aria
06:08:30 [jessebeach]
RS: What about just Articlefeed
06:08:49 [jessebeach]
MK: OK, then we could just skip the aria-feed property
06:09:23 [jessebeach]
RS: We're trying to get this into ARIA 1.1, this scope is growing and it feels like we're trying to get the toothpaste back into the tube.
06:10:06 [jessebeach]
MK: The more general solution seems to be problematic, let's just focus on Articlefeed role; it solves a specific problem
06:10:29 [jessebeach]
MK: the other issue, that creates an interactive list, we'll do that with grid and it just involves changes to the description of grid
06:10:39 [jessebeach]
RS: Ok with that?
06:10:48 [jessebeach]
JD: I'll wait for the proposal
06:11:02 [jessebeach]
RS: you don't need posinset for set size
06:11:13 [jessebeach]
MK: You don't need it, but it would be nice
06:11:19 [jessebeach]
RS: but it wouldn't be required
06:11:21 [jessebeach]
MK: yes
06:11:30 [jessebeach]
MK: articlefeed is a descendant of list
06:13:06 [mck]
mck has joined #aria
06:13:25 [jessebeach]
RS: So you have aria setsize and posinset, you can just set those on article
06:16:26 [jessebeach]
RS: User agent should not be managing setsize and posinset for a feed
06:17:00 [jessebeach]
MK: If you don't specify set size, then the AT just assumes the size is the number of items in DOM
06:17:09 [jessebeach]
RS: if it's a feed, then why is setsize need?
06:18:11 [jessebeach]
RESOLUTION: Add aria-posinset and aria-setsize to article
06:20:49 [clapierre1]
clapierre1 has joined #aria
06:26:20 [jessebeach]
MK: The purpose of aria-describedby on an article in an articlefeed is to support skimming
06:26:39 [jessebeach]
RS: Do we say "screenreaders may"? Do we have that in other places?
06:26:54 [jessebeach]
JD: I think we use Joseph's "it is suggested that a screen reader might".
06:28:46 [jessebeach]
RS: If you [Matt] could say "assistive technologies" that would be better. And it's a glossary item, so you can refer to it.
06:29:25 [jessebeach]
RESOLUTION: Accept Matt's ArticleFeed (pending editorial review)
06:30:36 [jessebeach]
RS: We'll do the main, the document and the grid in the next meeting.
06:30:43 [jessebeach]
MK: I finish the grid and the document role
06:30:50 [jessebeach]
RS: We'll do that at the next meeting
06:31:11 [sam]
sam has joined #aria
06:31:17 [Lisa_Seeman_]
Lisa_Seeman_ has joined #aria
06:33:11 [mck]
scribe: matt_king
06:33:31 [mck]
TOPIC: COGA taskforce interlock
06:33:39 [MichaelC]
present+ Lisa_Seeman, Ayelet_Seeman, Chaohai_Ding, Debbie_Dahl
06:34:24 [Lisa_Seeman]
https://rawgit.com/w3c/coga/master/issue-papers/links-buttons.html
06:35:04 [mck]
LS: Quick intro to COGA proposal for additional semantics
06:35:25 [Chaohai_Ding]
Chaohai_Ding has joined #aria
06:35:45 [ddahl_]
ddahl_ has joined #aria
06:35:56 [mck]
There are 2 groups looking at the proposal for implementation
06:36:03 [ayelet_seeman]
ayelet_seeman has joined #aria
06:36:26 [mck]
EU project and an Open Source project
06:36:53 [mck]
First issue: add support for people w/cog disabilities without undue burdon
06:37:22 [MarkS]
MarkS has joined #aria
06:37:30 [mck]
If at UA or AT level it could add soe extra support.
06:37:39 [mck]
2nd use case is familiarity
06:37:40 [MichaelC]
present+ Steve_Lee
06:38:33 [mck]
For PwD who do not want to struggle w/discoverability, familiarity is helpful
06:38:50 [mck]
3rd use case is simplification
06:39:14 [mck]
Automated simplification often gets it wrong.
06:39:24 [mck]
We need info about what things are on a page
06:39:58 [Lisa_Seeman_]
Lisa_Seeman_ has joined #aria
06:40:21 [mck]
Originally called it importance, instead of simplification, but that caused issues because who is to say what is important.
06:40:36 [mck]
This is early draft.
06:40:45 [mck]
Looking for feedback.
06:41:14 [mck]
We want to enable more people to use same content by adding more information.
06:41:39 [mck]
RS: most of what we hhave done w/aria is interoperability.
06:42:07 [Steve]
Steve has joined #aria
06:42:10 [mck]
What we are doing here is new semantics to drive the UI
06:42:30 [Steve]
MichaelC: thanks
06:42:57 [mck]
Example, if you change the look of help button or move it, then people wonder what happened to it.
06:43:19 [Steve]
+1 for demos
06:43:21 [mck]
COGA is the first time we are really looking at first in terms of using aria for stylig.
06:43:26 [ayelet_seeman]
https://rawgit.com/ayelet-seeman/coga.personalisation/demo/conactUs.html
06:43:29 [Steve]
yes
06:44:50 [mck]
AS: describing demo page
06:45:32 [Steve]
Lisa_Seeman: I'm getting a crazy echo
06:46:51 [mck]
Showed a page that is cognitively complex.
06:47:05 [mck]
Use a personalize button and the "main" changes to "home"
06:47:13 [mck]
Symbols get loaded.
06:47:27 [mck]
Some content is removed.
06:47:49 [mck]
It is possible to progressively simplify the page.
06:47:58 [Lisa_Seeman_]
Lisa_Seeman_ has joined #aria
06:48:27 [mck]
In the EU project, will let you load different personalizations from a JSON object