WebKitAccessibleUtil.h [plain text]
#pragma once
#if ENABLE(ACCESSIBILITY)
#include <atk/atk.h>
#include <wtf/text/WTFString.h>
namespace WebCore {
class AXCoreObject;
class AccessibilityObject;
class IntRect;
class VisibleSelection;
}
#define returnIfWebKitAccessibleIsInvalid(webkitAccessible) G_STMT_START { \
if (!webkitAccessible || webkitAccessibleIsDetached(webkitAccessible)) \
return; \
auto& coreObject = webkitAccessibleGetAccessibilityObject(webkitAccessible); \
if (!coreObject.document()) \
return; \
coreObject.updateBackingStore(); \
if (webkitAccessibleIsDetached(webkitAccessible)) \
return; \
; } G_STMT_END
#define returnValIfWebKitAccessibleIsInvalid(webkitAccessible, val) G_STMT_START { \
if (!webkitAccessible || webkitAccessibleIsDetached(webkitAccessible)) \
return (val); \
auto& coreObject = webkitAccessibleGetAccessibilityObject(webkitAccessible); \
if (!coreObject.document()) \
return (val); \
coreObject.updateBackingStore(); \
if (webkitAccessibleIsDetached(webkitAccessible)) \
return (val); \
; } G_STMT_END
AtkAttributeSet* addToAtkAttributeSet(AtkAttributeSet*, const char* name, const char* value);
void contentsRelativeToAtkCoordinateType(WebCore::AccessibilityObject*, AtkCoordType, WebCore::IntRect, gint* x, gint* y, gint* width = nullptr, gint* height = nullptr);
String accessibilityTitle(WebCore::AccessibilityObject*);
String accessibilityDescription(WebCore::AccessibilityObject*);
bool selectionBelongsToObject(WebCore::AccessibilityObject*, WebCore::VisibleSelection&);
WebCore::AXCoreObject* objectFocusedAndCaretOffsetUnignored(WebCore::AXCoreObject*, int& offset);
#endif // ENABLE(ACCESSIBILITY)