Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6)

Unified Diff: ui/views/accessibility/native_view_accessibility_base.h

Issue 2119413004: a11y: Exclude children of nested keyboard accessible controls from a11y tree. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Review comments. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/views/accessibility/native_view_accessibility_base.h
diff --git a/ui/views/accessibility/native_view_accessibility_base.h b/ui/views/accessibility/native_view_accessibility_base.h
index 0a5c09aa146960d26b66999c0f68ab4f3f6a14da..7cbe71dad3371a877074b8282e557ed476d413e9 100644
--- a/ui/views/accessibility/native_view_accessibility_base.h
+++ b/ui/views/accessibility/native_view_accessibility_base.h
@@ -20,6 +20,10 @@
namespace views {
+namespace test {
+class NativeViewAccessibilityBaseIgnoredElementsTest;
+}
+
class View;
class Widget;
@@ -30,6 +34,9 @@ class VIEWS_EXPORT NativeViewAccessibilityBase
public ui::AXPlatformNodeDelegate,
public WidgetObserver {
public:
+ // Convenience method for checking if a View should be ignored by a11y.
+ static bool IsIgnoredView(View* view);
+
~NativeViewAccessibilityBase() override;
// NativeViewAccessibility:
@@ -59,8 +66,17 @@ class VIEWS_EXPORT NativeViewAccessibilityBase
void SetParentWidget(Widget* parent_widget);
protected:
+ friend class test::NativeViewAccessibilityBaseIgnoredElementsTest;
+
+ // Retrieves the NativeViewAccessibility instance for the given View. This
+ // invokes View::GetNativeViewAccessible() to ensure it exists.
+ static NativeViewAccessibilityBase* GetForView(View* view);
+
explicit NativeViewAccessibilityBase(View* view);
+ // Retrieves the gfx::NativeViewAccessibility for |view_|'s Widget/Rootview.
+ virtual gfx::NativeViewAccessible GetNativeViewAccessibleForWidget();
+
// Weak. Owns this.
View* view_;
@@ -79,6 +95,7 @@ class VIEWS_EXPORT NativeViewAccessibilityBase
// a scoped_ptr. It is dereferenced in the destructor.
ui::AXPlatformNode* ax_node_;
+ // Accessibility information associated to |view_|.
mutable ui::AXNodeData data_;
DISALLOW_COPY_AND_ASSIGN(NativeViewAccessibilityBase);

Powered by Google App Engine
This is Rietveld 408576698