Index: chrome/browser/ui/views/accessibility/accessibility_event_router_views.h |
diff --git a/chrome/browser/ui/views/accessibility/accessibility_event_router_views.h b/chrome/browser/ui/views/accessibility/accessibility_event_router_views.h |
index 6b24f9f6bc56b1ddd0672b4f41c9d5ac050ace22..20530a3c9cd6a5ce8dd002dc57055bcfea42d960 100644 |
--- a/chrome/browser/ui/views/accessibility/accessibility_event_router_views.h |
+++ b/chrome/browser/ui/views/accessibility/accessibility_event_router_views.h |
@@ -158,11 +158,21 @@ class AccessibilityEventRouterViews : public content::NotificationObserver { |
// subview with a role of STATIC_TEXT. |
static std::string RecursiveGetStaticText(views::View* view); |
+ // Returns the first ancestor of |view| (including |view|) that is |
+ // accessible. |
+ static views::View* FindFirstAccessibleAncestor(views::View* view); |
+ |
// The profile associated with the most recent window event - used to |
// figure out where to route a few events that can't be directly traced |
// to a window with a profile (like menu events). |
Profile* most_recent_profile_; |
+ // The most recent accessibility focusable view is stored in view storage |
+ // and is used to prevent multiple events from being dispatched on a |
+ // hoverable view from its multiple children. This is the id for the most |
+ // recent view we put in view storage. |
+ const int most_recent_view_id_; |
+ |
// Notification registrar so we can clear most_recent_profile_ when a |
// profile is destroyed. |
content::NotificationRegistrar registrar_; |