| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "sky/shell/ui/engine.h" | 5 #include "sky/shell/ui/engine.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "mojo/public/cpp/application/connect.h" | 8 #include "mojo/public/cpp/application/connect.h" |
| 9 #include "sky/engine/public/platform/WebInputEvent.h" | 9 #include "sky/engine/public/platform/WebInputEvent.h" |
| 10 #include "sky/engine/public/web/Sky.h" | 10 #include "sky/engine/public/web/Sky.h" |
| 11 #include "sky/engine/public/web/WebLocalFrame.h" | 11 #include "sky/engine/public/web/WebLocalFrame.h" |
| 12 #include "sky/engine/public/web/WebSettings.h" | 12 #include "sky/engine/public/web/WebSettings.h" |
| 13 #include "sky/engine/public/web/WebView.h" | 13 #include "sky/engine/public/web/WebView.h" |
| 14 #include "sky/services/platform/platform_impl.h" | 14 #include "sky/services/platform/platform_impl.h" |
| 15 #include "sky/shell/ui/animator.h" | 15 #include "sky/shell/ui/animator.h" |
| 16 #include "sky/shell/ui/input_event_converter.h" | 16 #include "sky/shell/ui/input_event_converter.h" |
| 17 #include "sky/shell/ui/internals.h" |
| 17 #include "third_party/skia/include/core/SkCanvas.h" | 18 #include "third_party/skia/include/core/SkCanvas.h" |
| 18 #include "third_party/skia/include/core/SkPictureRecorder.h" | 19 #include "third_party/skia/include/core/SkPictureRecorder.h" |
| 19 | 20 |
| 20 namespace sky { | 21 namespace sky { |
| 21 namespace shell { | 22 namespace shell { |
| 22 | 23 |
| 23 namespace { | 24 namespace { |
| 24 | 25 |
| 25 void ConfigureSettings(blink::WebSettings* settings) { | 26 void ConfigureSettings(blink::WebSettings* settings) { |
| 26 settings->setDefaultFixedFontSize(13); | 27 settings->setDefaultFixedFontSize(13); |
| (...skipping 14 matching lines...) Expand all Loading... |
| 41 Engine::~Engine() { | 42 Engine::~Engine() { |
| 42 if (web_view_) | 43 if (web_view_) |
| 43 web_view_->close(); | 44 web_view_->close(); |
| 44 } | 45 } |
| 45 | 46 |
| 46 base::WeakPtr<Engine> Engine::GetWeakPtr() { | 47 base::WeakPtr<Engine> Engine::GetWeakPtr() { |
| 47 return weak_factory_.GetWeakPtr(); | 48 return weak_factory_.GetWeakPtr(); |
| 48 } | 49 } |
| 49 | 50 |
| 50 void Engine::Init(mojo::ScopedMessagePipeHandle service_provider_handle) { | 51 void Engine::Init(mojo::ScopedMessagePipeHandle service_provider_handle) { |
| 51 mojo::ServiceProviderPtr service_provider = | 52 service_provider_ = |
| 52 mojo::MakeProxy<mojo::ServiceProvider>(service_provider_handle.Pass()); | 53 mojo::MakeProxy<mojo::ServiceProvider>(service_provider_handle.Pass()); |
| 53 mojo::NetworkServicePtr network_service; | 54 mojo::NetworkServicePtr network_service; |
| 54 mojo::ConnectToService(service_provider.get(), &network_service); | 55 mojo::ConnectToService(service_provider_.get(), &network_service); |
| 55 platform_impl_.reset(new PlatformImpl(network_service.Pass())); | 56 platform_impl_.reset(new PlatformImpl(network_service.Pass())); |
| 56 | 57 |
| 57 blink::initialize(platform_impl_.get()); | 58 blink::initialize(platform_impl_.get()); |
| 58 } | 59 } |
| 59 | 60 |
| 60 void Engine::BeginFrame(base::TimeTicks frame_time) { | 61 void Engine::BeginFrame(base::TimeTicks frame_time) { |
| 61 double frame_time_sec = (frame_time - base::TimeTicks()).InSecondsF(); | 62 double frame_time_sec = (frame_time - base::TimeTicks()).InSecondsF(); |
| 62 double deadline_sec = frame_time_sec; | 63 double deadline_sec = frame_time_sec; |
| 63 double interval_sec = 1.0 / 60; | 64 double interval_sec = 1.0 / 60; |
| 64 blink::WebBeginFrameArgs args(frame_time_sec, deadline_sec, interval_sec); | 65 blink::WebBeginFrameArgs args(frame_time_sec, deadline_sec, interval_sec); |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 134 frame->close(); | 135 frame->close(); |
| 135 } | 136 } |
| 136 | 137 |
| 137 void Engine::initializeLayerTreeView() { | 138 void Engine::initializeLayerTreeView() { |
| 138 } | 139 } |
| 139 | 140 |
| 140 void Engine::scheduleVisualUpdate() { | 141 void Engine::scheduleVisualUpdate() { |
| 141 animator_->RequestFrame(); | 142 animator_->RequestFrame(); |
| 142 } | 143 } |
| 143 | 144 |
| 145 void Engine::didCreateIsolate(blink::WebLocalFrame* frame, |
| 146 Dart_Isolate isolate) { |
| 147 Internals::Create(isolate, service_provider_.Pass()); |
| 148 } |
| 149 |
| 144 blink::ServiceProvider* Engine::services() { | 150 blink::ServiceProvider* Engine::services() { |
| 145 return this; | 151 return this; |
| 146 } | 152 } |
| 147 | 153 |
| 148 mojo::NavigatorHost* Engine::NavigatorHost() { | 154 mojo::NavigatorHost* Engine::NavigatorHost() { |
| 149 return this; | 155 return this; |
| 150 } | 156 } |
| 151 | 157 |
| 152 void Engine::RequestNavigate(mojo::Target target, | 158 void Engine::RequestNavigate(mojo::Target target, |
| 153 mojo::URLRequestPtr request) { | 159 mojo::URLRequestPtr request) { |
| 154 // Ignoring target for now. | 160 // Ignoring target for now. |
| 155 base::MessageLoop::current()->PostTask(FROM_HERE, | 161 base::MessageLoop::current()->PostTask(FROM_HERE, |
| 156 base::Bind(&Engine::LoadURL, GetWeakPtr(), request->url)); | 162 base::Bind(&Engine::LoadURL, GetWeakPtr(), request->url)); |
| 157 } | 163 } |
| 158 | 164 |
| 159 void Engine::DidNavigateLocally(const mojo::String& url) { | 165 void Engine::DidNavigateLocally(const mojo::String& url) { |
| 160 } | 166 } |
| 161 | 167 |
| 162 void Engine::RequestNavigateHistory(int32_t delta) { | 168 void Engine::RequestNavigateHistory(int32_t delta) { |
| 163 NOTIMPLEMENTED(); | 169 NOTIMPLEMENTED(); |
| 164 } | 170 } |
| 165 | 171 |
| 166 } // namespace shell | 172 } // namespace shell |
| 167 } // namespace sky | 173 } // namespace sky |
| OLD | NEW |