Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(941)

Unified Diff: sky/engine/core/dom/Document.cpp

Issue 723583002: Make the parser an implementation detail of the Document (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Rename textPosition to parserPosition Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « sky/engine/core/dom/Document.h ('k') | sky/engine/core/dom/StyleElement.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sky/engine/core/dom/Document.cpp
diff --git a/sky/engine/core/dom/Document.cpp b/sky/engine/core/dom/Document.cpp
index bc0b8c926196a8ddb8f4315ec72fb8af7e2abd4b..35f78271e9659f62c307ddedebcd122b850c5ec4 100644
--- a/sky/engine/core/dom/Document.cpp
+++ b/sky/engine/core/dom/Document.cpp
@@ -1344,7 +1344,7 @@ void Document::removeAllEventListeners()
HTMLDocumentParser* Document::scriptableDocumentParser() const
{
- return parser() ? parser()->asHTMLDocumentParser() : 0;
+ return m_parser ? m_parser->asHTMLDocumentParser() : 0;
}
void Document::detachParser()
@@ -1374,7 +1374,7 @@ void Document::cancelParsing()
checkCompleted();
}
-void Document::startParsing()
+DocumentParser* Document::startParsing()
{
ASSERT(!m_parser);
ASSERT(!m_isParsing);
@@ -1384,6 +1384,7 @@ void Document::startParsing()
m_parser = HTMLDocumentParser::create(toHTMLDocument(*this), false);
setParsing(true);
setReadyState(Loading);
+ return m_parser.get();
}
Element* Document::viewportDefiningElement(RenderStyle* rootStyle) const
@@ -1638,6 +1639,13 @@ void Document::executeScriptsWaitingForResourcesTimerFired(Timer<Document>*)
parser->executeScriptsWaitingForResources();
}
+TextPosition Document::parserPosition() const
+{
+ if (HTMLDocumentParser* parser = scriptableDocumentParser())
+ return parser->textPosition();
+ return TextPosition::belowRangePosition();
+}
+
CSSStyleSheet& Document::elementSheet()
{
if (!m_elemSheet)
« no previous file with comments | « sky/engine/core/dom/Document.h ('k') | sky/engine/core/dom/StyleElement.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698