AX: move isIgnored caching to AXObject
authordmazzoni@google.com <dmazzoni@google.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 9 Feb 2013 23:06:00 +0000 (23:06 +0000)
committerdmazzoni@google.com <dmazzoni@google.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 9 Feb 2013 23:06:00 +0000 (23:06 +0000)
https://bugs.webkit.org/show_bug.cgi?id=109322

Reviewed by Chris Fleizach.

There's some benefit to caching accessibilityIsIgnored
(using AXComputedObjectAttributeCache) for more than just
AXRenderObject, so move the caching code to AXObject.

AXObject now has a protected virtual method
computeAccessibilityIsIgnored, and all subclasses
override that instead.

No new tests.

* accessibility/AccessibilityImageMapLink.h:
(AccessibilityImageMapLink):
(WebCore::AccessibilityImageMapLink::computeAccessibilityIsIgnored):
* accessibility/AccessibilityList.cpp:
(WebCore::AccessibilityList::computeAccessibilityIsIgnored):
* accessibility/AccessibilityList.h:
(AccessibilityList):
* accessibility/AccessibilityListBox.cpp:
(WebCore::AccessibilityListBox::computeAccessibilityIsIgnored):
* accessibility/AccessibilityListBox.h:
(AccessibilityListBox):
* accessibility/AccessibilityListBoxOption.cpp:
(WebCore::AccessibilityListBoxOption::computeAccessibilityIsIgnored):
* accessibility/AccessibilityListBoxOption.h:
(AccessibilityListBoxOption):
* accessibility/AccessibilityMediaControls.cpp:
(WebCore::AccessibilityMediaControl::computeAccessibilityIsIgnored):
(WebCore::AccessibilityMediaTimeDisplay::computeAccessibilityIsIgnored):
* accessibility/AccessibilityMediaControls.h:
(AccessibilityMediaControl):
(WebCore::AccessibilityMediaControlsContainer::computeAccessibilityIsIgnored):
(AccessibilityMediaTimeDisplay):
* accessibility/AccessibilityMenuList.h:
(WebCore::AccessibilityMenuList::computeAccessibilityIsIgnored):
* accessibility/AccessibilityMenuListOption.cpp:
(WebCore::AccessibilityMenuListOption::computeAccessibilityIsIgnored):
* accessibility/AccessibilityMenuListOption.h:
(AccessibilityMenuListOption):
* accessibility/AccessibilityMenuListPopup.cpp:
(WebCore::AccessibilityMenuListPopup::computeAccessibilityIsIgnored):
* accessibility/AccessibilityMenuListPopup.h:
(AccessibilityMenuListPopup):
* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::computeAccessibilityIsIgnored):
* accessibility/AccessibilityNodeObject.h:
(AccessibilityNodeObject):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::accessibilityIsIgnored):
(WebCore):
* accessibility/AccessibilityObject.h:
(AccessibilityObject):
(WebCore::AccessibilityObject::computeAccessibilityIsIgnored):
* accessibility/AccessibilityProgressIndicator.cpp:
(WebCore::AccessibilityProgressIndicator::computeAccessibilityIsIgnored):
* accessibility/AccessibilityProgressIndicator.h:
(AccessibilityProgressIndicator):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
* accessibility/AccessibilityRenderObject.h:
(AccessibilityRenderObject):
* accessibility/AccessibilityScrollView.cpp:
(WebCore::AccessibilityScrollView::computeAccessibilityIsIgnored):
* accessibility/AccessibilityScrollView.h:
(AccessibilityScrollView):
* accessibility/AccessibilityScrollbar.h:
(WebCore::AccessibilityScrollbar::computeAccessibilityIsIgnored):
* accessibility/AccessibilitySlider.cpp:
(WebCore::AccessibilitySlider::computeAccessibilityIsIgnored):
(WebCore::AccessibilitySliderThumb::computeAccessibilityIsIgnored):
* accessibility/AccessibilitySlider.h:
(AccessibilitySlider):
(AccessibilitySliderThumb):
* accessibility/AccessibilitySpinButton.h:
(WebCore::AccessibilitySpinButton::computeAccessibilityIsIgnored):
(WebCore::AccessibilitySpinButtonPart::computeAccessibilityIsIgnored):
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::computeAccessibilityIsIgnored):
* accessibility/AccessibilityTable.h:
(AccessibilityTable):
* accessibility/AccessibilityTableCell.cpp:
(WebCore::AccessibilityTableCell::computeAccessibilityIsIgnored):
* accessibility/AccessibilityTableCell.h:
(AccessibilityTableCell):
* accessibility/AccessibilityTableColumn.cpp:
(WebCore::AccessibilityTableColumn::computeAccessibilityIsIgnored):
* accessibility/AccessibilityTableColumn.h:
(AccessibilityTableColumn):
* accessibility/AccessibilityTableHeaderContainer.cpp:
(WebCore::AccessibilityTableHeaderContainer::computeAccessibilityIsIgnored):
* accessibility/AccessibilityTableHeaderContainer.h:
(AccessibilityTableHeaderContainer):
* accessibility/AccessibilityTableRow.cpp:
(WebCore::AccessibilityTableRow::computeAccessibilityIsIgnored):
* accessibility/AccessibilityTableRow.h:
(AccessibilityTableRow):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@142382 268f45cc-cd09-0410-ab3c-d52691b4dbfc

