Bug 96748. Be sure to check for |open| on new rows. r=varga@utcru.sk, sr=hyatt

This commit is contained in:
waterson%netscape.com 2001-10-03 06:40:37 +00:00
parent 9324b81dee
commit 3cde1fa091
2 changed files with 30 additions and 2 deletions

View File

@ -1103,7 +1103,21 @@ nsXULOutlinerBuilder::ReplaceMatch(nsIRDFResource* aMember,
}
mRows.InsertRowAt(aNewMatch, parent, index);
mBoxObject->RowCountChanged(row + index + 1, +1);
row += index + 1;
mBoxObject->RowCountChanged(row, +1);
// See if this newly added row is open; in which case,
// recursively add its children to the outliner, too.
Value memberValue;
aNewMatch->GetAssignmentFor(mConflictSet, mMemberVar, &memberValue);
nsIRDFResource* member = VALUE_TO_IRDFRESOURCE(memberValue);
PRBool open;
IsContainerOpen(member, &open);
if (open)
OpenContainer(row, member);
}
}

View File

@ -1103,7 +1103,21 @@ nsXULOutlinerBuilder::ReplaceMatch(nsIRDFResource* aMember,
}
mRows.InsertRowAt(aNewMatch, parent, index);
mBoxObject->RowCountChanged(row + index + 1, +1);
row += index + 1;
mBoxObject->RowCountChanged(row, +1);
// See if this newly added row is open; in which case,
// recursively add its children to the outliner, too.
Value memberValue;
aNewMatch->GetAssignmentFor(mConflictSet, mMemberVar, &memberValue);
nsIRDFResource* member = VALUE_TO_IRDFRESOURCE(memberValue);
PRBool open;
IsContainerOpen(member, &open);
if (open)
OpenContainer(row, member);
}
}