GithubHelp home page GithubHelp logo

Comments (11)

maryjom avatar maryjom commented on June 9, 2024

Current definition of "down-event" in WCAG 2.2:

down-event
platform event that occurs when the trigger stimulus of a pointer is depressed

The down-event may have different names on different platforms, such as "touchstart" or "mousedown".

May want WCAG2ICT verbiage for the explanation to give examples of non-web software names of this event:

down-event
This applies directly as written and as described in the WCAG 2.2 glossary.
 
Note: The down-event may have different names on different platforms. For example ["pointerpressed” or “mousedown”].

Current definition of "up-event" in WCAG 2.2:

up-event
platform event that occurs when the trigger stimulus of a pointer is released

The up-event may have different names on different platforms, such as "touchend" or "mouseup".

May want WCAG2ICT verbiage for the explanation to give examples of non-web software names of this event.

up-event
platform event that occurs when the trigger stimulus of a pointer is released
 
Note: The down-event may have different names on different platforms. For example [“PointerReleased” or “mouseup”].

from wcag2ict.

oh185014 avatar oh185014 commented on June 9, 2024

From 2.5.2 Pointer Cancellation:

For functionality that can be operated using a single pointer, at least one of the following is true:

  • No Down-Event: The down-event of the pointer is not used to execute any part of the function;
  • Abort or Undo: Completion of the function is on the up-event, and a mechanism is available to abort the function before completion or to undo the function after completion;
  • Up Reversal: The up-event reverses any outcome of the preceding down-event;
  • Essential: Completing the function on the down-event is essential.

NOTE: Functions that emulate a keyboard or numeric keypad key press are considered essential.

NOTE: This requirement applies to web content that interprets pointer actions (i.e. this does not apply to actions that are required to operate the user agent or assistive technology).

Guidance When Applying Success Criterion 2.5.2 to Non-Web Documents and Software:
This applies directly as written and as described in Intent from Understanding Success Criterion 2.5.2 (also provided below), replacing "web content" with "content,” and "user agent or assistive technology" with "user agent, assistive technology or platform software."

For functionality that can be operated using a single pointer, at least one of the following is true:

  • No Down-Event: The down-event of the pointer is not used to execute any part of the function;
  • Abort or Undo: Completion of the function is on the up-event, and a mechanism is available to abort the function before completion or to undo the function after completion;
  • Up Reversal: The up-event reverses any outcome of the preceding down-event;
  • Essential: Completing the function on the down-event is essential.

NOTE: Functions that emulate a keyboard or numeric keypad key press are considered essential.

NOTE: This requirement applies to content that interprets pointer actions (i.e. this does not apply to actions that are required to operate the user agent, assistive technology or platform software).

from wcag2ict.

maryjom avatar maryjom commented on June 9, 2024

Comment edited because upon further thought, I had originally taken too simplified an approach. @oh185014 If this helps, The 2nd note would need a word switch because it's talking about "web content" where I think the term should be just "content" with a link to the WCAG2ICT definition of content. I had originally suggested modifying "user agent or assistive technology" to add "platform software", but my comment below does further analysis taking into consideration what the EN 301 549 did and thinking more broadly about application to different types of non-web software.

from wcag2ict.

oh185014 avatar oh185014 commented on June 9, 2024

Thanks @maryjom!

I agree, beyond the word switches I do not believe any additional notes are needed. This is ready for TF to review.

from wcag2ict.

maryjom avatar maryjom commented on June 9, 2024

@oh185014 Sorry to churn this, as I think I just cursory looked a this one without enough thought. I just realized the word substitutions I had suggested and where this might make sense as a requirement for non-web software (based on comments on the gestures SC). I think we can look to the EN 301 549's treatment for this to help us consider documents and non-web software as separate cases. This could be a good discussion topic in the meeting on March 8, if there's time.

Non-web software

Notes in the EN 301 549 for Software success criterion: 2.5.2 Pointer cancellation are:

NOTE 1: Functions that emulate a keyboard or numeric keypad key press are considered essential.

NOTE 2: This requirement applies to [(non-web software)] that interprets pointer actions (i.e. this does not apply to actions that are required to operate the user agent or assistive technology).
NOTE 3: This success criterion is identical to the WCAG 2.1 Success Criterion 2.5.2 Pointer Cancellation replacing the original WCAG 2.1 note with notes 1 and 2 above.

My detailed analysis:
User agents: When the non-web software is a user agent, it might interpret its own pointer actions. So should this have an exemption as Note 2 above states? I don't think so.
Native software (that is not a platform): Software that is not a platform shouldn't be responsible actions required to operate the platform software. So that should have this note:

NOTE: This requirement applies to [non-web software that is not a platform]". Non-platform software is not responsible for the accessibility of pointer actions that are required to operate the platform or assistive technology.
Platform software This requirement should apply, as written, no exemption clause.
NOTE: This requirement applies to [(platform software)] that interprets pointer actions (i.e. this does not apply to actions that are required to operate assistive technology).
Closed functionality software This requirement should apply, and if there's no pointer support this would be a N/A requirement. There may be some odd issues I don't know about. @samogami or @pday1 may have some input on this.

This could sum up into two notes for non-web software:
NOTE: This requirement applies to [non-web software] that interprets pointer actions (i.e. this does not apply to actions that are required to operate assistive technology).
NOTE: Non-web software applications are not responsible for pointer actions required to operate the underlying platform software.

This does not address the EN note 1: "Functions that emulate a keyboard or numeric keypad key press are considered essential.
" I'm sure @mapluke can enlighten us on this one. Maybe it's to handle mobile virtual keyboard typing where you can drag your finger and pause on letters to type.

Non-web documents

Should this be applied to non-web documents? Can a document be aware of pointer events or be in control of what happens on a down-event vs. up-event? Maybe Figma or AdobeXD have this capability? Maybe others on the task force or in AG WG know more. May need a note similar to what I suggested for 2.5.1 Pointer Gestures in this comment.

from wcag2ict.

mraccess77 avatar mraccess77 commented on June 9, 2024

I agree with the suspicion on-screen keyboards with path based typing is the reason there is a note about keyboard/keyboard functionality being essential. What's interesting is that the default on iOS for individual on-screen keys is to support activation on the up event - but when using the path based typing to type out a word it reacts on the up event of the predicted word and not each letter. So it seems like there is still good reason to have individual keys support activation on the up event while offering other solutions to make typing more efficient.

I think a note might be ok on the essential exception if we think there would confusion on how to interpret what is essential or not - but it doesn't seem to change the normative text.

from wcag2ict.

samogami avatar samogami commented on June 9, 2024

"Waking" a device from sleep mode, increasing the display's brightness, and showing additional options on the screen count as functionality? Devices with touch screens that also have power-saving requirements start when the user first touches that device.
I suggest adding a note.
Note: Additional essential functions for non-web software and documents are changing the device to a user-ready state or providing additional contextual options.

I also question if this needs to be applied to all non-web software. Windows tabs including the ones in MS Edge and Chrome will change if using a mouse with the down click. If you use the keyboard you need to select the tab and then use space or enter to change the show tab.

from wcag2ict.

olivia-hogan-stark avatar olivia-hogan-stark commented on June 9, 2024

@maryjom Haha no worries at all for “churning this”! Thanks for putting more thought into it. I was unexpectedly OOO end of last week, so sorry I wasn’t at last week’s meeting to discuss. I am at CSUN this week, but would be happy to discuss the following Thursday the 23rd.

–––

Draft notes and discussion points based on comments so far:

NOTE 1: Functions that emulate a keyboard or numeric keypad key press are considered essential.

Discuss @mraccess77 comment:

  • Keep normative text
  • Do we need an additional note?

NOTE 2: Additional essential functions for non-web software and documents are changing the device to a user-ready state or providing additional contextual options.

@samogami suggested this additional note

NOTE 3: This requirement applies to [non-web software] that interprets pointer actions (i.e. this does not apply to actions that are required to operate assistive technology).

NOTE 4: Non-web software applications are not responsible for pointer actions required to operate the underlying platform software.

@maryjom suggested note 3 and 4 in response to EN 301 549 Note 2: NOTE 2: This requirement applies [to a document/to non-web software] that interprets pointer actions (i.e. this does not apply to actions that are required to operate the user agent or assistive technology).

from wcag2ict.

pday1 avatar pday1 commented on June 9, 2024

Closed system: another example where it could cause issues is where a touchscreen is encrypted for security (e.g. entering a personal identification number onscreen). In this case, the underlying software may not be allowed to know some of these state changes, and therefore we either classify this in the essential functions note, or as another example in Sam's closed functionality examples

from wcag2ict.

maryjom avatar maryjom commented on June 9, 2024

Opened Issue #124 to consolidate comments made so far (and incorporate thoughts generated from our brief discussion in the 16 March meeting) into something we might be able to survey.

from wcag2ict.

maryjom avatar maryjom commented on June 9, 2024

This version of 2.5.2 was approved by the TF and incorporated using PR #133. AG WG surveyed and approved this on 11 April. Closing.

from wcag2ict.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.