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