Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@bleroux
Copy link
Contributor

@bleroux bleroux commented Nov 7, 2024

Description

iOS fix [A11y] Double Tap brings the Slider thumb to the center of the widget. per instruction from flutter/flutter#157601 (comment)

I don't have a physical iOS device to double check, but using the iOS Simulator and accessibility tools, the behavior seems ok. Without this PR, the slider thumb goes to the center when clicking 'Activate', with this PR it does not :

Enregistrement.de.l.ecran.2024-11-07.a.11.09.01.mov

Related Issue

iOS fix for [A11y] Double Tap brings the Slider thumb to the center of the widget.

Tests

Adds 1 test.

Copy link
Contributor

@chunhtai chunhtai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, just need some comment

return NO;
}
if (!self.node.HasAction(flutter::SemanticsAction::kTap)) {
if (self.node.HasFlag(flutter::SemanticsFlags::kIsSlider)) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add a comment explain the reasoning?

@bleroux bleroux changed the title Fix slider semantics node answer to accessibility activate [iOS] Fix slider semantics node answer to accessibility activate Nov 8, 2024
@chunhtai
Copy link
Contributor

chunhtai commented Nov 8, 2024

cc @jmagman

@bleroux bleroux added the autosubmit Merge PR when tree becomes green via auto submit App label Nov 12, 2024
@auto-submit auto-submit bot merged commit 9efc25d into flutter:main Nov 12, 2024
30 checks passed
@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Nov 12, 2024
@bleroux bleroux deleted the fix_ios_slider_semantics_node branch November 12, 2024 11:26
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Nov 12, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Nov 12, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Nov 12, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Nov 13, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Nov 13, 2024
…158541)

flutter/engine@877abb9...08348c9

2024-11-12 [email protected] [Linux] Configure depth and stencil framebuffer attachments needed for Impeller (flutter/engine#56516)
2024-11-12 [email protected] macOS: ARC bridge casts for FlutterMetalTexture.user_data (flutter/engine#56518)
2024-11-12 [email protected] [Impeller] prevent no-op backend from throwing exceptions during image  decoding (flutter/engine#56522)
2024-11-12 [email protected] Roll Dart SDK from 69170fac244c to 5f42ef8f15d5 (4 revisions) (flutter/engine#56539)
2024-11-12 [email protected] Roll Fuchsia Linux SDK from BajfrJuYeyWvnBhuM... to z-cm2nR0aJ4lXfwZ0... (flutter/engine#56538)
2024-11-12 [email protected] Roll Skia from aa099ff91e2f to 7d5c206fc873 (6 revisions) (flutter/engine#56541)
2024-11-12 [email protected] [Impeller] In canvas_unittests, only create an MSAA offscreen texture if the platform supports MSAA (flutter/engine#56542)
2024-11-12 [email protected] [iOS] Fix slider semantics node answer to accessibility activate (flutter/engine#56427)

Also rolling transitive DEPS:
  fuchsia/sdk/core/linux-amd64 from BajfrJuYeyWv to z-cm2nR0aJ4l

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
auto-submit bot pushed a commit that referenced this pull request Nov 14, 2024
## Description

Android fix for [[A11y] Double Tap brings the Slider thumb to the center of the widget.](flutter/flutter#156427). Similar to [the iOS engine fix](#56427).

Slider widget doesn't define a Semantics.onTap handler, so a double-click while in accessibility mode defaults to a regular tap down event to which _RenderSlider reacts by changing the slider value.

Adding a onTap callback on the framework side was tried in flutter/flutter#157601 but it breaks one accessibility guideline test, see flutter/flutter#157601 (comment)). 

See flutter/flutter#157601 (comment) for the reasoning to make the change at the engine level.

## Related Issue

Android fix for [[A11y] Double Tap brings the Slider thumb to the center of the widget.](flutter/flutter#156427).

## Tests

Adds 1 test.
nick9822 pushed a commit to nick9822/flutter that referenced this pull request Dec 18, 2024
…tter/engine#56427)

## Description

iOS fix [[A11y] Double Tap brings the Slider thumb to the center of the widget.](flutter#156427) per instruction from flutter#157601 (comment)

I don't have a physical iOS device to double check, but using the iOS Simulator and accessibility tools, the behavior seems ok. Without this PR, the slider thumb goes to the center when clicking 'Activate', with this PR it does not :

https://github.com/user-attachments/assets/697acadd-7fb1-40a5-ba5a-b549cac381a1

## Related Issue

iOS fix for [[A11y] Double Tap brings the Slider thumb to the center of the widget.](flutter#156427)

## Tests

Adds 1 test.
nick9822 pushed a commit to nick9822/flutter that referenced this pull request Dec 18, 2024
…6452)

## Description

Android fix for [[A11y] Double Tap brings the Slider thumb to the center of the widget.](flutter#156427). Similar to [the iOS engine fix](flutter/engine#56427).

Slider widget doesn't define a Semantics.onTap handler, so a double-click while in accessibility mode defaults to a regular tap down event to which _RenderSlider reacts by changing the slider value.

Adding a onTap callback on the framework side was tried in flutter#157601 but it breaks one accessibility guideline test, see flutter#157601 (comment)). 

See flutter#157601 (comment) for the reasoning to make the change at the engine level.

## Related Issue

Android fix for [[A11y] Double Tap brings the Slider thumb to the center of the widget.](flutter#156427).

## Tests

Adds 1 test.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[A11y] Double Tap brings the Slider thumb to the center of the widget.

2 participants