Bug 1678523 - Prevent unexpected flushes in XULTreeAccessible.cpp. r=emilio

Differential Revision: https://phabricator.services.mozilla.com/D97955
This commit is contained in:
Tim Nguyen 2020-11-26 08:49:56 +00:00
parent 264c29bc73
commit 78d18899ac
3 changed files with 4 additions and 4 deletions

View file

@ -981,7 +981,7 @@ Accessible* XULTreeColumAccessible::GetSiblingAtOffset(int32_t aOffset,
RefPtr<dom::XULTreeElement> tree = nsCoreUtils::GetTree(mContent); RefPtr<dom::XULTreeElement> tree = nsCoreUtils::GetTree(mContent);
if (tree) { if (tree) {
nsCOMPtr<nsITreeView> treeView = tree->GetView(); nsCOMPtr<nsITreeView> treeView = tree->GetView(FlushType::None);
if (treeView) { if (treeView) {
int32_t rowCount = 0; int32_t rowCount = 0;
treeView->GetRowCount(&rowCount); treeView->GetRowCount(&rowCount);

View file

@ -106,9 +106,9 @@ nsTreeBodyFrame* XULTreeElement::GetTreeBodyFrame(FlushType aFlushType) {
return mTreeBody; return mTreeBody;
} }
already_AddRefed<nsITreeView> XULTreeElement::GetView() { already_AddRefed<nsITreeView> XULTreeElement::GetView(FlushType aFlushType) {
if (!mTreeBody) { if (!mTreeBody) {
if (!GetTreeBodyFrame()) { if (!GetTreeBodyFrame(aFlushType)) {
return nullptr; return nullptr;
} }

View file

@ -47,7 +47,7 @@ class XULTreeElement final : public nsXULElement {
already_AddRefed<nsITreeView> GetView(CallerType /* unused */) { already_AddRefed<nsITreeView> GetView(CallerType /* unused */) {
return GetView(); return GetView();
} }
already_AddRefed<nsITreeView> GetView(); already_AddRefed<nsITreeView> GetView(FlushType = FlushType::Frames);
void SetView(nsITreeView* arg, CallerType aCallerType, ErrorResult& aRv); void SetView(nsITreeView* arg, CallerType aCallerType, ErrorResult& aRv);