NS_IMETHODIMP xpcAccessibleHyperText::GetScriptableCaretOffset(int32_t* aCaretOffset) { NS_ENSURE_ARG_POINTER(aCaretOffset); *aCaretOffset = -1; HyperTextAccessible* text = static_cast<HyperTextAccessible*>(this); if (text->IsDefunct()) return NS_ERROR_FAILURE; *aCaretOffset = text->CaretOffset(); return NS_OK; }
static gint getCaretOffsetCB(AtkText *aText) { AccessibleWrap* accWrap = GetAccessibleWrap(ATK_OBJECT(aText)); if (accWrap) { HyperTextAccessible* text = accWrap->AsHyperText(); if (!text || !text->IsTextRole()) { return 0; } return static_cast<gint>(text->CaretOffset()); } if (ProxyAccessible* proxy = GetProxy(ATK_OBJECT(aText))) { return static_cast<gint>(proxy->CaretOffset()); } return 0; }