Index: sky/shell/ui/engine.cc |
diff --git a/sky/shell/ui/engine.cc b/sky/shell/ui/engine.cc |
index 6e35f098aaef2ad7e0be9396723519b5250d503b..b75b731656b66529cdfc7d835ffe32f66cbfc39e 100644 |
--- a/sky/shell/ui/engine.cc |
+++ b/sky/shell/ui/engine.cc |
@@ -218,8 +218,12 @@ void Engine::RunFromFile(const mojo::String& main, |
RunFromLibrary(main); |
} |
-void Engine::RunFromSnapshot(mojo::ScopedDataPipeConsumerHandle snapshot) { |
- // TODO(abarth): Implement. |
+void Engine::RunFromSnapshot(const mojo::String& url, |
+ mojo::ScopedDataPipeConsumerHandle snapshot) { |
+ CloseWebViewIfNeeded(); |
+ sky_view_ = blink::SkyView::Create(this); |
+ sky_view_->RunFromSnapshot(blink::WebString::fromUTF8(url), snapshot.Pass()); |
+ UpdateSkyViewSize(); |
} |
void Engine::LoadUsingWebView(const mojo::String& mojo_url) { |