39 files changed:
Source/WebCore/ChangeLog
Source/WebCore/accessibility/AccessibilityImageMapLink.h
Source/WebCore/accessibility/AccessibilityList.cpp
Source/WebCore/accessibility/AccessibilityList.h
Source/WebCore/accessibility/AccessibilityListBox.cpp
Source/WebCore/accessibility/AccessibilityListBox.h
Source/WebCore/accessibility/AccessibilityListBoxOption.cpp
Source/WebCore/accessibility/AccessibilityListBoxOption.h
Source/WebCore/accessibility/AccessibilityMediaControls.cpp
Source/WebCore/accessibility/AccessibilityMediaControls.h
Source/WebCore/accessibility/AccessibilityMenuList.h
Source/WebCore/accessibility/AccessibilityMenuListOption.cpp
Source/WebCore/accessibility/AccessibilityMenuListOption.h
Source/WebCore/accessibility/AccessibilityMenuListPopup.cpp
Source/WebCore/accessibility/AccessibilityMenuListPopup.h
Source/WebCore/accessibility/AccessibilityNodeObject.cpp
Source/WebCore/accessibility/AccessibilityNodeObject.h
Source/WebCore/accessibility/AccessibilityObject.cpp
Source/WebCore/accessibility/AccessibilityObject.h
Source/WebCore/accessibility/AccessibilityProgressIndicator.cpp
Source/WebCore/accessibility/AccessibilityProgressIndicator.h
Source/WebCore/accessibility/AccessibilityRenderObject.cpp
Source/WebCore/accessibility/AccessibilityRenderObject.h
Source/WebCore/accessibility/AccessibilityScrollView.cpp
Source/WebCore/accessibility/AccessibilityScrollView.h
Source/WebCore/accessibility/AccessibilityScrollbar.h
Source/WebCore/accessibility/AccessibilitySlider.cpp
Source/WebCore/accessibility/AccessibilitySlider.h
Source/WebCore/accessibility/AccessibilitySpinButton.h
Source/WebCore/accessibility/AccessibilityTable.cpp
Source/WebCore/accessibility/AccessibilityTable.h
Source/WebCore/accessibility/AccessibilityTableCell.cpp
Source/WebCore/accessibility/AccessibilityTableCell.h
Source/WebCore/accessibility/AccessibilityTableColumn.cpp
Source/WebCore/accessibility/AccessibilityTableColumn.h
Source/WebCore/accessibility/AccessibilityTableHeaderContainer.cpp
Source/WebCore/accessibility/AccessibilityTableHeaderContainer.h
Source/WebCore/accessibility/AccessibilityTableRow.cpp
Source/WebCore/accessibility/AccessibilityTableRow.h

