From 3cc5d169b431989ca22ebae7ca0fa984aa0c5a77 Mon Sep 17 00:00:00 2001 From: "dbaron%dbaron.org" Date: Fri, 16 Jul 2004 22:55:42 +0000 Subject: [PATCH] Load list-style-image in the style system rather than from frames. b=236889 r+sr=bzbarsky Reland quarter of patch to test effect on pageload. git-svn-id: svn://10.0.0.236/trunk@159372 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/content/base/src/nsRuleNode.cpp | 2 +- mozilla/content/html/style/src/nsCSSDataBlock.cpp | 5 +++-- mozilla/layout/style/nsCSSDataBlock.cpp | 5 +++-- mozilla/layout/style/nsRuleNode.cpp | 2 +- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/mozilla/content/base/src/nsRuleNode.cpp b/mozilla/content/base/src/nsRuleNode.cpp index 884dafef6de..f413db6b38b 100644 --- a/mozilla/content/base/src/nsRuleNode.cpp +++ b/mozilla/content/base/src/nsRuleNode.cpp @@ -3504,7 +3504,7 @@ nsRuleNode::ComputeListData(nsStyleStruct* aStartStruct, } // list-style-image: url, none, inherit - if (eCSSUnit_URL == listData.mImage.GetUnit()) { + if (eCSSUnit_Image == listData.mImage.GetUnit()) { list->mListStyleImage = listData.mImage.GetURLValue(); } else if (eCSSUnit_None == listData.mImage.GetUnit()) { diff --git a/mozilla/content/html/style/src/nsCSSDataBlock.cpp b/mozilla/content/html/style/src/nsCSSDataBlock.cpp index 95b02966ac1..988eda3bea1 100644 --- a/mozilla/content/html/style/src/nsCSSDataBlock.cpp +++ b/mozilla/content/html/style/src/nsCSSDataBlock.cpp @@ -185,9 +185,10 @@ nsCSSCompressedDataBlock::MapRuleInfoInto(nsRuleData *aRuleData) const if (target->GetUnit() == eCSSUnit_Null) { const nsCSSValue *val = ValueAtCursor(cursor); NS_ASSERTION(val->GetUnit() != eCSSUnit_Null, "oops"); - if (iProp == eCSSProperty_background_image && + if ((iProp == eCSSProperty_background_image || + iProp == eCSSProperty_list_style_image) && val->GetUnit() == eCSSUnit_URL) { - val->StartImageLoad(aRuleData->mPresContext->GetDocument()); + val->StartImageLoad(aRuleData->mPresContext->GetDocument()); } *target = *val; if (iProp == eCSSProperty_font_family) { diff --git a/mozilla/layout/style/nsCSSDataBlock.cpp b/mozilla/layout/style/nsCSSDataBlock.cpp index 95b02966ac1..988eda3bea1 100644 --- a/mozilla/layout/style/nsCSSDataBlock.cpp +++ b/mozilla/layout/style/nsCSSDataBlock.cpp @@ -185,9 +185,10 @@ nsCSSCompressedDataBlock::MapRuleInfoInto(nsRuleData *aRuleData) const if (target->GetUnit() == eCSSUnit_Null) { const nsCSSValue *val = ValueAtCursor(cursor); NS_ASSERTION(val->GetUnit() != eCSSUnit_Null, "oops"); - if (iProp == eCSSProperty_background_image && + if ((iProp == eCSSProperty_background_image || + iProp == eCSSProperty_list_style_image) && val->GetUnit() == eCSSUnit_URL) { - val->StartImageLoad(aRuleData->mPresContext->GetDocument()); + val->StartImageLoad(aRuleData->mPresContext->GetDocument()); } *target = *val; if (iProp == eCSSProperty_font_family) { diff --git a/mozilla/layout/style/nsRuleNode.cpp b/mozilla/layout/style/nsRuleNode.cpp index 884dafef6de..f413db6b38b 100644 --- a/mozilla/layout/style/nsRuleNode.cpp +++ b/mozilla/layout/style/nsRuleNode.cpp @@ -3504,7 +3504,7 @@ nsRuleNode::ComputeListData(nsStyleStruct* aStartStruct, } // list-style-image: url, none, inherit - if (eCSSUnit_URL == listData.mImage.GetUnit()) { + if (eCSSUnit_Image == listData.mImage.GetUnit()) { list->mListStyleImage = listData.mImage.GetURLValue(); } else if (eCSSUnit_None == listData.mImage.GetUnit()) {