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

Unified Diff: Source/core/accessibility/AXObject.h

Issue 659563006: Add live region root to the cached properties of an AXObject. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Address feedback Created 6 years, 2 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
« no previous file with comments | « Source/core/accessibility/AXNodeObject.cpp ('k') | Source/core/accessibility/AXObject.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/accessibility/AXObject.h
diff --git a/Source/core/accessibility/AXObject.h b/Source/core/accessibility/AXObject.h
index d51353c0089370eea2d11dd67a7c4bbd82d4ea2f..5e3a91cacbaf06a3637cf530b4b5fb39f4819308 100644
--- a/Source/core/accessibility/AXObject.h
+++ b/Source/core/accessibility/AXObject.h
@@ -454,11 +454,17 @@ public:
void ariaTreeRows(AccessibilityChildrenVector&);
// ARIA live-region features.
- bool supportsARIALiveRegion() const;
- virtual const AtomicString& ariaLiveRegionStatus() const { return nullAtom; }
- virtual const AtomicString& ariaLiveRegionRelevant() const { return nullAtom; }
- virtual bool ariaLiveRegionAtomic() const { return false; }
- virtual bool ariaLiveRegionBusy() const { return false; }
+ bool isLiveRegion() const;
+ const AXObject* liveRegionRoot() const;
+ virtual const AtomicString& liveRegionStatus() const { return nullAtom; }
+ virtual const AtomicString& liveRegionRelevant() const { return nullAtom; }
+ virtual bool liveRegionAtomic() const { return false; }
+ virtual bool liveRegionBusy() const { return false; }
+
+ const AtomicString& containerLiveRegionStatus() const;
+ const AtomicString& containerLiveRegionRelevant() const;
+ bool containerLiveRegionAtomic() const;
+ bool containerLiveRegionBusy() const;
// Accessibility Text.
virtual String textUnderElement() const { return String(); }
@@ -580,12 +586,14 @@ protected:
bool m_detached;
-private:
// The following cached attribute values (the ones starting with m_cached*)
// are only valid if m_lastModificationCount matches AXObjectCacheImpl::modificationCount().
mutable int m_lastModificationCount;
mutable bool m_cachedIsIgnored;
+ mutable const AXObject* m_cachedLiveRegionRoot;
+ // Updates the cached attribute values. This may be recursive, so to prevent deadlocks,
+ // functions called here may only search up the tree (ancestors), not down.
void updateCachedAttributeValuesIfNeeded() const;
};
« no previous file with comments | « Source/core/accessibility/AXNodeObject.cpp ('k') | Source/core/accessibility/AXObject.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698