Bug 633209 - Add ::-moz-progress-bar to access the anonymous div inside the progress element. r=dbaron

This commit is contained in:
Mounir Lamouri
2011-05-06 11:52:05 +02:00
parent 85b6f7b9c5
commit d783faa26b
17 changed files with 406 additions and 12 deletions

View File

@@ -71,6 +71,30 @@ nsProgressFrame::~nsProgressFrame()
{
}
NS_IMETHODIMP
nsProgressFrame::SetInitialChildList(nsIAtom* aListName,
nsFrameList& aChildList)
{
NS_ASSERTION(mBarDiv, "Progress bar div must exist!");
nsresult rv = nsHTMLContainerFrame::SetInitialChildList(aListName,
aChildList);
nsIFrame* barFrame = mBarDiv->GetPrimaryFrame();
nsCSSPseudoElements::Type pseudoType = nsCSSPseudoElements::ePseudo_mozProgressBar;
nsRefPtr<nsStyleContext> newStyleContext;
newStyleContext = barFrame->PresContext()->StyleSet()->
ResolvePseudoElementStyle(mContent->AsElement(), pseudoType,
barFrame->GetParent()->GetStyleContext());
if (newStyleContext) {
barFrame->SetStyleContext(newStyleContext);
}
return rv;
}
void
nsProgressFrame::DestroyFrom(nsIFrame* aDestructRoot)
{