New issue
Advanced search Search tips

Issue 687828 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jan 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug
Team-Accessibility



Sign in to add a comment

--webkit-appearance: none causes AXObject to get the wrong role

Project Member Reported by aboxhall@chromium.org, Feb 2 2017

Issue description

cf https://bugs.webkit.org/show_bug.cgi?id=167718

This means that if -webkit-appearance is "none", the correct semantics are not applied even if the correct semantic node is used. 
 
Labels: NewComponent-Accessibility-Blink NewComponent-Accessibility
Components: Blink>Accessibility
Components: -UI>Accessibility
Labels: -newcomponent-accessibility-blink -newcomponent-accessibility
Labels: triage-dominic
Labels: -triage-dominic Hotlist-GoodFirstBug
Owner: ----
Status: Available (was: Untriaged)
Summary: --webkit-appearance: none causes AXObject to get the wrong role (was: Some AXObjects are created based on -webkit-appearance)
Currently AXLayoutObject computes the role by looking at the type of the LayoutObject - so that's how it knows a progress bar, for example. But that will fail when the progress bar has --webkit-appearance: none.

AXNodeObject also has some role computation code. Not sure if it works in the progress bar case, but it should - and it should be based only on the element tag and attributes, not on the layout.

I think that if AXLayoutObject fails to assign a non-default role, AXNodeObject should get a chance to assign a role. That ought to fix this bug.

I think this is possibly a good first bug.

Labels: triage-dtseng

Comment 7 by dtseng@chromium.org, Aug 11 2017

Labels: -triage-dtseng
Owner: robdodson@chromium.org
Project Member

Comment 9 by bugdroid1@chromium.org, Jan 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9f0388a6f32a6ed295549043735181c8f021fa0c

commit 9f0388a6f32a6ed295549043735181c8f021fa0c
Author: Rob Dodson <robdodson@chromium.org>
Date: Mon Jan 22 22:52:06 2018

Progress elements with -webkit-appearance: none should retain their role.

If a <progress> element has its appearance removed with -webkit-appearance:none,
it should still retain its role for accessibility. This CL also adds a test
to check that various other control types are not affected by this issue.

R=aboxhall@chromium.org

Bug:  687828 
Change-Id: I1a30e581dd109b34cae69ec9737cb233ceb5f1fb
Reviewed-on: https://chromium-review.googlesource.com/861054
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Commit-Queue: Rob Dodson <robdodson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#531034}
[add] https://crrev.com/9f0388a6f32a6ed295549043735181c8f021fa0c/third_party/WebKit/LayoutTests/accessibility/appearance-affects-role.html
[modify] https://crrev.com/9f0388a6f32a6ed295549043735181c8f021fa0c/third_party/WebKit/Source/modules/accessibility/AXLayoutObject.cpp
[modify] https://crrev.com/9f0388a6f32a6ed295549043735181c8f021fa0c/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp

Status: Fixed (was: Available)

Sign in to add a comment