index 576eba9..8049ff4 100644 (file)
@@ -1,3 +1,106 @@
+2013-02-09  Dominic Mazzoni  <dmazzoni@google.com>
+
+        AX: move isIgnored caching to AXObject
+        https://bugs.webkit.org/show_bug.cgi?id=109322
+
+        Reviewed by Chris Fleizach.
+
+        There's some benefit to caching accessibilityIsIgnored
+        (using AXComputedObjectAttributeCache) for more than just
+        AXRenderObject, so move the caching code to AXObject.
+
+        AXObject now has a protected virtual method
+        computeAccessibilityIsIgnored, and all subclasses
+        override that instead.
+
+        No new tests.
+
+        * accessibility/AccessibilityImageMapLink.h:
+        (AccessibilityImageMapLink):
+        (WebCore::AccessibilityImageMapLink::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityList.cpp:
+        (WebCore::AccessibilityList::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityList.h:
+        (AccessibilityList):
+        * accessibility/AccessibilityListBox.cpp:
+        (WebCore::AccessibilityListBox::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityListBox.h:
+        (AccessibilityListBox):
+        * accessibility/AccessibilityListBoxOption.cpp:
+        (WebCore::AccessibilityListBoxOption::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityListBoxOption.h:
+        (AccessibilityListBoxOption):
+        * accessibility/AccessibilityMediaControls.cpp:
+        (WebCore::AccessibilityMediaControl::computeAccessibilityIsIgnored):
+        (WebCore::AccessibilityMediaTimeDisplay::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityMediaControls.h:
+        (AccessibilityMediaControl):
+        (WebCore::AccessibilityMediaControlsContainer::computeAccessibilityIsIgnored):
+        (AccessibilityMediaTimeDisplay):
+        * accessibility/AccessibilityMenuList.h:
+        (WebCore::AccessibilityMenuList::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityMenuListOption.cpp:
+        (WebCore::AccessibilityMenuListOption::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityMenuListOption.h:
+        (AccessibilityMenuListOption):
+        * accessibility/AccessibilityMenuListPopup.cpp:
+        (WebCore::AccessibilityMenuListPopup::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityMenuListPopup.h:
+        (AccessibilityMenuListPopup):
+        * accessibility/AccessibilityNodeObject.cpp:
+        (WebCore::AccessibilityNodeObject::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityNodeObject.h:
+        (AccessibilityNodeObject):
+        * accessibility/AccessibilityObject.cpp:
+        (WebCore::AccessibilityObject::accessibilityIsIgnored):
+        (WebCore):
+        * accessibility/AccessibilityObject.h:
+        (AccessibilityObject):
+        (WebCore::AccessibilityObject::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityProgressIndicator.cpp:
+        (WebCore::AccessibilityProgressIndicator::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityProgressIndicator.h:
+        (AccessibilityProgressIndicator):
+        * accessibility/AccessibilityRenderObject.cpp:
+        (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityRenderObject.h:
+        (AccessibilityRenderObject):
+        * accessibility/AccessibilityScrollView.cpp:
+        (WebCore::AccessibilityScrollView::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityScrollView.h:
+        (AccessibilityScrollView):
+        * accessibility/AccessibilityScrollbar.h:
+        (WebCore::AccessibilityScrollbar::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilitySlider.cpp:
+        (WebCore::AccessibilitySlider::computeAccessibilityIsIgnored):
+        (WebCore::AccessibilitySliderThumb::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilitySlider.h:
+        (AccessibilitySlider):
+        (AccessibilitySliderThumb):
+        * accessibility/AccessibilitySpinButton.h:
+        (WebCore::AccessibilitySpinButton::computeAccessibilityIsIgnored):
+        (WebCore::AccessibilitySpinButtonPart::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityTable.cpp:
+        (WebCore::AccessibilityTable::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityTable.h:
+        (AccessibilityTable):
+        * accessibility/AccessibilityTableCell.cpp:
+        (WebCore::AccessibilityTableCell::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityTableCell.h:
+        (AccessibilityTableCell):
+        * accessibility/AccessibilityTableColumn.cpp:
+        (WebCore::AccessibilityTableColumn::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityTableColumn.h:
+        (AccessibilityTableColumn):
+        * accessibility/AccessibilityTableHeaderContainer.cpp:
+        (WebCore::AccessibilityTableHeaderContainer::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityTableHeaderContainer.h:
+        (AccessibilityTableHeaderContainer):
+        * accessibility/AccessibilityTableRow.cpp:
+        (WebCore::AccessibilityTableRow::computeAccessibilityIsIgnored):
+        * accessibility/AccessibilityTableRow.h:
+        (AccessibilityTableRow):
+
 2013-02-09  David Farler  <dfarler@apple.com>
 
         Make TestWebKitAPI work for iOS
 2013-02-09  David Farler  <dfarler@apple.com>
 
         Make TestWebKitAPI work for iOS
index 0447b63..fee287f 100644 (file)
@@ -52,7 +52,6 @@ public:
     virtual Node* node() const { return m_areaElement.get(); }
         
     virtual AccessibilityRole roleValue() const;
     virtual Node* node() const { return m_areaElement.get(); }
         
     virtual AccessibilityRole roleValue() const;
-    virtual bool accessibilityIsIgnored() const { return false; }
     virtual bool isEnabled() const { return true; }
     
     virtual Element* anchorElement() const;
     virtual bool isEnabled() const { return true; }
     
     virtual Element* anchorElement() const;
@@ -75,6 +74,7 @@ private:
     
     virtual void accessibilityText(Vector<AccessibilityText>&);
     virtual bool isImageMapLink() const { return true; }
     
     virtual void accessibilityText(Vector<AccessibilityText>&);
     virtual bool isImageMapLink() const { return true; }
+    virtual bool computeAccessibilityIsIgnored() const { return false; }
 };
     
 } // namespace WebCore
 };
     
 } // namespace WebCore
index 9457c04..5a4ae75 100644 (file)
@@ -53,7 +53,7 @@ PassRefPtr<AccessibilityList> AccessibilityList::create(RenderObject* renderer)
     return adoptRef(new AccessibilityList(renderer));
 }
 
     return adoptRef(new AccessibilityList(renderer));
 }
 
-bool AccessibilityList::accessibilityIsIgnored() const
+bool AccessibilityList::computeAccessibilityIsIgnored() const
 {
     AccessibilityObjectInclusion decision = accessibilityIsIgnoredBase();
     if (decision == IncludeObject)
 {
     AccessibilityObjectInclusion decision = accessibilityIsIgnoredBase();
     if (decision == IncludeObject)
index 90a030e..25cc65c 100644 (file)
@@ -53,8 +53,8 @@ public:
     bool isDescriptionList() const;
 
     virtual AccessibilityRole roleValue() const { return ListRole; }
     bool isDescriptionList() const;
 
     virtual AccessibilityRole roleValue() const { return ListRole; }
-    virtual bool accessibilityIsIgnored() const;
-    
+private:
+    virtual bool computeAccessibilityIsIgnored() const;
 };
     
 } // namespace WebCore
 };
     
 } // namespace WebCore
index 22e5b81..1e5c53c 100644 (file)
@@ -152,7 +152,7 @@ AccessibilityObject* AccessibilityListBox::listBoxOptionAccessibilityObject(HTML
     return listBoxObject;
 }
     
     return listBoxObject;
 }
     
-bool AccessibilityListBox::accessibilityIsIgnored() const
+bool AccessibilityListBox::computeAccessibilityIsIgnored() const
 {
     AccessibilityObjectInclusion decision = accessibilityIsIgnoredBase();
     if (decision == IncludeObject)
 {
     AccessibilityObjectInclusion decision = accessibilityIsIgnoredBase();
     if (decision == IncludeObject)
index 4f00094..25b0a06 100644 (file)
@@ -54,7 +54,7 @@ public:
 
 private:    
     AccessibilityObject* listBoxOptionAccessibilityObject(HTMLElement*) const;
 
 private:    
     AccessibilityObject* listBoxOptionAccessibilityObject(HTMLElement*) const;
-    virtual bool accessibilityIsIgnored() const;
+    virtual bool computeAccessibilityIsIgnored() const;
     virtual AccessibilityObject* elementAccessibilityHitTest(const IntPoint&) const;
 };
     
     virtual AccessibilityObject* elementAccessibilityHitTest(const IntPoint&) const;
 };
     
index 3c56253..509699f 100644 (file)
@@ -120,7 +120,7 @@ LayoutRect AccessibilityListBoxOption::elementRect() const
     return rect;
 }
 
     return rect;
 }
 
-bool AccessibilityListBoxOption::accessibilityIsIgnored() const
+bool AccessibilityListBoxOption::computeAccessibilityIsIgnored() const
 {
     if (!m_optionElement)
         return true;
 {
     if (!m_optionElement)
         return true;
index ea812da..114445c 100644 (file)
@@ -51,7 +51,6 @@ public:
     void setHTMLElement(HTMLElement* element) { m_optionElement = element; }
     
     virtual AccessibilityRole roleValue() const { return ListBoxOptionRole; }
     void setHTMLElement(HTMLElement* element) { m_optionElement = element; }
     
     virtual AccessibilityRole roleValue() const { return ListBoxOptionRole; }
-    virtual bool accessibilityIsIgnored() const;
     virtual bool isSelected() const;
     virtual bool isEnabled() const;
     virtual bool isSelectedOptionActive() const;
     virtual bool isSelected() const;
     virtual bool isEnabled() const;
     virtual bool isSelectedOptionActive() const;
@@ -73,6 +72,7 @@ private:
     int listBoxOptionIndex() const;
     IntRect listBoxOptionRect() const;
     AccessibilityObject* listBoxOptionAccessibilityObject(HTMLElement*) const;
     int listBoxOptionIndex() const;
     IntRect listBoxOptionRect() const;
     AccessibilityObject* listBoxOptionAccessibilityObject(HTMLElement*) const;
+    virtual bool computeAccessibilityIsIgnored() const;
 };
     
 } // namespace WebCore 
 };
     
 } // namespace WebCore 
index 3dad71b..4107157 100644 (file)
@@ -173,7 +173,7 @@ String AccessibilityMediaControl::helpText() const
     return localizedMediaControlElementHelpText(controlTypeName());
 }
 
     return localizedMediaControlElementHelpText(controlTypeName());
 }
 
-bool AccessibilityMediaControl::accessibilityIsIgnored() const
+bool AccessibilityMediaControl::computeAccessibilityIsIgnored() const
 {
     if (!m_renderer || !m_renderer->style() || m_renderer->style()->visibility() != VISIBLE || controlType() == MediaTimelineContainer)
         return true;
 {
     if (!m_renderer || !m_renderer->style() || m_renderer->style()->visibility() != VISIBLE || controlType() == MediaTimelineContainer)
         return true;
@@ -300,7 +300,7 @@ PassRefPtr<AccessibilityObject> AccessibilityMediaTimeDisplay::create(RenderObje
     return adoptRef(new AccessibilityMediaTimeDisplay(renderer));
 }
 
     return adoptRef(new AccessibilityMediaTimeDisplay(renderer));
 }
 
-bool AccessibilityMediaTimeDisplay::accessibilityIsIgnored() const
+bool AccessibilityMediaTimeDisplay::computeAccessibilityIsIgnored() const
 {
     if (!m_renderer || !m_renderer->style() || m_renderer->style()->visibility() != VISIBLE)
         return true;
 {
     if (!m_renderer || !m_renderer->style() || m_renderer->style()->visibility() != VISIBLE)
         return true;
index 30d9d5e..6c81a97 100644 (file)
@@ -44,7 +44,6 @@ public:
     virtual ~AccessibilityMediaControl() { }
 
     virtual AccessibilityRole roleValue() const;
     virtual ~AccessibilityMediaControl() { }
 
     virtual AccessibilityRole roleValue() const;
-    virtual bool accessibilityIsIgnored() const;
 
     virtual String title() const;
     virtual String accessibilityDescription() const;
 
     virtual String title() const;
     virtual String accessibilityDescription() const;
@@ -55,6 +54,7 @@ protected:
     MediaControlElementType controlType() const;
     String controlTypeName() const;
     virtual void accessibilityText(Vector<AccessibilityText>&);
     MediaControlElementType controlType() const;
     String controlTypeName() const;
     virtual void accessibilityText(Vector<AccessibilityText>&);
+    virtual bool computeAccessibilityIsIgnored() const;
 };
 
 
 };
 
 
@@ -82,7 +82,6 @@ public:
     virtual ~AccessibilityMediaControlsContainer() { }
 
     virtual AccessibilityRole roleValue() const { return ToolbarRole; }
     virtual ~AccessibilityMediaControlsContainer() { }
 
     virtual AccessibilityRole roleValue() const { return ToolbarRole; }
-    virtual bool accessibilityIsIgnored() const { return false; }
 
     virtual String helpText() const;
     virtual String accessibilityDescription() const;
 
     virtual String helpText() const;
     virtual String accessibilityDescription() const;
@@ -91,6 +90,7 @@ private:
     explicit AccessibilityMediaControlsContainer(RenderObject*);
     bool controllingVideoElement() const;
     const String elementTypeName() const;
     explicit AccessibilityMediaControlsContainer(RenderObject*);
     bool controllingVideoElement() const;
     const String elementTypeName() const;
+    virtual bool computeAccessibilityIsIgnored() const { return false; }
 };
 
 
 };
 
 
@@ -101,7 +101,6 @@ public:
     virtual ~AccessibilityMediaTimeDisplay() { }
 
     virtual AccessibilityRole roleValue() const { return StaticTextRole; }
     virtual ~AccessibilityMediaTimeDisplay() { }
 
     virtual AccessibilityRole roleValue() const { return StaticTextRole; }
-    virtual bool accessibilityIsIgnored() const;
 
     virtual String stringValue() const;
     virtual String accessibilityDescription() const;
 
     virtual String stringValue() const;
     virtual String accessibilityDescription() const;
@@ -109,6 +108,7 @@ public:
 private:
     explicit AccessibilityMediaTimeDisplay(RenderObject*);
     virtual bool isMediaControlLabel() const { return true; }
 private:
     explicit AccessibilityMediaTimeDisplay(RenderObject*);
     virtual bool isMediaControlLabel() const { return true; }
+    virtual bool computeAccessibilityIsIgnored() const;
 };
 
 
 };
 
 
index 3ea8ffd..a01c3d8 100644 (file)
@@ -49,7 +49,7 @@ private:
 
     virtual bool isMenuList() const { return true; }
     virtual AccessibilityRole roleValue() const { return PopUpButtonRole; }
 
     virtual bool isMenuList() const { return true; }
     virtual AccessibilityRole roleValue() const { return PopUpButtonRole; }
-    virtual bool accessibilityIsIgnored() const { return false; }
+    virtual bool computeAccessibilityIsIgnored() const { return false; }
     virtual bool canSetFocusAttribute() const;
 
     virtual void addChildren();
     virtual bool canSetFocusAttribute() const;
 
     virtual void addChildren();
index 889a409..b3df0c9 100644 (file)
@@ -96,7 +96,7 @@ bool AccessibilityMenuListOption::canSetSelectedAttribute() const
     return isEnabled();
 }
 
     return isEnabled();
 }
 
