From 4e2c8e33e2a69ebc5a3b15a41579e4ce29a7942a Mon Sep 17 00:00:00 2001 From: "surkov.alexander%gmail.com" Date: Tue, 17 Apr 2007 05:13:24 +0000 Subject: [PATCH] Fix for bug 376832 - L0, 1 of 1 being exposed for acc_description on everything, r=aaronlev git-svn-id: svn://10.0.0.236/trunk@224609 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/accessible/public/nsIAccessible.idl | 4 ++-- mozilla/accessible/src/base/nsAccessible.cpp | 2 +- mozilla/accessible/src/msaa/nsAccessibleWrap.cpp | 10 +++++----- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/mozilla/accessible/public/nsIAccessible.idl b/mozilla/accessible/public/nsIAccessible.idl index ff5c98eda77..3c0d904442f 100644 --- a/mozilla/accessible/public/nsIAccessible.idl +++ b/mozilla/accessible/public/nsIAccessible.idl @@ -184,9 +184,9 @@ interface nsIAccessible : nsISupports * Returns grouping information. Used for tree items, list items, tab panel * labels, radio buttons, etc. Also used for collectons of non-text objects. * - * @param groupLevel - 0-based, similar to ARIA 'level' property + * @param groupLevel - 1-based, similar to ARIA 'level' property * @param similarItemsInGroup - 1-based, similar to ARIA 'setsize' property - * @param positionInGroup - 0-based, similar to ARIA 'posinset' property + * @param positionInGroup - 1-based, similar to ARIA 'posinset' property */ void groupPosition(out long aGroupLevel, out long aSimilarItemsInGroup, out long aPositionInGroup); diff --git a/mozilla/accessible/src/base/nsAccessible.cpp b/mozilla/accessible/src/base/nsAccessible.cpp index ab0c4111c9c..3f1cb858def 100644 --- a/mozilla/accessible/src/base/nsAccessible.cpp +++ b/mozilla/accessible/src/base/nsAccessible.cpp @@ -2290,7 +2290,7 @@ nsAccessible::GroupPosition(PRInt32 *aGroupLevel, *aGroupLevel = level; - *aPositionInGroup = posInSet - 1; + *aPositionInGroup = posInSet; *aSimilarItemsInGroup = setSize - 1; return NS_OK; diff --git a/mozilla/accessible/src/msaa/nsAccessibleWrap.cpp b/mozilla/accessible/src/msaa/nsAccessibleWrap.cpp index 96625511f89..b031612da8b 100644 --- a/mozilla/accessible/src/msaa/nsAccessibleWrap.cpp +++ b/mozilla/accessible/src/msaa/nsAccessibleWrap.cpp @@ -330,8 +330,8 @@ nsAccessibleWrap::get_accDescription(VARIANT varChild, nsresult rv = xpAccessible->GroupPosition(&groupLevel, &similarItemsInGroup, &positionInGroup); if (NS_SUCCEEDED(rv)) { - if (positionInGroup != -1 && similarItemsInGroup != -1) { - if (groupLevel != -1) { + if (positionInGroup > 0) { + if (groupLevel > 0) { // XXX: How do we calculate the number of children? Now we append // " with [numChildren]c" for tree item. In the future we may need to // use the ARIA owns property to calculate that if it's present. @@ -367,18 +367,18 @@ nsAccessibleWrap::get_accDescription(VARIANT varChild, if (numChildren) { nsTextFormatter::ssprintf(description, NS_LITERAL_STRING("L%d, %d of %d with %d").get(), - groupLevel, positionInGroup + 1, + groupLevel, positionInGroup, similarItemsInGroup + 1, numChildren); } else { nsTextFormatter::ssprintf(description, NS_LITERAL_STRING("L%d, %d of %d").get(), - groupLevel, positionInGroup + 1, + groupLevel, positionInGroup, similarItemsInGroup + 1); } } else { // Position has no level nsTextFormatter::ssprintf(description, NS_LITERAL_STRING("%d of %d").get(), - positionInGroup + 1, similarItemsInGroup + 1); + positionInGroup, similarItemsInGroup + 1); } *pszDescription = ::SysAllocString(description.get());