bug 1016545 - Provide an iterator that iterates over all children of an element r=bz

This commit is contained in:
Trevor Saunders
2014-07-16 14:41:57 -04:00
parent 6bc3a9d4fa
commit e052cf9168
32 changed files with 273 additions and 139 deletions

View File

@@ -394,15 +394,20 @@ nsTextControlFrame::CreateAnonymousContent(nsTArray<ContentInfo>& aElements)
}
void
nsTextControlFrame::AppendAnonymousContentTo(nsBaseContentList& aElements,
nsTextControlFrame::AppendAnonymousContentTo(nsTArray<nsIContent*>& aElements,
uint32_t aFilter)
{
nsCOMPtr<nsITextControlElement> txtCtrl = do_QueryInterface(GetContent());
NS_ASSERTION(txtCtrl, "Content not a text control element");
aElements.MaybeAppendElement(txtCtrl->GetRootEditorNode());
if (!(aFilter & nsIContent::eSkipPlaceholderContent))
aElements.MaybeAppendElement(txtCtrl->GetPlaceholderNode());
nsIContent* root = txtCtrl->GetRootEditorNode();
if (root) {
aElements.AppendElement(root);
}
nsIContent* placeholder = txtCtrl->GetPlaceholderNode();
if (placeholder && !(aFilter & nsIContent::eSkipPlaceholderContent))
aElements.AppendElement(placeholder);
}