WebAIM - Web Accessibility In Mind

E-mail List Archives

Thread: Applying 2.5.1 Pointer Gestures to tile sliders in native apps.

for

Number of posts in this thread: 5 (In chronological order)

From: Detlev Fischer
Date: Thu, Apr 13 2023 9:57AM
Subject: Applying 2.5.1 Pointer Gestures to tile sliders in native apps.
No previous message | Next message →

This is about applying 2.5.1 Pointer Gestures to tile sliders in native
apps.

Very frequently in apps, there is no way to reach tiles in horizontal
sliders that are not in the viewport without what can be considered a
swipe gesture following the 2.5.1 Understanding text (a gesture which
requires an initial directional movement of the pointer). With these
sliders, a (roughly) horizontal movement engages the slider while a
vertical movement would scroll the page instead (vertically). Moving
down-left or down-right would not make the slider follow the pointer -
i.e the gesture has been consumed by the view and  has no effect on the
slider.

This pattern is extremely common: native app examples are Zalando,
Amazon, Ebay, ZDFtivi, and I guess many many more. Usually single
pointer alternatives (like arrows) for activation are absent. Do all
these apps really fail 2.5.1?

This issue is whether the gesture needed really falls into pointer
gestures rather than being classed as a dragging movement (which
incidentally would require similar alternatives for simple tap pointer
input if WCAG 2.2 Success Criterion 2.5.7 Dragging Movements becomes
part of WCAG 2.2).

Differentiating the required gesture from dragging movements is
difficult here, because *any* dragging movement that is more horizontal
than vertical (i.e., not just a movement in the desired direction) does
not scroll the view vertically, but lets the slider follow the
horizontal pointer position in the same way as in dragging movements.
Therefore it is unclear whether tappable controls like arrows are really
required for such slider areas in order to meet 2.5.1 Pointer Gestures.

I'd be very keen to see how others auditing native apps treat this
situation.

best,
Detlev

--
Detlev Fischer
DIAS GmbH
(Testkreis is now part of DIAS GmbH)

Mobil +49 (0)157 57 57 57 45

http://www.dias.de
Beratung, Tests und Schulungen für barrierefreie Websites

From: Jim Homme
Date: Fri, Apr 14 2023 4:59AM
Subject: Re: Applying 2.5.1 Pointer Gestures to tile sliders in nativeapps.
← Previous message | Next message →

Hi,
Where in the Amazon app is this behavior?

Thanks.

Jim

=========Jim Homme: He, Him, His
Senior Digital Accessibility Consultant
Bender Consulting Services
412-787-8567
https://www.benderconsult.com/
Help end the shame of the stigma of mental health disabilities. https://benderleadership.org/notashamed/

-----Original Message-----
From: WebAIM-Forum < = EMAIL ADDRESS REMOVED = > On Behalf Of Detlev Fischer
Sent: Thursday, April 13, 2023 11:57 AM
To: = EMAIL ADDRESS REMOVED =
Subject: [WebAIM] Applying 2.5.1 Pointer Gestures to tile sliders in native apps.

This is about applying 2.5.1 Pointer Gestures to tile sliders in native apps.

Very frequently in apps, there is no way to reach tiles in horizontal sliders that are not in the viewport without what can be considered a swipe gesture following the 2.5.1 Understanding text (a gesture which requires an initial directional movement of the pointer). With these sliders, a (roughly) horizontal movement engages the slider while a vertical movement would scroll the page instead (vertically). Moving down-left or down-right would not make the slider follow the pointer - i.e the gesture has been consumed by the view and  has no effect on the slider.

This pattern is extremely common: native app examples are Zalando, Amazon, Ebay, ZDFtivi, and I guess many many more. Usually single pointer alternatives (like arrows) for activation are absent. Do all these apps really fail 2.5.1?

This issue is whether the gesture needed really falls into pointer gestures rather than being classed as a dragging movement (which incidentally would require similar alternatives for simple tap pointer input if WCAG 2.2 Success Criterion 2.5.7 Dragging Movements becomes part of WCAG 2.2).

Differentiating the required gesture from dragging movements is difficult here, because *any* dragging movement that is more horizontal than vertical (i.e., not just a movement in the desired direction) does not scroll the view vertically, but lets the slider follow the horizontal pointer position in the same way as in dragging movements.
Therefore it is unclear whether tappable controls like arrows are really required for such slider areas in order to meet 2.5.1 Pointer Gestures.

I'd be very keen to see how others auditing native apps treat this situation.

best,
Detlev

--
Detlev Fischer
DIAS GmbH
(Testkreis is now part of DIAS GmbH)

Mobil +49 (0)157 57 57 57 45

http://www.dias.de
Beratung, Tests und Schulungen für barrierefreie Websites

From: wolfgang.berndorfer@zweiterblick.at
Date: Fri, Apr 14 2023 8:29AM
Subject: Re: Applying 2.5.1 Pointer Gestures to tile sliders in nativeapps.
← Previous message | Next message →

Hi Detlev,

There was a similar discussion here or on WebAIM, I remember:

Simple horizontal or vertical swiping to access a carousel does probably not fail 2.5.1.

BUT: A mechanism will be needed to scroll the tile slider with a keyboard (SC 2.1.1).

Wolfgang

-----Original Message-----
From: WebAIM-Forum < = EMAIL ADDRESS REMOVED = > On Behalf Of Detlev Fischer
Sent: Thursday, April 13, 2023 5:57 PM
To: = EMAIL ADDRESS REMOVED =
Subject: [WebAIM] Applying 2.5.1 Pointer Gestures to tile sliders in native apps.