-bool AccessibilityMenuListOption::accessibilityIsIgnored() const
+bool AccessibilityMenuListOption::computeAccessibilityIsIgnored() const
 {
     return accessibilityPlatformIncludesObject() != IncludeObject;
 }
 {
     return accessibilityPlatformIncludesObject() != IncludeObject;
 }
index 191bf42..c340b7e 100644 (file)
@@ -37,8 +37,6 @@ class AccessibilityMenuListOption : public AccessibilityMockObject {
 public:
     static PassRefPtr<AccessibilityMenuListOption> create() { return adoptRef(new AccessibilityMenuListOption); }
 
 public:
     static PassRefPtr<AccessibilityMenuListOption> create() { return adoptRef(new AccessibilityMenuListOption); }
 
-    virtual bool accessibilityIsIgnored() const;
-
     void setElement(HTMLElement*);
 
 private:
     void setElement(HTMLElement*);
 
 private:
@@ -59,6 +57,7 @@ private:
     virtual bool canSetSelectedAttribute() const;
     virtual LayoutRect elementRect() const;
     virtual String stringValue() const;
     virtual bool canSetSelectedAttribute() const;
     virtual LayoutRect elementRect() const;
     virtual String stringValue() const;
+    virtual bool computeAccessibilityIsIgnored() const;
 
     RefPtr<HTMLElement> m_element;
 };
 
     RefPtr<HTMLElement> m_element;
 };
