| OLD | NEW |
| (Empty) |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "sky/engine/core/loader/MojoLoader.h" | |
| 6 | |
| 7 #include "base/bind.h" | |
| 8 #include "mojo/public/cpp/system/data_pipe.h" | |
| 9 #include "sky/engine/core/dom/Document.h" | |
| 10 #include "sky/engine/core/dom/DocumentInit.h" | |
| 11 #include "sky/engine/core/dom/DocumentParser.h" | |
| 12 #include "sky/engine/core/frame/LocalDOMWindow.h" | |
| 13 #include "sky/engine/core/frame/LocalFrame.h" | |
| 14 #include "sky/engine/core/loader/FrameLoaderClient.h" | |
| 15 #include "sky/engine/core/page/Page.h" | |
| 16 | |
| 17 namespace blink { | |
| 18 | |
| 19 MojoLoader::MojoLoader(LocalFrame& frame) | |
| 20 : m_frame(frame) | |
| 21 { | |
| 22 } | |
| 23 | |
| 24 void MojoLoader::init(const KURL& url) { | |
| 25 DocumentInit init(url, &m_frame); | |
| 26 | |
| 27 // FIXME(sky): Poorly named method for creating the FrameView: | |
| 28 m_frame.loaderClient()->transitionToCommittedForNewPage(); | |
| 29 // Only needed for UseCounter, and thus probably can be removed: | |
| 30 m_frame.page()->didCommitLoad(&m_frame); | |
| 31 | |
| 32 m_frame.setDOMWindow(LocalDOMWindow::create(m_frame)); | |
| 33 RefPtr<Document> document = m_frame.domWindow()->installNewDocument(init); | |
| 34 // Unclear if we care about DocumentLoadTiming in Sky. | |
| 35 document->timing()->markNavigationStart(); | |
| 36 document->setReadyState(Document::Loading); | |
| 37 // FIXME: This should read the Content-Language out of the | |
| 38 // response headers and set them on Document::contentLanguage. | |
| 39 } | |
| 40 | |
| 41 void MojoLoader::parse(mojo::ScopedDataPipeConsumerHandle responseStream) { | |
| 42 m_frame.document()->startParsing()->parse(responseStream.Pass(), | |
| 43 base::Bind(base::DoNothing)); | |
| 44 } | |
| 45 | |
| 46 } | |
| OLD | NEW |