This is about applying 2.5.1 Pointer Gestures to tile sliders in native apps.

Very frequently in apps, there is no way to reach tiles in horizontal sliders that are not in the viewport without what can be considered a swipe gesture following the 2.5.1 Understanding text (a gesture which requires an initial directional movement of the pointer). With these sliders, a (roughly) horizontal movement engages the slider while a vertical movement would scroll the page instead (vertically). Moving down-left or down-right would not make the slider follow the pointer - i.e the gesture has been consumed by the view and has no effect on the slider.

This pattern is extremely common: native app examples are Zalando, Amazon, Ebay, ZDFtivi, and I guess many many more. Usually single pointer alternatives (like arrows) for activation are absent. Do all these apps really fail 2.5.1?

This issue is whether the gesture needed really falls into pointer gestures rather than being classed as a dragging movement (which incidentally would require similar alternatives for simple tap pointer input if WCAG 2.2 Success Criterion 2.5.7 Dragging Movements becomes part of WCAG 2.2).

Differentiating the required gesture from dragging movements is difficult here, because *any* dragging movement that is more horizontal than vertical (i.e., not just a movement in the desired direction) does not scroll the view vertically, but lets the slider follow the horizontal pointer position in the same way as in dragging movements.
Therefore it is unclear whether tappable controls like arrows are really required for such slider areas in order to meet 2.5.1 Pointer Gestures.

I'd be very keen to see how others auditing native apps treat this situation.

best,
Detlev

--
Detlev Fischer
DIAS GmbH
(Testkreis is now part of DIAS GmbH)

Mobil +49 (0)157 57 57 57 45

http://www.dias.de
Beratung, Tests und Schulungen für barrierefreie Websites

From: glen walker
Date: Fri, Apr 14 2023 10:37AM
Subject: Re: Applying 2.5.1 Pointer Gestures to tile sliders in native apps.
← Previous message | Next message →

It's interesting that the understanding document says, "A path-based
gesture involves an interaction where not just the endpoints matter. If
going through an intermediate point also affects its meaning then it is a
path-based gesture." So a path-based gesture requires at least 3 points
and not just the endpoints.

If you think about swiping or sliding a carousel type widget, there aren't
three points involved in that process so it shouldn't be considered
path-based, based on that definition. In fact, sliding a carousel only
cares about the starting point and then which direction from that starting
point you start dragging. The actual end point of that process is somewhat
irrelevant so it doesn't really have two points in the path.

But then the understanding document says, "Examples of path-based gestures
include swiping, sliders and carousels dependent on the direction of
interaction".

That seems contradictory. They define path-based to have 3 (or more) points
in the path but then give an example of something that doesn't even have 2
points.

If the carousel had next/previous buttons at either end, in addition to
supporting swiping, then you wouldn't have a problem. But without those
buttons, does it fail 2.5.1? Based on the definition in the understanding
section, I don't think it does. Of course, the understanding section is
not normative and it's unfortunate that the definition of "path-based" is
not a link in the actual guideline because that would have made the
definition normative.

From: Steve Green
Date: Fri, Apr 14 2023 10:57AM
Subject: Re: Applying 2.5.1 Pointer Gestures to tile sliders in native apps.
← Previous message | No next message

I don't have a problem with the WCAG definition of a path-based gesture. A swipe gesture does not just rely on the two end points. Although the gesture does not have to go through any specific points, it must not do certain things, otherwise it will not be recognised. For instance, if you traced a wiggly line from left to right it may not be recognised as a swipe even if it has the exact same end points are a straight swipe.

Also, devices don't respond to correct gestures if they are made too slowly, or sometimes if they are made too fast. For instance, when using Voiceover on iOS, I always have difficulty with actions that require swiping up from the bottom of the screen at specific speeds.

Steve Green
Managing Director
Test Partners Ltd


-----Original Message-----
From: WebAIM-Forum < = EMAIL ADDRESS REMOVED = > On Behalf Of glen walker
Sent: Friday, April 14, 2023 5:38 PM
To: WebAIM Discussion List < = EMAIL ADDRESS REMOVED = >
Subject: Re: [WebAIM] Applying 2.5.1 Pointer Gestures to tile sliders in native apps.

It's interesting that the understanding document says, "A path-based gesture involves an interaction where not just the endpoints matter. If going through an intermediate point also affects its meaning then it is a path-based gesture." So a path-based gesture requires at least 3 points and not just the endpoints.

If you think about swiping or sliding a carousel type widget, there aren't three points involved in that process so it shouldn't be considered path-based, based on that definition. In fact, sliding a carousel only cares about the starting point and then which direction from that starting point you start dragging. The actual end point of that process is somewhat irrelevant so it doesn't really have two points in the path.

But then the understanding document says, "Examples of path-based gestures include swiping, sliders and carousels dependent on the direction of interaction".

That seems contradictory. They define path-based to have 3 (or more) points in the path but then give an example of something that doesn't even have 2 points.

If the carousel had next/previous buttons at either end, in addition to supporting swiping, then you wouldn't have a problem. But without those buttons, does it fail 2.5.1? Based on the definition in the understanding section, I don't think it does. Of course, the understanding section is not normative and it's unfortunate that the definition of "path-based" is not a link in the actual guideline because that would have made the definition normative.