From de6c56a501158fb16f3f9cb1498def960338e6f2 Mon Sep 17 00:00:00 2001 From: Trevor Saunders Date: Mon, 13 Jun 2011 02:08:40 -0700 Subject: [PATCH] bug 657719 - nsAccessible::GetIndexInParent() overloaded virtual method r=surkov From 9456a3d1de8d5d707de94c040627d6daf871fcf1 Mon Sep 17 00:00:00 2001 --- accessible/src/atk/nsApplicationAccessibleWrap.cpp | 2 +- accessible/src/base/AccGroupInfo.cpp | 2 +- accessible/src/base/NotificationController.cpp | 8 ++++---- accessible/src/base/nsARIAGridAccessible.cpp | 4 ++-- accessible/src/base/nsAccessible.cpp | 6 +++--- accessible/src/base/nsAccessible.h | 2 +- accessible/src/html/nsHTMLImageMapAccessible.cpp | 4 ++-- accessible/src/html/nsHyperTextAccessible.cpp | 4 ++-- accessible/src/msaa/nsAccessibleWrap.cpp | 15 +++++++-------- accessible/src/xul/nsXULListboxAccessible.cpp | 4 ++-- accessible/src/xul/nsXULTextAccessible.cpp | 4 ++-- accessible/src/xul/nsXULTreeAccessible.cpp | 4 ++-- accessible/src/xul/nsXULTreeAccessible.h | 2 +- accessible/src/xul/nsXULTreeGridAccessible.cpp | 2 +- accessible/src/xul/nsXULTreeGridAccessible.h | 2 +- 15 files changed, 32 insertions(+), 33 deletions(-) --- .../src/atk/nsApplicationAccessibleWrap.cpp | 2 +- accessible/src/base/AccGroupInfo.cpp | 2 +- accessible/src/base/NotificationController.cpp | 8 ++++---- accessible/src/base/nsARIAGridAccessible.cpp | 4 ++-- accessible/src/base/nsAccessible.cpp | 6 +++--- accessible/src/base/nsAccessible.h | 2 +- accessible/src/html/nsHTMLImageMapAccessible.cpp | 4 ++-- accessible/src/html/nsHyperTextAccessible.cpp | 4 ++-- accessible/src/msaa/nsAccessibleWrap.cpp | 15 +++++++-------- accessible/src/xul/nsXULListboxAccessible.cpp | 4 ++-- accessible/src/xul/nsXULTextAccessible.cpp | 4 ++-- accessible/src/xul/nsXULTreeAccessible.cpp | 4 ++-- accessible/src/xul/nsXULTreeAccessible.h | 2 +- accessible/src/xul/nsXULTreeGridAccessible.cpp | 2 +- accessible/src/xul/nsXULTreeGridAccessible.h | 2 +- 15 files changed, 32 insertions(+), 33 deletions(-) diff --git a/accessible/src/atk/nsApplicationAccessibleWrap.cpp b/accessible/src/atk/nsApplicationAccessibleWrap.cpp index 4bc80c417c0c..9a3ac4d1c68d 100644 --- a/accessible/src/atk/nsApplicationAccessibleWrap.cpp +++ b/accessible/src/atk/nsApplicationAccessibleWrap.cpp @@ -705,7 +705,7 @@ nsApplicationAccessibleWrap::AppendChild(nsAccessible *aChild) PRBool nsApplicationAccessibleWrap::RemoveChild(nsAccessible* aChild) { - PRInt32 index = aChild->GetIndexInParent(); + PRInt32 index = aChild->IndexInParent(); AtkObject *atkAccessible = nsAccessibleWrap::GetAtkObject(aChild); atk_object_set_parent(atkAccessible, NULL); diff --git a/accessible/src/base/AccGroupInfo.cpp b/accessible/src/base/AccGroupInfo.cpp index 039091536b7a..191487fad70b 100644 --- a/accessible/src/base/AccGroupInfo.cpp +++ b/accessible/src/base/AccGroupInfo.cpp @@ -47,7 +47,7 @@ AccGroupInfo::AccGroupInfo(nsAccessible* aItem, PRUint32 aRole) : if (!parent) return; - PRInt32 indexInParent = aItem->GetIndexInParent(); + PRInt32 indexInParent = aItem->IndexInParent(); PRInt32 level = nsAccUtils::GetARIAOrDefaultLevel(aItem); // Compute position in set. diff --git a/accessible/src/base/NotificationController.cpp b/accessible/src/base/NotificationController.cpp index b54e0f65575b..b1266f8a116d 100644 --- a/accessible/src/base/NotificationController.cpp +++ b/accessible/src/base/NotificationController.cpp @@ -515,14 +515,14 @@ NotificationController::CoalesceTextChangeEventsFor(AccShowEvent* aTailEvent, if (!textEvent) return; - if (aTailEvent->mAccessible->GetIndexInParent() == - aThisEvent->mAccessible->GetIndexInParent() + 1) { + if (aTailEvent->mAccessible->IndexInParent() == + aThisEvent->mAccessible->IndexInParent() + 1) { // If tail target was inserted after this target, i.e. tail target is next // sibling of this target. aTailEvent->mAccessible->AppendTextTo(textEvent->mModifiedText); - } else if (aTailEvent->mAccessible->GetIndexInParent() == - aThisEvent->mAccessible->GetIndexInParent() -1) { + } else if (aTailEvent->mAccessible->IndexInParent() == + aThisEvent->mAccessible->IndexInParent() -1) { // If tail target was inserted before this target, i.e. tail target is // previous sibling of this target. nsAutoString startText; diff --git a/accessible/src/base/nsARIAGridAccessible.cpp b/accessible/src/base/nsARIAGridAccessible.cpp index 62514a26e355..43243ce55ee3 100644 --- a/accessible/src/base/nsARIAGridAccessible.cpp +++ b/accessible/src/base/nsARIAGridAccessible.cpp @@ -981,7 +981,7 @@ nsARIAGridCellAccessible::GetColumnIndex(PRInt32 *aColumnIndex) *aColumnIndex = 0; - PRInt32 indexInRow = GetIndexInParent(); + PRInt32 indexInRow = IndexInParent(); for (PRInt32 idx = 0; idx < indexInRow; idx++) { nsAccessible* cell = row->GetChildAt(idx); PRUint32 role = cell->Role(); @@ -1013,7 +1013,7 @@ nsARIAGridCellAccessible::GetRowIndex(PRInt32 *aRowIndex) *aRowIndex = 0; - PRInt32 indexInTable = row->GetIndexInParent(); + PRInt32 indexInTable = row->IndexInParent(); for (PRInt32 idx = 0; idx < indexInTable; idx++) { row = table->GetChildAt(idx); if (row->Role() == nsIAccessibleRole::ROLE_ROW) diff --git a/accessible/src/base/nsAccessible.cpp b/accessible/src/base/nsAccessible.cpp index 4c6b7a0d3c65..d7cf8b93058d 100644 --- a/accessible/src/base/nsAccessible.cpp +++ b/accessible/src/base/nsAccessible.cpp @@ -588,7 +588,7 @@ nsAccessible::GetIndexInParent(PRInt32 *aIndexInParent) { NS_ENSURE_ARG_POINTER(aIndexInParent); - *aIndexInParent = GetIndexInParent(); + *aIndexInParent = IndexInParent(); return *aIndexInParent != -1 ? NS_OK : NS_ERROR_FAILURE; } @@ -2844,11 +2844,11 @@ nsAccessible::GetChildCount() PRInt32 nsAccessible::GetIndexOf(nsAccessible* aChild) { - return (aChild->mParent != this) ? -1 : aChild->GetIndexInParent(); + return (aChild->mParent != this) ? -1 : aChild->IndexInParent(); } PRInt32 -nsAccessible::GetIndexInParent() const +nsAccessible::IndexInParent() const { return mIndexInParent; } diff --git a/accessible/src/base/nsAccessible.h b/accessible/src/base/nsAccessible.h index 39fe741575ba..06074b40aff8 100644 --- a/accessible/src/base/nsAccessible.h +++ b/accessible/src/base/nsAccessible.h @@ -297,7 +297,7 @@ public: /** * Return index in parent accessible. */ - virtual PRInt32 GetIndexInParent() const; + virtual PRInt32 IndexInParent() const; /** * Return true if accessible has children; diff --git a/accessible/src/html/nsHTMLImageMapAccessible.cpp b/accessible/src/html/nsHTMLImageMapAccessible.cpp index 4d356ad0902a..a04a5c19dc25 100644 --- a/accessible/src/html/nsHTMLImageMapAccessible.cpp +++ b/accessible/src/html/nsHTMLImageMapAccessible.cpp @@ -261,13 +261,13 @@ nsHTMLAreaAccessible::StartOffset() // We return index in parent because image map contains area links only which // are embedded objects. // XXX: image map should be a hypertext accessible. - return GetIndexInParent(); + return IndexInParent(); } PRUint32 nsHTMLAreaAccessible::EndOffset() { - return GetIndexInParent() + 1; + return IndexInParent() + 1; } //////////////////////////////////////////////////////////////////////////////// diff --git a/accessible/src/html/nsHyperTextAccessible.cpp b/accessible/src/html/nsHyperTextAccessible.cpp index bcafdce71ea0..a0b45453cb69 100644 --- a/accessible/src/html/nsHyperTextAccessible.cpp +++ b/accessible/src/html/nsHyperTextAccessible.cpp @@ -1154,7 +1154,7 @@ nsHyperTextAccessible::GetTextAttributes(PRBool aIncludeDefAttrs, return NS_ERROR_INVALID_ARG; } - PRInt32 accAtOffsetIdx = accAtOffset->GetIndexInParent(); + PRInt32 accAtOffsetIdx = accAtOffset->IndexInParent(); PRInt32 startOffset = GetChildOffset(accAtOffsetIdx); PRInt32 endOffset = GetChildOffset(accAtOffsetIdx + 1); PRInt32 offsetInAcc = aOffset - startOffset; @@ -2093,7 +2093,7 @@ nsHyperTextAccessible::InvalidateChildren() PRBool nsHyperTextAccessible::RemoveChild(nsAccessible* aAccessible) { - PRInt32 childIndex = aAccessible->GetIndexInParent(); + PRInt32 childIndex = aAccessible->IndexInParent(); PRInt32 count = mOffsets.Length() - childIndex; if (count > 0) mOffsets.RemoveElementsAt(childIndex, count); diff --git a/accessible/src/msaa/nsAccessibleWrap.cpp b/accessible/src/msaa/nsAccessibleWrap.cpp index 955e9f5967ec..f0a025ed686a 100644 --- a/accessible/src/msaa/nsAccessibleWrap.cpp +++ b/accessible/src/msaa/nsAccessibleWrap.cpp @@ -1382,19 +1382,18 @@ STDMETHODIMP nsAccessibleWrap::get_indexInParent(long *aIndexInParent) { __try { + if (!aIndexInParent) + return E_INVALIDARG; + *aIndexInParent = -1; + if (IsDefunct()) + return E_FAIL; - PRInt32 index = -1; - nsresult rv = GetIndexInParent(&index); - if (NS_FAILED(rv)) - return GetHRESULT(rv); - - if (index == -1) + *aIndexInParent = IndexInParent(); + if (*aIndexInParent == -1) return S_FALSE; - *aIndexInParent = index; return S_OK; - } __except(nsAccessNodeWrap::FilterA11yExceptions(::GetExceptionCode(), GetExceptionInformation())) { } return E_FAIL; } diff --git a/accessible/src/xul/nsXULListboxAccessible.cpp b/accessible/src/xul/nsXULListboxAccessible.cpp index 68ee2a060a0b..2d5fc72a528b 100644 --- a/accessible/src/xul/nsXULListboxAccessible.cpp +++ b/accessible/src/xul/nsXULListboxAccessible.cpp @@ -1025,7 +1025,7 @@ nsXULListCellAccessible::GetColumnIndex(PRInt32 *aColumnIndex) *aColumnIndex = 0; - PRInt32 indexInRow = GetIndexInParent(); + PRInt32 indexInRow = IndexInParent(); for (PRInt32 idx = 0; idx < indexInRow; idx++) { nsAccessible* cell = row->GetChildAt(idx); PRUint32 role = cell->Role(); @@ -1058,7 +1058,7 @@ nsXULListCellAccessible::GetRowIndex(PRInt32 *aRowIndex) *aRowIndex = 0; - PRInt32 indexInTable = row->GetIndexInParent(); + PRInt32 indexInTable = row->IndexInParent(); for (PRInt32 idx = 0; idx < indexInTable; idx++) { row = table->GetChildAt(idx); if (row->Role() == nsIAccessibleRole::ROLE_ROW) diff --git a/accessible/src/xul/nsXULTextAccessible.cpp b/accessible/src/xul/nsXULTextAccessible.cpp index 68c7a6594c38..ea7857f520bd 100644 --- a/accessible/src/xul/nsXULTextAccessible.cpp +++ b/accessible/src/xul/nsXULTextAccessible.cpp @@ -241,7 +241,7 @@ nsXULLinkAccessible::StartOffset() // accessible. if (nsAccessible::IsHyperLink()) return nsAccessible::StartOffset(); - return GetIndexInParent(); + return IndexInParent(); } PRUint32 @@ -249,7 +249,7 @@ nsXULLinkAccessible::EndOffset() { if (nsAccessible::IsHyperLink()) return nsAccessible::EndOffset(); - return GetIndexInParent() + 1; + return IndexInParent() + 1; } already_AddRefed diff --git a/accessible/src/xul/nsXULTreeAccessible.cpp b/accessible/src/xul/nsXULTreeAccessible.cpp index 768f600361a3..ffe9c9fda948 100644 --- a/accessible/src/xul/nsXULTreeAccessible.cpp +++ b/accessible/src/xul/nsXULTreeAccessible.cpp @@ -986,7 +986,7 @@ nsXULTreeItemAccessibleBase::NativeState() } PRInt32 -nsXULTreeItemAccessibleBase::GetIndexInParent() const +nsXULTreeItemAccessibleBase::IndexInParent() const { return mParent ? mParent->ContentChildCount() + mRow : -1; } @@ -1030,7 +1030,7 @@ nsXULTreeItemAccessibleBase::GetSiblingAtOffset(PRInt32 aOffset, if (aError) *aError = NS_OK; // fail peacefully - return mParent->GetChildAt(GetIndexInParent() + aOffset); + return mParent->GetChildAt(IndexInParent() + aOffset); } //////////////////////////////////////////////////////////////////////////////// diff --git a/accessible/src/xul/nsXULTreeAccessible.h b/accessible/src/xul/nsXULTreeAccessible.h index 245fa6702407..b6cf410b5acd 100644 --- a/accessible/src/xul/nsXULTreeAccessible.h +++ b/accessible/src/xul/nsXULTreeAccessible.h @@ -209,7 +209,7 @@ public: // nsAccessible virtual PRUint64 NativeState(); - virtual PRInt32 GetIndexInParent() const; + virtual PRInt32 IndexInParent() const; // nsXULTreeItemAccessibleBase NS_DECLARE_STATIC_IID_ACCESSOR(NS_XULTREEITEMBASEACCESSIBLE_IMPL_CID) diff --git a/accessible/src/xul/nsXULTreeGridAccessible.cpp b/accessible/src/xul/nsXULTreeGridAccessible.cpp index d8524ad5e97a..a8c2aa8a0aa8 100644 --- a/accessible/src/xul/nsXULTreeGridAccessible.cpp +++ b/accessible/src/xul/nsXULTreeGridAccessible.cpp @@ -1230,7 +1230,7 @@ nsXULTreeGridCellAccessible::NativeState() } PRInt32 -nsXULTreeGridCellAccessible::GetIndexInParent() const +nsXULTreeGridCellAccessible::IndexInParent() const { return GetColumnIndex(); } diff --git a/accessible/src/xul/nsXULTreeGridAccessible.h b/accessible/src/xul/nsXULTreeGridAccessible.h index 36d791dd4e53..ec94e7018a0d 100644 --- a/accessible/src/xul/nsXULTreeGridAccessible.h +++ b/accessible/src/xul/nsXULTreeGridAccessible.h @@ -166,7 +166,7 @@ public: virtual nsresult GetAttributesInternal(nsIPersistentProperties *aAttributes); virtual PRUint32 NativeRole(); virtual PRUint64 NativeState(); - virtual PRInt32 GetIndexInParent() const; + virtual PRInt32 IndexInParent() const; // nsXULTreeGridCellAccessible NS_DECLARE_STATIC_IID_ACCESSOR(NS_XULTREEGRIDCELLACCESSIBLE_IMPL_CID)