index 1320730..ec1d53e 100644 (file)
@@ -62,7 +62,7 @@ bool AccessibilityMenuListPopup::isEnabled() const
     return m_parent->isEnabled();
 }
 
     return m_parent->isEnabled();
 }
 
-bool AccessibilityMenuListPopup::accessibilityIsIgnored() const
+bool AccessibilityMenuListPopup::computeAccessibilityIsIgnored() const
 {
     return accessibilityPlatformIncludesObject() != IncludeObject;
 }
 {
     return accessibilityPlatformIncludesObject() != IncludeObject;
 }
index 09435d0..52b30dc 100644 (file)
@@ -41,7 +41,6 @@ public:
 
     virtual bool isEnabled() const;
     virtual bool isOffScreen() const;
 
     virtual bool isEnabled() const;
     virtual bool isOffScreen() const;
-    virtual bool accessibilityIsIgnored() const;
 
     void didUpdateActiveOption(int optionIndex);
 
 
     void didUpdateActiveOption(int optionIndex);
 
@@ -58,6 +57,7 @@ private:
     virtual bool press() const;
     virtual void addChildren();
     virtual void childrenChanged();
     virtual bool press() const;
     virtual void addChildren();
     virtual void childrenChanged();
+    virtual bool computeAccessibilityIsIgnored() const;
 
     AccessibilityMenuListOption* menuListOptionAccessibilityObject(HTMLElement*) const;
 };
 
     AccessibilityMenuListOption* menuListOptionAccessibilityObject(HTMLElement*) const;
 };
index 89ffb8f..85463bb 100644 (file)
@@ -389,7 +389,7 @@ bool AccessibilityNodeObject::canHaveChildren() const
     }
 }
 
     }
 }
 
-bool AccessibilityNodeObject::accessibilityIsIgnored() const
+bool AccessibilityNodeObject::computeAccessibilityIsIgnored() const
 {
 #ifndef NDEBUG
     // Double-check that an AccessibilityObject is never accessed before
 {
 #ifndef NDEBUG
     // Double-check that an AccessibilityObject is never accessed before
index 4da51c2..e5f5654 100644 (file)
@@ -165,7 +165,6 @@ protected:
     virtual void insertChild(AccessibilityObject*, unsigned index);
 
     virtual bool canHaveChildren() const;
     virtual void insertChild(AccessibilityObject*, unsigned index);
 
     virtual bool canHaveChildren() const;
-    virtual bool accessibilityIsIgnored() const;
     AccessibilityRole ariaRoleAttribute() const;
     AccessibilityRole determineAriaRoleAttribute() const;
     AccessibilityRole remapAriaRoleDueToParent(AccessibilityRole) const;
     AccessibilityRole ariaRoleAttribute() const;
     AccessibilityRole determineAriaRoleAttribute() const;
     AccessibilityRole remapAriaRoleDueToParent(AccessibilityRole) const;
@@ -198,6 +197,7 @@ private:
     void helpText(Vector<AccessibilityText>&) const;
     String alternativeTextForWebArea() const;
     void ariaLabeledByText(Vector<AccessibilityText>&) const;
     void helpText(Vector<AccessibilityText>&) const;
     String alternativeTextForWebArea() const;
     void ariaLabeledByText(Vector<AccessibilityText>&) const;
+    virtual bool computeAccessibilityIsIgnored() const;
 };
 
 inline AccessibilityNodeObject* toAccessibilityNodeObject(AccessibilityObject* object)
 };
 
 inline AccessibilityNodeObject* toAccessibilityNodeObject(AccessibilityObject* object)
index 621c3c5..2c3d9db 100644 (file)
@@ -1843,4 +1843,27 @@ bool AccessibilityObject::isButton() const
     return role == ButtonRole || role == PopUpButtonRole || role == ToggleButtonRole;
 }
 
     return role == ButtonRole || role == PopUpButtonRole || role == ToggleButtonRole;
 }
 
+bool AccessibilityObject::accessibilityIsIgnored() const
+{
+    AXComputedObjectAttributeCache* attributeCache = axObjectCache()->computedObjectAttributeCache();
+    if (attributeCache) {
+        AccessibilityObjectInclusion ignored = attributeCache->getIgnored(axObjectID());
+        switch (ignored) {
+        case IgnoreObject:
+            return true;
+        case IncludeObject:
+            return false;
+        case DefaultBehavior:
+            break;
+        }
+    }
+
+    bool result = computeAccessibilityIsIgnored();
+
+    if (attributeCache)
+        attributeCache->setIgnored(axObjectID(), result ? IgnoreObject : IncludeObject);
+
+    return result;
+}
+
 } // namespace WebCore
 } // namespace WebCore
index 6c2c4df..0089cf1 100644 (file)
@@ -485,7 +485,7 @@ public:
     
     virtual Node* node() const { return 0; }
     virtual RenderObject* renderer() const { return 0; }
     
     virtual Node* node() const { return 0; }
     virtual RenderObject* renderer() const { return 0; }
-    virtual bool accessibilityIsIgnored() const  { return true; }
+    virtual bool accessibilityIsIgnored() const;
 
     int blockquoteLevel() const;
     virtual int headingLevel() const { return 0; }
 
     int blockquoteLevel() const;
     virtual int headingLevel() const { return 0; }
@@ -833,7 +833,9 @@ protected:
     mutable bool m_haveChildren;
     AccessibilityRole m_role;
     AccessibilityObjectInclusion m_lastKnownIsIgnoredValue;
     mutable bool m_haveChildren;
     AccessibilityRole m_role;
     AccessibilityObjectInclusion m_lastKnownIsIgnoredValue;
-    
+
+    virtual bool computeAccessibilityIsIgnored() const { return true; }
+
     // If this object itself scrolls, return its ScrollableArea.
     virtual ScrollableArea* getScrollableAreaIfScrollable() const { return 0; }
     virtual void scrollTo(const IntPoint&) const { }
     // If this object itself scrolls, return its ScrollableArea.
     virtual ScrollableArea* getScrollableAreaIfScrollable() const { return 0; }
     virtual void scrollTo(const IntPoint&) const { }
