diff --git a/mozilla/layout/build/nsLayoutCID.h b/mozilla/layout/build/nsLayoutCID.h index 306445c5a93..743a5b7cc72 100644 --- a/mozilla/layout/build/nsLayoutCID.h +++ b/mozilla/layout/build/nsLayoutCID.h @@ -69,6 +69,10 @@ #define NS_HTMLSTYLESHEET_CID \ { 0x96882b70, 0x8a27, 0x11d2, { 0x8e, 0xaf, 0x0, 0x80, 0x5f, 0x29, 0xf3, 0x70 } } +// {95F46161-D177-11d2-BF86-00105A1B0627} +#define NS_HTML_CSS_STYLESHEET_CID \ +{ 0x95f46161, 0xd177, 0x11d2, { 0xbf, 0x86, 0x0, 0x10, 0x5a, 0x1b, 0x6, 0x27 } } + // {96882B71-8A27-11d2-8EAF-00805F29F370} #define NS_TEXTNODE_CID \ { 0x96882b71, 0x8a27, 0x11d2, { 0x8e, 0xaf, 0x0, 0x80, 0x5f, 0x29, 0xf3, 0x70 } } diff --git a/mozilla/layout/build/nsLayoutFactory.cpp b/mozilla/layout/build/nsLayoutFactory.cpp index 19b781e253b..8b9c906426d 100644 --- a/mozilla/layout/build/nsLayoutFactory.cpp +++ b/mozilla/layout/build/nsLayoutFactory.cpp @@ -33,6 +33,7 @@ #include "nsIServiceManager.h" #include "nsICSSParser.h" #include "nsIHTMLStyleSheet.h" +#include "nsIHTMLCSSStyleSheet.h" #include "nsIDOMRange.h" #include "nsIContentIterator.h" #include "nsINameSpaceManager.h" @@ -46,6 +47,7 @@ static NS_DEFINE_IID(kCXMLDocumentCID, NS_XMLDOCUMENT_CID); static NS_DEFINE_IID(kCImageDocumentCID, NS_IMAGEDOCUMENT_CID); static NS_DEFINE_IID(kCCSSParserCID, NS_CSSPARSER_CID); static NS_DEFINE_CID(kHTMLStyleSheetCID, NS_HTMLSTYLESHEET_CID); +static NS_DEFINE_CID(kHTMLCSSStyleSheetCID, NS_HTML_CSS_STYLESHEET_CID); static NS_DEFINE_IID(kCHTMLImageElementCID, NS_HTMLIMAGEELEMENT_CID); static NS_DEFINE_IID(kCRangeListCID, NS_RANGELIST_CID); static NS_DEFINE_IID(kCRangeCID, NS_RANGE_CID); @@ -240,6 +242,12 @@ nsresult nsLayoutFactory::CreateInstance(nsISupports *aOuter, return res; refCounted = PR_TRUE; } + else if (mClassID.Equals(kHTMLCSSStyleSheetCID)) { + // XXX ibid + if (NS_FAILED(res = NS_NewHTMLCSSStyleSheet((nsIHTMLCSSStyleSheet**)&inst))) + return res; + refCounted = PR_TRUE; + } else if (mClassID.Equals(kTextNodeCID)) { // XXX ibid if (NS_FAILED(res = NS_NewTextNode((nsIContent**) &inst)))