WinCairo build fails to link.
[WebKit-https.git] / Source / WebKit / chromium / public / WebAccessibilityObject.h
index 364297e..06ab954 100644 (file)
 #ifndef WebAccessibilityObject_h
 #define WebAccessibilityObject_h
 
+#include "../../../Platform/chromium/public/WebCommon.h"
+#include "../../../Platform/chromium/public/WebPrivatePtr.h"
+#include "../../../Platform/chromium/public/WebVector.h"
 #include "WebAccessibilityRole.h"
-#include "WebCommon.h"
-#include "WebPrivatePtr.h"
-#include "WebVector.h"
 
 #if WEBKIT_IMPLEMENTATION
 namespace WTF { template <typename T> class PassRefPtr; }
@@ -69,13 +69,26 @@ public:
     WEBKIT_EXPORT bool equals(const WebAccessibilityObject&) const;
 
     bool isNull() const { return m_private.isNull(); }
+    // isDetached also checks for null, so it's safe to just call isDetached.
+    WEBKIT_EXPORT bool isDetached() const;
 
-    WEBKIT_EXPORT WebString accessibilityDescription() const;
-    WEBKIT_EXPORT WebString actionVerb() const;
-    WEBKIT_EXPORT bool canSetFocusAttribute() const;
-    WEBKIT_EXPORT bool canSetValueAttribute() const;
-    WEBKIT_EXPORT bool isValid() const;
+    // Static methods for enabling accessibility.
+    WEBKIT_EXPORT static void enableAccessibility();
+    WEBKIT_EXPORT static bool accessibilityEnabled();
+
+    WEBKIT_EXPORT void startCachingComputedObjectAttributesUntilTreeMutates();
+    WEBKIT_EXPORT void stopCachingComputedObjectAttributes();
+
+    WEBKIT_EXPORT int axID() const;
 
+    // Update the underlying tree, and return true if this object is
+    // still valid (not detached). Note that calling this method
+    // can cause other WebAccessibilityObjects to become invalid, too,
+    // so always call isDetached if updateBackingStoreAndCheckValidity
+    // has been called on any object, or if any other WebCore code has run.
+    WEBKIT_EXPORT bool updateBackingStoreAndCheckValidity();
+
+    WEBKIT_EXPORT WebString accessibilityDescription() const;
     WEBKIT_EXPORT unsigned childCount() const;
 
     WEBKIT_EXPORT WebAccessibilityObject childAt(unsigned) const;
@@ -86,8 +99,6 @@ public:
     WEBKIT_EXPORT WebAccessibilityObject parentObject() const;
     WEBKIT_EXPORT WebAccessibilityObject previousSibling() const;
 
-    WEBKIT_EXPORT bool canSetSelectedAttribute() const;
-
     WEBKIT_EXPORT bool isAnchor() const;
     WEBKIT_EXPORT bool isAriaReadOnly() const;
     WEBKIT_EXPORT bool isButtonStateMixed() const;
@@ -107,6 +118,7 @@ public:
     WEBKIT_EXPORT bool isReadOnly() const;
     WEBKIT_EXPORT bool isRequired() const;
     WEBKIT_EXPORT bool isSelected() const;
+    WEBKIT_EXPORT bool isSelectedOptionActive() const;
     WEBKIT_EXPORT bool isVertical() const;
     WEBKIT_EXPORT bool isVisible() const;
     WEBKIT_EXPORT bool isVisited() const;
@@ -118,21 +130,26 @@ public:
     WEBKIT_EXPORT WebString ariaLiveRegionRelevant() const;
     WEBKIT_EXPORT WebString ariaLiveRegionStatus() const;
     WEBKIT_EXPORT WebRect boundingBoxRect() const;
+    WEBKIT_EXPORT bool canvasHasFallbackContent() const;
+    WEBKIT_EXPORT WebPoint clickPoint() const;
+    WEBKIT_EXPORT void colorValue(int& r, int& g, int& b) const;
     WEBKIT_EXPORT double estimatedLoadingProgress() const;
     WEBKIT_EXPORT WebString helpText() const;
     WEBKIT_EXPORT int headingLevel() const;
     WEBKIT_EXPORT int hierarchicalLevel() const;
     WEBKIT_EXPORT WebAccessibilityObject hitTest(const WebPoint&) const;
     WEBKIT_EXPORT WebString keyboardShortcut() const;
-    WEBKIT_EXPORT bool performDefaultAction() const;
     WEBKIT_EXPORT WebAccessibilityRole roleValue() const;
     WEBKIT_EXPORT unsigned selectionEnd() const;
+    WEBKIT_EXPORT unsigned selectionEndLineNumber() const;
     WEBKIT_EXPORT unsigned selectionStart() const;
-    WEBKIT_EXPORT void setFocused(bool) const;
+    WEBKIT_EXPORT unsigned selectionStartLineNumber() const;
     WEBKIT_EXPORT WebString stringValue() const;
     WEBKIT_EXPORT WebString title() const;
+    WEBKIT_EXPORT WebAccessibilityObject titleUIElement() const;
     WEBKIT_EXPORT WebURL url() const;
 
+    WEBKIT_EXPORT bool supportsRangeValue() const;
     WEBKIT_EXPORT WebString valueDescription() const;
     WEBKIT_EXPORT float valueForRange() const;
     WEBKIT_EXPORT float maxValueForRange() const;
@@ -145,6 +162,21 @@ public:
     WEBKIT_EXPORT bool accessibilityIsIgnored() const;
     WEBKIT_EXPORT bool lineBreaks(WebVector<int>&) const;
 
+    // Actions
+    WEBKIT_EXPORT WebString actionVerb() const; // The verb corresponding to performDefaultAction.
+    WEBKIT_EXPORT bool canDecrement() const;
+    WEBKIT_EXPORT bool canIncrement() const;
+    WEBKIT_EXPORT bool canPress() const;
+    WEBKIT_EXPORT bool canSetFocusAttribute() const;
+    WEBKIT_EXPORT bool canSetSelectedAttribute() const;
+    WEBKIT_EXPORT bool canSetValueAttribute() const;
+    WEBKIT_EXPORT bool performDefaultAction() const;
+    WEBKIT_EXPORT bool press() const;
+    WEBKIT_EXPORT bool increment() const;
+    WEBKIT_EXPORT bool decrement() const;
+    WEBKIT_EXPORT void setFocused(bool) const;
+    WEBKIT_EXPORT void setSelectedTextRange(int selectionStart, int selectionEnd) const;
+
     // For a table
     WEBKIT_EXPORT unsigned columnCount() const;
     WEBKIT_EXPORT unsigned rowCount() const;
@@ -156,6 +188,13 @@ public:
     WEBKIT_EXPORT unsigned cellRowIndex() const;
     WEBKIT_EXPORT unsigned cellRowSpan() const;
 
+    // Make this object visible by scrolling as many nested scrollable views as needed.
+    WEBKIT_EXPORT void scrollToMakeVisible() const;
+    // Same, but if the whole object can't be made visible, try for this subrect, in local coordinates.
+    WEBKIT_EXPORT void scrollToMakeVisibleWithSubFocus(const WebRect&) const;
+    // Scroll this object to a given point in global coordinates of the top-level window.
+    WEBKIT_EXPORT void scrollToGlobalPoint(const WebPoint&) const;
+
 #if WEBKIT_IMPLEMENTATION
     WebAccessibilityObject(const WTF::PassRefPtr<WebCore::AccessibilityObject>&);
     WebAccessibilityObject& operator=(const WTF::PassRefPtr<WebCore::AccessibilityObject>&);