index 494d1c2..41e5574 100644 (file)
@@ -42,7 +42,7 @@ PassRefPtr<AccessibilityProgressIndicator> AccessibilityProgressIndicator::creat
     return adoptRef(new AccessibilityProgressIndicator(renderer));
 }
 
     return adoptRef(new AccessibilityProgressIndicator(renderer));
 }
 
-bool AccessibilityProgressIndicator::accessibilityIsIgnored() const
+bool AccessibilityProgressIndicator::computeAccessibilityIsIgnored() const
 {
     return accessibilityIsIgnoredBase() == IgnoreObject;
 }
 {
     return accessibilityIsIgnoredBase() == IgnoreObject;
 }
index d60bb2c..46adeff 100644 (file)
@@ -45,7 +45,7 @@ private:
     explicit AccessibilityProgressIndicator(RenderProgress*);
 
     HTMLProgressElement* element() const;
     explicit AccessibilityProgressIndicator(RenderProgress*);
 
     HTMLProgressElement* element() const;
-    virtual bool accessibilityIsIgnored() const;
+    virtual bool computeAccessibilityIsIgnored() const;
 };
 
 
 };
 
 
index 5b45c77..ea1311f 100644 (file)
@@ -1122,35 +1122,12 @@ AccessibilityObjectInclusion AccessibilityRenderObject::accessibilityIsIgnoredBa
     return DefaultBehavior;
 }  
 
     return DefaultBehavior;
 }  
 
-bool AccessibilityRenderObject::accessibilityIsIgnored() const
+bool AccessibilityRenderObject::computeAccessibilityIsIgnored() const
 {
 #ifndef NDEBUG
     ASSERT(m_initialized);
 #endif
 
 {
 #ifndef NDEBUG
     ASSERT(m_initialized);
 #endif
 
-    AXComputedObjectAttributeCache* attributeCache = axObjectCache()->computedObjectAttributeCache();
-    if (attributeCache) {
-        AccessibilityObjectInclusion ignored = attributeCache->getIgnored(axObjectID());
-        switch (ignored) {
-        case IgnoreObject:
-            return true;
-        case IncludeObject:
-            return false;
-        case DefaultBehavior:
-            break;
-        }
-    }
-
-    bool result = computeAccessibilityIsIgnored();
-
-    if (attributeCache)
-        attributeCache->setIgnored(axObjectID(), result ? IgnoreObject : IncludeObject);
-
-    return result;
-}
-
-bool AccessibilityRenderObject::computeAccessibilityIsIgnored() const
-{
     // Check first if any of the common reasons cause this element to be ignored.
     // Then process other use cases that need to be applied to all the various roles
     // that AccessibilityRenderObjects take on.
     // Check first if any of the common reasons cause this element to be ignored.
     // Then process other use cases that need to be applied to all the various roles
     // that AccessibilityRenderObjects take on.
index 0a5bdd2..1c78807 100644 (file)
@@ -94,7 +94,6 @@ public:
     
     // Provides common logic used by all elements when determining isIgnored.
     AccessibilityObjectInclusion accessibilityIsIgnoredBase() const;
     
     // Provides common logic used by all elements when determining isIgnored.
     AccessibilityObjectInclusion accessibilityIsIgnoredBase() const;
-    virtual bool accessibilityIsIgnored() const;
     
     virtual int layoutCount() const;
     virtual double estimatedLoadingProgress() const;
     
     virtual int layoutCount() const;
     virtual double estimatedLoadingProgress() const;
@@ -224,6 +223,7 @@ protected:
     virtual bool isDetached() const { return !m_renderer; }
 
     virtual AccessibilityRole determineAccessibilityRole();
     virtual bool isDetached() const { return !m_renderer; }
 
     virtual AccessibilityRole determineAccessibilityRole();
+    virtual bool computeAccessibilityIsIgnored() const;
 
 private:
     void ariaListboxSelectedChildren(AccessibilityChildrenVector&);
 
 private:
     void ariaListboxSelectedChildren(AccessibilityChildrenVector&);
@@ -279,8 +279,6 @@ private:
     
     bool inheritsPresentationalRole() const;
 
     
     bool inheritsPresentationalRole() const;
 
-    bool computeAccessibilityIsIgnored() const;
-    
 #if ENABLE(MATHML)
     // All math elements return true for isMathElement().
     virtual bool isMathElement() const;
 #if ENABLE(MATHML)
     // All math elements return true for isMathElement().
     virtual bool isMathElement() const;
index 12e5b4b..19b4482 100644 (file)
@@ -144,7 +144,7 @@ void AccessibilityScrollView::clearChildren()
     m_horizontalScrollbar = 0;
 }
 
     m_horizontalScrollbar = 0;
 }
 
