diff --git a/mozilla/htmlparser/src/MANIFEST b/mozilla/htmlparser/src/MANIFEST
index 74448aa8e38..45bd0825e48 100644
--- a/mozilla/htmlparser/src/MANIFEST
+++ b/mozilla/htmlparser/src/MANIFEST
@@ -7,6 +7,7 @@ nsIContentSink.h
nsIHTMLContentSink.h
nsIHTMLFragmentContentSink.h
nsHTMLContentSinkStream.h
+nsHTMLToTXTSinkStream.h
nsITokenizer.h
nsHTMLTokens.h
nsIParserNode.h
diff --git a/mozilla/htmlparser/src/Makefile.in b/mozilla/htmlparser/src/Makefile.in
index 85d5391c316..933d6d5766f 100644
--- a/mozilla/htmlparser/src/Makefile.in
+++ b/mozilla/htmlparser/src/Makefile.in
@@ -73,6 +73,7 @@ CPPSRCS = \
nsToken.cpp \
nsTokenHandler.cpp \
nsHTMLContentSinkStream.cpp \
+ nsHTMLToTXTSinkStream.cpp \
nsValidDTD.cpp \
nsWellFormedDTD.cpp \
nsViewSourceHTML.cpp \
@@ -96,6 +97,7 @@ EXPORTS = \
nsIHTMLContentSink.h \
nsHTMLContentSinkStream.h \
nsIHTMLFragmentContentSink.h \
+ nsHTMLToTXTSinkStream.h \
nsHTMLEntities.h \
nsHTMLEntityList.h \
nsHTMLTags.h \
diff --git a/mozilla/htmlparser/src/makefile.win b/mozilla/htmlparser/src/makefile.win
index a1ff84dc02b..1546be84bfa 100644
--- a/mozilla/htmlparser/src/makefile.win
+++ b/mozilla/htmlparser/src/makefile.win
@@ -50,6 +50,7 @@ CPPSRCS= \
nsToken.cpp \
nsTokenHandler.cpp \
nsHTMLContentSinkStream.cpp \
+ nsHTMLToTXTSinkStream.cpp \
nsValidDTD.cpp \
nsWellFormedDTD.cpp \
nsViewSourceHTML.cpp \
@@ -79,6 +80,7 @@ CPP_OBJS= \
.\$(OBJDIR)\nsToken.obj \
.\$(OBJDIR)\nsTokenHandler.obj \
.\$(OBJDIR)\nsHTMLContentSinkStream.obj \
+ .\$(OBJDIR)\nsHTMLToTXTSinkStream.obj \
.\$(OBJDIR)\nsValidDTD.obj \
.\$(OBJDIR)\nsWellFormedDTD.obj \
.\$(OBJDIR)\nsViewSourceHTML.obj \
@@ -96,6 +98,7 @@ EXPORTS= \
nsILoggingSink.h \
nsHTMLContentSinkStream.h \
nsIHTMLFragmentContentSink.h \
+ nsHTMLToTXTSinkStream.h \
nsHTMLEntities.h \
nsHTMLEntityList.h \
nsHTMLTags.h \
diff --git a/mozilla/htmlparser/src/nsParserCIID.h b/mozilla/htmlparser/src/nsParserCIID.h
index 81281c3d06f..20994e396b1 100644
--- a/mozilla/htmlparser/src/nsParserCIID.h
+++ b/mozilla/htmlparser/src/nsParserCIID.h
@@ -75,6 +75,10 @@
#define NS_HTMLCONTENTSINKSTREAM_CID \
{ 0xa6cf910f, 0x15b3, 0x11d2, { 0x93, 0x2e, 0x0, 0x80, 0x5f, 0x8a, 0xdd, 0x32 } }
+// {a6cf9110-15b3-11d2-932e-00805f8add32}
+#define NS_HTMLTOTXTSINKSTREAM_CID \
+{ 0xa6cf9110, 0x15b3, 0x11d2, { 0x93, 0x2e, 0x0, 0x80, 0x5f, 0x8a, 0xdd, 0x32 } }
+
// {a6cf9112-15b3-11d2-932e-00805f8add32}
#define NS_PARSERSERVICE_CID \
{ 0xa6cf9112, 0x15b3, 0x11d2, { 0x93, 0x2e, 0x0, 0x80, 0x5f, 0x8a, 0xdd, 0x32 } }
diff --git a/mozilla/htmlparser/src/nsParserModule.cpp b/mozilla/htmlparser/src/nsParserModule.cpp
index 2cc1c4794cc..9a2939a40f1 100644
--- a/mozilla/htmlparser/src/nsParserModule.cpp
+++ b/mozilla/htmlparser/src/nsParserModule.cpp
@@ -35,6 +35,7 @@
#include "COtherDTD.h"
#include "nsViewSourceHTML.h"
#include "nsHTMLContentSinkStream.h"
+#include "nsHTMLToTXTSinkStream.h"
#include "nsHTMLEntities.h"
#include "nsHTMLTokenizer.h"
#include "nsXMLTokenizer.h"
@@ -143,6 +144,7 @@ static NS_DEFINE_CID(kCOtherDTDCID, NS_COTHER_DTD_CID);
static NS_DEFINE_CID(kCTransitionalDTDCID, NS_CTRANSITIONAL_DTD_CID);
static NS_DEFINE_CID(kViewSourceDTDCID, NS_VIEWSOURCE_DTD_CID);
static NS_DEFINE_CID(kHTMLContentSinkStreamCID, NS_HTMLCONTENTSINKSTREAM_CID);
+static NS_DEFINE_CID(kHTMLToTXTSinkStreamCID, NS_HTMLTOTXTSINKSTREAM_CID);
static NS_DEFINE_CID(kParserServiceCID, NS_PARSERSERVICE_CID);
struct Components {
@@ -160,6 +162,7 @@ static Components gComponents[] = {
{ "Transitional DTD", &kCTransitionalDTDCID },
{ "ViewSource DTD", &kViewSourceDTDCID },
{ "HTML Content Sink Stream", &kHTMLContentSinkStreamCID },
+ { "HTML To Text Sink Stream", &kHTMLToTXTSinkStreamCID },
{ "ParserService", &kParserServiceCID },
};
@@ -174,6 +177,7 @@ NS_GENERIC_FACTORY_CONSTRUCTOR(COtherDTD)
NS_GENERIC_FACTORY_CONSTRUCTOR(CTransitionalDTD)
NS_GENERIC_FACTORY_CONSTRUCTOR(CViewSourceHTML)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsHTMLContentSinkStream)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsHTMLToTXTSinkStream)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsParserService)
//----------------------------------------------------------------------
@@ -202,6 +206,7 @@ protected:
nsCOMPtr mTransitionalHTMLDTDFactory;
nsCOMPtr mViewSourceHTMLDTDFactory;
nsCOMPtr mHTMLContentSinkStreamFactory;
+ nsCOMPtr mHTMLToTXTSinkStreamFactory;
nsCOMPtr mParserServiceFactory;
};
@@ -328,6 +333,13 @@ nsParserModule::GetClassObject(nsIComponentManager *aCompMgr,
}
fact = mHTMLContentSinkStreamFactory;
}
+ else if (aClass.Equals(kHTMLToTXTSinkStreamCID)) {
+ if (!mHTMLToTXTSinkStreamFactory) {
+ rv = NS_NewGenericFactory(getter_AddRefs(mHTMLToTXTSinkStreamFactory),
+ &nsHTMLToTXTSinkStreamConstructor);
+ }
+ fact = mHTMLToTXTSinkStreamFactory;
+ }
else if (aClass.Equals(kParserServiceCID)) {
if (!mParserServiceFactory) {
rv = NS_NewGenericFactory(getter_AddRefs(mParserServiceFactory),
diff --git a/mozilla/parser/htmlparser/src/MANIFEST b/mozilla/parser/htmlparser/src/MANIFEST
index 74448aa8e38..45bd0825e48 100644
--- a/mozilla/parser/htmlparser/src/MANIFEST
+++ b/mozilla/parser/htmlparser/src/MANIFEST
@@ -7,6 +7,7 @@ nsIContentSink.h
nsIHTMLContentSink.h
nsIHTMLFragmentContentSink.h
nsHTMLContentSinkStream.h
+nsHTMLToTXTSinkStream.h
nsITokenizer.h
nsHTMLTokens.h
nsIParserNode.h
diff --git a/mozilla/parser/htmlparser/src/Makefile.in b/mozilla/parser/htmlparser/src/Makefile.in
index 85d5391c316..933d6d5766f 100644
--- a/mozilla/parser/htmlparser/src/Makefile.in
+++ b/mozilla/parser/htmlparser/src/Makefile.in
@@ -73,6 +73,7 @@ CPPSRCS = \
nsToken.cpp \
nsTokenHandler.cpp \
nsHTMLContentSinkStream.cpp \
+ nsHTMLToTXTSinkStream.cpp \
nsValidDTD.cpp \
nsWellFormedDTD.cpp \
nsViewSourceHTML.cpp \
@@ -96,6 +97,7 @@ EXPORTS = \
nsIHTMLContentSink.h \
nsHTMLContentSinkStream.h \
nsIHTMLFragmentContentSink.h \
+ nsHTMLToTXTSinkStream.h \
nsHTMLEntities.h \
nsHTMLEntityList.h \
nsHTMLTags.h \
diff --git a/mozilla/parser/htmlparser/src/makefile.win b/mozilla/parser/htmlparser/src/makefile.win
index a1ff84dc02b..1546be84bfa 100644
--- a/mozilla/parser/htmlparser/src/makefile.win
+++ b/mozilla/parser/htmlparser/src/makefile.win
@@ -50,6 +50,7 @@ CPPSRCS= \
nsToken.cpp \
nsTokenHandler.cpp \
nsHTMLContentSinkStream.cpp \
+ nsHTMLToTXTSinkStream.cpp \
nsValidDTD.cpp \
nsWellFormedDTD.cpp \
nsViewSourceHTML.cpp \
@@ -79,6 +80,7 @@ CPP_OBJS= \
.\$(OBJDIR)\nsToken.obj \
.\$(OBJDIR)\nsTokenHandler.obj \
.\$(OBJDIR)\nsHTMLContentSinkStream.obj \
+ .\$(OBJDIR)\nsHTMLToTXTSinkStream.obj \
.\$(OBJDIR)\nsValidDTD.obj \
.\$(OBJDIR)\nsWellFormedDTD.obj \
.\$(OBJDIR)\nsViewSourceHTML.obj \
@@ -96,6 +98,7 @@ EXPORTS= \
nsILoggingSink.h \
nsHTMLContentSinkStream.h \
nsIHTMLFragmentContentSink.h \
+ nsHTMLToTXTSinkStream.h \
nsHTMLEntities.h \
nsHTMLEntityList.h \
nsHTMLTags.h \
diff --git a/mozilla/parser/htmlparser/src/nsParserCIID.h b/mozilla/parser/htmlparser/src/nsParserCIID.h
index 81281c3d06f..20994e396b1 100644
--- a/mozilla/parser/htmlparser/src/nsParserCIID.h
+++ b/mozilla/parser/htmlparser/src/nsParserCIID.h
@@ -75,6 +75,10 @@
#define NS_HTMLCONTENTSINKSTREAM_CID \
{ 0xa6cf910f, 0x15b3, 0x11d2, { 0x93, 0x2e, 0x0, 0x80, 0x5f, 0x8a, 0xdd, 0x32 } }
+// {a6cf9110-15b3-11d2-932e-00805f8add32}
+#define NS_HTMLTOTXTSINKSTREAM_CID \
+{ 0xa6cf9110, 0x15b3, 0x11d2, { 0x93, 0x2e, 0x0, 0x80, 0x5f, 0x8a, 0xdd, 0x32 } }
+
// {a6cf9112-15b3-11d2-932e-00805f8add32}
#define NS_PARSERSERVICE_CID \
{ 0xa6cf9112, 0x15b3, 0x11d2, { 0x93, 0x2e, 0x0, 0x80, 0x5f, 0x8a, 0xdd, 0x32 } }
diff --git a/mozilla/parser/htmlparser/src/nsParserModule.cpp b/mozilla/parser/htmlparser/src/nsParserModule.cpp
index 2cc1c4794cc..9a2939a40f1 100644
--- a/mozilla/parser/htmlparser/src/nsParserModule.cpp
+++ b/mozilla/parser/htmlparser/src/nsParserModule.cpp
@@ -35,6 +35,7 @@
#include "COtherDTD.h"
#include "nsViewSourceHTML.h"
#include "nsHTMLContentSinkStream.h"
+#include "nsHTMLToTXTSinkStream.h"
#include "nsHTMLEntities.h"
#include "nsHTMLTokenizer.h"
#include "nsXMLTokenizer.h"
@@ -143,6 +144,7 @@ static NS_DEFINE_CID(kCOtherDTDCID, NS_COTHER_DTD_CID);
static NS_DEFINE_CID(kCTransitionalDTDCID, NS_CTRANSITIONAL_DTD_CID);
static NS_DEFINE_CID(kViewSourceDTDCID, NS_VIEWSOURCE_DTD_CID);
static NS_DEFINE_CID(kHTMLContentSinkStreamCID, NS_HTMLCONTENTSINKSTREAM_CID);
+static NS_DEFINE_CID(kHTMLToTXTSinkStreamCID, NS_HTMLTOTXTSINKSTREAM_CID);
static NS_DEFINE_CID(kParserServiceCID, NS_PARSERSERVICE_CID);
struct Components {
@@ -160,6 +162,7 @@ static Components gComponents[] = {
{ "Transitional DTD", &kCTransitionalDTDCID },
{ "ViewSource DTD", &kViewSourceDTDCID },
{ "HTML Content Sink Stream", &kHTMLContentSinkStreamCID },
+ { "HTML To Text Sink Stream", &kHTMLToTXTSinkStreamCID },
{ "ParserService", &kParserServiceCID },
};
@@ -174,6 +177,7 @@ NS_GENERIC_FACTORY_CONSTRUCTOR(COtherDTD)
NS_GENERIC_FACTORY_CONSTRUCTOR(CTransitionalDTD)
NS_GENERIC_FACTORY_CONSTRUCTOR(CViewSourceHTML)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsHTMLContentSinkStream)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsHTMLToTXTSinkStream)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsParserService)
//----------------------------------------------------------------------
@@ -202,6 +206,7 @@ protected:
nsCOMPtr mTransitionalHTMLDTDFactory;
nsCOMPtr mViewSourceHTMLDTDFactory;
nsCOMPtr mHTMLContentSinkStreamFactory;
+ nsCOMPtr mHTMLToTXTSinkStreamFactory;
nsCOMPtr mParserServiceFactory;
};
@@ -328,6 +333,13 @@ nsParserModule::GetClassObject(nsIComponentManager *aCompMgr,
}
fact = mHTMLContentSinkStreamFactory;
}
+ else if (aClass.Equals(kHTMLToTXTSinkStreamCID)) {
+ if (!mHTMLToTXTSinkStreamFactory) {
+ rv = NS_NewGenericFactory(getter_AddRefs(mHTMLToTXTSinkStreamFactory),
+ &nsHTMLToTXTSinkStreamConstructor);
+ }
+ fact = mHTMLToTXTSinkStreamFactory;
+ }
else if (aClass.Equals(kParserServiceCID)) {
if (!mParserServiceFactory) {
rv = NS_NewGenericFactory(getter_AddRefs(mParserServiceFactory),
diff --git a/mozilla/widget/src/xpwidgets/nsXIFFormatConverter.cpp b/mozilla/widget/src/xpwidgets/nsXIFFormatConverter.cpp
index b9f0c26603d..14683129b18 100644
--- a/mozilla/widget/src/xpwidgets/nsXIFFormatConverter.cpp
+++ b/mozilla/widget/src/xpwidgets/nsXIFFormatConverter.cpp
@@ -34,6 +34,7 @@
#include "nsIParser.h"
#include "nsParserCIID.h"
#include "nsHTMLContentSinkStream.h"
+#include "nsHTMLToTXTSinkStream.h"
#include "nsXIFDTD.h"
#include "nsIStringStream.h"
diff --git a/mozilla/xpcom/base/IIDS.h b/mozilla/xpcom/base/IIDS.h
index 00875d7bdf1..470454b27c4 100644
--- a/mozilla/xpcom/base/IIDS.h
+++ b/mozilla/xpcom/base/IIDS.h
@@ -1136,6 +1136,12 @@ nsIDOMNSLocation = { /* a6cf9108-15b3-11d2-932e-00805f8add32 */
0x11d2,
{0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}
};
+nsTextConverter = { /* a6cf9109-15b3-11d2-932e-00805f8add32 */
+ 0xa6cf9109,
+ 0x15b3,
+ 0x11d2,
+ {0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}
+ };
nsIDOMDOMException = { /* a6cf910a-15b3-11d2-932e-00805f8add32 */
0xa6cf910a,
0x15b3,
@@ -1172,6 +1178,12 @@ nsHTMLContentSinkStream_CID = { /* a6cf910f-15b3-11d2-932e-00805f8add32 */
0x11d2,
{0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}
};
+nsHTMLToTXTSinkStream_CID = { /* a6cf9110-15b3-11d2-932e-00805f8add32 */
+ 0xa6cf9110,
+ 0x15b3,
+ 0x11d2,
+ {0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}
+ };
nsIParserService = { /* a6cf9111-15b3-11d2-932e-00805f8add32 */
0xa6cf9111,
0x15b3,