Bug 389851. Accessible value not working with ARIA progressbars and sliders. r=scott@bashautomation.com, a=dsicore

This commit is contained in:
aaronleventhal@moonset.net 2007-08-14 17:53:32 -07:00
Родитель 26d8684fdc
Коммит 8222969cac
2 изменённых файлов: 14 добавлений и 0 удалений

Просмотреть файл

@ -211,6 +211,7 @@ nsresult nsAccessible::QueryInterface(REFNSIID aIID, void** aInstancePtr)
nsIContent::ATTR_VALUE_NO_MATCH) {
*aInstancePtr = static_cast<nsIAccessibleSelectable*>(this);
NS_ADDREF_THIS();
return NS_OK;
}
}
}
@ -219,6 +220,7 @@ nsresult nsAccessible::QueryInterface(REFNSIID aIID, void** aInstancePtr)
if (mRoleMapEntry && mRoleMapEntry->valueRule != eNoValue) {
*aInstancePtr = static_cast<nsIAccessibleValue*>(this);
NS_ADDREF_THIS();
return NS_OK;
}
}

Просмотреть файл

@ -1770,6 +1770,18 @@ NS_IMETHODIMP nsDocAccessible::InvalidateCacheSubtree(nsIContent *aChild,
}
}
if (!isShowing) {
// Fire an event so the assistive technology knows the children have changed
// This is only used by older MSAA clients. Newer ones should derive this
// from SHOW and HIDE so that they don't fetch extra objects
if (childAccessible) {
nsCOMPtr<nsIAccessibleEvent> reorderEvent =
new nsAccEvent(nsIAccessibleEvent::EVENT_REORDER, containerAccessible, nsnull, PR_TRUE);
NS_ENSURE_TRUE(reorderEvent, NS_ERROR_OUT_OF_MEMORY);
FireDelayedAccessibleEvent(reorderEvent, eCoalesceFromSameSubtree, isAsynch);
}
}
return NS_OK;
}