-bool AccessibilityScrollView::accessibilityIsIgnored() const
+bool AccessibilityScrollView::computeAccessibilityIsIgnored() const
 {
     AccessibilityObject* webArea = webAreaObject();
     if (!webArea)
 {
     AccessibilityObject* webArea = webAreaObject();
     if (!webArea)
index 4ff8a22..20ab64e 100644 (file)
@@ -50,7 +50,7 @@ protected:
 private:
     explicit AccessibilityScrollView(ScrollView*);
     
 private:
     explicit AccessibilityScrollView(ScrollView*);
     
-    virtual bool accessibilityIsIgnored() const;
+    virtual bool computeAccessibilityIsIgnored() const;
     virtual bool isAccessibilityScrollView() const { return true; }
     virtual bool isEnabled() const { return true; }
     
     virtual bool isAccessibilityScrollView() const { return true; }
     virtual bool isEnabled() const { return true; }
     
index 840b797..61837f4 100644 (file)
@@ -44,7 +44,7 @@ public:
 private:
     explicit AccessibilityScrollbar(Scrollbar*);
 
 private:
     explicit AccessibilityScrollbar(Scrollbar*);
 
-    virtual bool accessibilityIsIgnored() const { return false; }
+    virtual bool computeAccessibilityIsIgnored() const { return false; }
     virtual bool canSetValueAttribute() const { return true; }
     virtual bool canSetNumericValue() const { return true; }
 
     virtual bool canSetValueAttribute() const { return true; }
     virtual bool canSetNumericValue() const { return true; }
 
index b03b9c4..89f05f8 100644 (file)
@@ -113,7 +113,7 @@ AccessibilityObject* AccessibilitySlider::elementAccessibilityHitTest(const IntP
     return axObjectCache()->getOrCreate(m_renderer);
 }
 
     return axObjectCache()->getOrCreate(m_renderer);
 }
 
-bool AccessibilitySlider::accessibilityIsIgnored() const
+bool AccessibilitySlider::computeAccessibilityIsIgnored() const
 {
     AccessibilityObjectInclusion decision = accessibilityIsIgnoredBase();
     if (decision == IncludeObject)
 {
     AccessibilityObjectInclusion decision = accessibilityIsIgnoredBase();
     if (decision == IncludeObject)
@@ -178,7 +178,7 @@ LayoutRect AccessibilitySliderThumb::elementRect() const
     return sliderThumbElementOf(sliderRenderer->node())->boundingBox();
 }
 
     return sliderThumbElementOf(sliderRenderer->node())->boundingBox();
 }
 
-bool AccessibilitySliderThumb::accessibilityIsIgnored() const
+bool AccessibilitySliderThumb::computeAccessibilityIsIgnored() const
 {
     AccessibilityObjectInclusion decision = accessibilityPlatformIncludesObject();
     if (decision == IncludeObject)
 {
     AccessibilityObjectInclusion decision = accessibilityPlatformIncludesObject();
     if (decision == IncludeObject)
index 94c4316..33e23ef 100644 (file)
@@ -47,7 +47,7 @@ protected:
 
 private:
     HTMLInputElement* element() const;
 
 private:
     HTMLInputElement* element() const;
-    virtual bool accessibilityIsIgnored() const;
+    virtual bool computeAccessibilityIsIgnored() const;
     virtual AccessibilityObject* elementAccessibilityHitTest(const IntPoint&) const;
 
     virtual AccessibilityRole roleValue() const { return SliderRole; }    
     virtual AccessibilityObject* elementAccessibilityHitTest(const IntPoint&) const;
 
     virtual AccessibilityRole roleValue() const { return SliderRole; }    
@@ -77,10 +77,10 @@ public:
 
     virtual LayoutRect elementRect() const;
 
 
     virtual LayoutRect elementRect() const;
 
-    virtual bool accessibilityIsIgnored() const;
-
 private:
     AccessibilitySliderThumb();
 private:
     AccessibilitySliderThumb();
+
+    virtual bool computeAccessibilityIsIgnored() const;
 };
 
 
 };
 
 
index 54d58fe..8d025f7 100644 (file)
@@ -48,7 +48,7 @@ private:
     AccessibilitySpinButton();
 
     virtual AccessibilityRole roleValue() const { return SpinButtonRole; }
     AccessibilitySpinButton();
 
     virtual AccessibilityRole roleValue() const { return SpinButtonRole; }
-    virtual bool accessibilityIsIgnored() const { return false; }
+    virtual bool computeAccessibilityIsIgnored() const { return false; }
     virtual bool isSpinButton() const { return true; }
     virtual void addChildren();
     virtual LayoutRect elementRect() const;
     virtual bool isSpinButton() const { return true; }
     virtual void addChildren();
     virtual LayoutRect elementRect() const;
@@ -72,7 +72,7 @@ private:
     virtual AccessibilityRole roleValue() const { return ButtonRole; }
     virtual bool isSpinButtonPart() const { return true; }
     virtual LayoutRect elementRect() const;
     virtual AccessibilityRole roleValue() const { return ButtonRole; }
     virtual bool isSpinButtonPart() const { return true; }
     virtual LayoutRect elementRect() const;
-    virtual bool accessibilityIsIgnored() const { return false; }
+    virtual bool computeAccessibilityIsIgnored() const { return false; }
 };
     
 inline AccessibilitySpinButton* toAccessibilitySpinButton(AccessibilityObject* object)
 };
     
 inline AccessibilitySpinButton* toAccessibilitySpinButton(AccessibilityObject* object)
index 9968b14..72d9b02 100644 (file)
@@ -592,7 +592,7 @@ AccessibilityRole AccessibilityTable::roleValue() const
     return TableRole;
 }
     
     return TableRole;
 }
     
-bool AccessibilityTable::accessibilityIsIgnored() const
+bool AccessibilityTable::computeAccessibilityIsIgnored() const
 {
     AccessibilityObjectInclusion decision = accessibilityIsIgnoredBase();
     if (decision == IncludeObject)
 {
     AccessibilityObjectInclusion decision = accessibilityIsIgnoredBase();
     if (decision == IncludeObject)
@@ -601,7 +601,7 @@ bool AccessibilityTable::accessibilityIsIgnored() const
         return true;
     
     if (!isAccessibilityTable())
         return true;
     
     if (!isAccessibilityTable())
-        return AccessibilityRenderObject::accessibilityIsIgnored();
+        return AccessibilityRenderObject::computeAccessibilityIsIgnored();
         
     return false;
 }
         
     return false;
 }
index 9f28f41..522c570 100644 (file)
@@ -58,8 +58,6 @@ public:
     virtual AccessibilityRole roleValue() const;
     virtual bool isAriaTable() const { return false; }
     
     virtual AccessibilityRole roleValue() const;
     virtual bool isAriaTable() const { return false; }
     
-    virtual bool accessibilityIsIgnored() const;
-    
     virtual void addChildren();
     virtual void clearChildren();
     
     virtual void addChildren();
     virtual void clearChildren();
     
@@ -92,6 +90,7 @@ protected:
 
     bool hasARIARole() const;
     bool isTableExposableThroughAccessibility() const;
 
     bool hasARIARole() const;
     bool isTableExposableThroughAccessibility() const;
+    virtual bool computeAccessibilityIsIgnored() const;
 };
     
 inline AccessibilityTable* toAccessibilityTable(AccessibilityObject* object)
 };
     
 inline AccessibilityTable* toAccessibilityTable(AccessibilityObject* object)
index b0881c6..31b9f68 100644 (file)
@@ -54,7 +54,7 @@ PassRefPtr<AccessibilityTableCell> AccessibilityTableCell::create(RenderObject*
     return adoptRef(new AccessibilityTableCell(renderer));
 }
 
     return adoptRef(new AccessibilityTableCell(renderer));
 }
 
-bool AccessibilityTableCell::accessibilityIsIgnored() const
+bool AccessibilityTableCell::computeAccessibilityIsIgnored() const
 {
     AccessibilityObjectInclusion decision = accessibilityIsIgnoredBase();
     if (decision == IncludeObject)
 {
     AccessibilityObjectInclusion decision = accessibilityIsIgnoredBase();
     if (decision == IncludeObject)
@@ -63,7 +63,7 @@ bool AccessibilityTableCell::accessibilityIsIgnored() const
         return true;
     
     if (!isTableCell())
         return true;
     
     if (!isTableCell())
-        return AccessibilityRenderObject::accessibilityIsIgnored();
+        return AccessibilityRenderObject::computeAccessibilityIsIgnored();
     
     return false;
 }
     
     return false;
 }
index 9341634..72e5fd9 100644 (file)
@@ -43,8 +43,6 @@ public:
     
     virtual bool isTableCell() const;
     
     
     virtual bool isTableCell() const;
     
-    virtual bool accessibilityIsIgnored() const;
-
     // fills in the start location and row span of cell
     virtual void rowIndexRange(pair<int, int>& rowRange);
     // fills in the start location and column span of cell
     // fills in the start location and row span of cell
     virtual void rowIndexRange(pair<int, int>& rowRange);
     // fills in the start location and column span of cell
@@ -59,6 +57,7 @@ private:
     // If a table cell is not exposed as a table cell, a TH element can serve as its title UI element.
     virtual AccessibilityObject* titleUIElement() const;
     virtual bool exposesTitleUIElement() const { return true; }
     // If a table cell is not exposed as a table cell, a TH element can serve as its title UI element.
     virtual AccessibilityObject* titleUIElement() const;
     virtual bool exposesTitleUIElement() const { return true; }
+    virtual bool computeAccessibilityIsIgnored() const;
 }; 
     
 } // namespace WebCore 
 }; 
     
 } // namespace WebCore 
index d8af046..4d49482 100644 (file)
@@ -152,7 +152,7 @@ AccessibilityObject* AccessibilityTableColumn::headerObjectForSection(RenderTabl
     return axObjectCache()->getOrCreate(cell);
 }
     
     return axObjectCache()->getOrCreate(cell);
 }
     
-bool AccessibilityTableColumn::accessibilityIsIgnored() const
+bool AccessibilityTableColumn::computeAccessibilityIsIgnored() const
 {
     if (!m_parent)
         return true;
 {
     if (!m_parent)
         return true;
index 632097e..6e737c1 100644 (file)
@@ -47,7 +47,6 @@ public:
     
     AccessibilityObject* headerObject();
         
     
     AccessibilityObject* headerObject();
         
-    virtual bool accessibilityIsIgnored() const;
     virtual AccessibilityRole roleValue() const { return ColumnRole; }
     virtual bool isTableColumn() const { return true; }
     
     virtual AccessibilityRole roleValue() const { return ColumnRole; }
     virtual bool isTableColumn() const { return true; }
     
@@ -64,6 +63,7 @@ private:
     LayoutRect m_columnRect;
     
     AccessibilityObject* headerObjectForSection(RenderTableSection*, bool thTagRequired);
     LayoutRect m_columnRect;
     
     AccessibilityObject* headerObjectForSection(RenderTableSection*, bool thTagRequired);
+    virtual bool computeAccessibilityIsIgnored() const;
 };
    
 } // namespace WebCore 
 };
    
 } // namespace WebCore 
index a85e53a..3e789de 100644 (file)
@@ -55,7 +55,7 @@ LayoutRect AccessibilityTableHeaderContainer::elementRect() const
     return m_headerRect;
 }
 
     return m_headerRect;
 }
 
-bool AccessibilityTableHeaderContainer::accessibilityIsIgnored() const
+bool AccessibilityTableHeaderContainer::computeAccessibilityIsIgnored() const
 {
     if (!m_parent)
         return true;
 {
     if (!m_parent)
         return true;
index 625e1dd..6a9b2c9 100644 (file)
@@ -52,7 +52,7 @@ public:
 private:
     LayoutRect m_headerRect;
     
 private:
     LayoutRect m_headerRect;
     
-    virtual bool accessibilityIsIgnored() const;
+    virtual bool computeAccessibilityIsIgnored() const;
 }; 
     
 } // namespace WebCore 
 }; 
     
 } // namespace WebCore 
index 3b22058..1270cf8 100644 (file)
@@ -86,7 +86,7 @@ AccessibilityObject* AccessibilityTableRow::observableObject() const
     return parentTable();
 }
     
     return parentTable();
 }
     
-bool AccessibilityTableRow::accessibilityIsIgnored() const
+bool AccessibilityTableRow::computeAccessibilityIsIgnored() const
 {    
     AccessibilityObjectInclusion decision = accessibilityIsIgnoredBase();
     if (decision == IncludeObject)
 {    
     AccessibilityObjectInclusion decision = accessibilityIsIgnoredBase();
     if (decision == IncludeObject)
@@ -95,7 +95,7 @@ bool AccessibilityTableRow::accessibilityIsIgnored() const
         return true;
     
     if (!isTableRow())
         return true;
     
     if (!isTableRow())
-        return AccessibilityRenderObject::accessibilityIsIgnored();
+        return AccessibilityRenderObject::computeAccessibilityIsIgnored();
 
     return false;
 }
 
     return false;
 }
index 6e88f8f..d242ee4 100644 (file)
@@ -42,7 +42,6 @@ public:
     virtual ~AccessibilityTableRow();
     
     virtual bool isTableRow() const;
     virtual ~AccessibilityTableRow();
     
     virtual bool isTableRow() const;
-    virtual bool accessibilityIsIgnored() const;
 
     // retrieves the "row" header (a th tag in the rightmost column)
     virtual AccessibilityObject* headerObject();
 
     // retrieves the "row" header (a th tag in the rightmost column)
     virtual AccessibilityObject* headerObject();
@@ -62,6 +61,7 @@ private:
     int m_rowIndex;
     
     virtual AccessibilityObject* observableObject() const;
     int m_rowIndex;
     
     virtual AccessibilityObject* observableObject() const;
+    virtual bool computeAccessibilityIsIgnored() const;
 }; 
    
 } // namespace WebCore 
 }; 
    
 } // namespace WebCore