| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 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 "mojo/services/html_viewer/html_document_view.h" | 5 #include "mojo/services/html_viewer/html_document_view.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/location.h" | 8 #include "base/location.h" |
| 9 #include "base/single_thread_task_runner.h" | 9 #include "base/single_thread_task_runner.h" |
| 10 #include "base/thread_task_runner_handle.h" | 10 #include "base/thread_task_runner_handle.h" |
| (...skipping 22 matching lines...) Expand all Loading... |
| 33 | 33 |
| 34 void ConfigureSettings(blink::WebSettings* settings) { | 34 void ConfigureSettings(blink::WebSettings* settings) { |
| 35 settings->setAcceleratedCompositingEnabled(false); | 35 settings->setAcceleratedCompositingEnabled(false); |
| 36 settings->setCookieEnabled(true); | 36 settings->setCookieEnabled(true); |
| 37 settings->setDefaultFixedFontSize(13); | 37 settings->setDefaultFixedFontSize(13); |
| 38 settings->setDefaultFontSize(16); | 38 settings->setDefaultFontSize(16); |
| 39 settings->setLoadsImagesAutomatically(true); | 39 settings->setLoadsImagesAutomatically(true); |
| 40 settings->setJavaScriptEnabled(true); | 40 settings->setJavaScriptEnabled(true); |
| 41 } | 41 } |
| 42 | 42 |
| 43 navigation::Target WebNavigationPolicyToNavigationTarget( | 43 Target WebNavigationPolicyToNavigationTarget( |
| 44 blink::WebNavigationPolicy policy) { | 44 blink::WebNavigationPolicy policy) { |
| 45 switch (policy) { | 45 switch (policy) { |
| 46 case blink::WebNavigationPolicyCurrentTab: | 46 case blink::WebNavigationPolicyCurrentTab: |
| 47 return navigation::TARGET_SOURCE_NODE; | 47 return TARGET_SOURCE_NODE; |
| 48 case blink::WebNavigationPolicyNewBackgroundTab: | 48 case blink::WebNavigationPolicyNewBackgroundTab: |
| 49 case blink::WebNavigationPolicyNewForegroundTab: | 49 case blink::WebNavigationPolicyNewForegroundTab: |
| 50 case blink::WebNavigationPolicyNewWindow: | 50 case blink::WebNavigationPolicyNewWindow: |
| 51 case blink::WebNavigationPolicyNewPopup: | 51 case blink::WebNavigationPolicyNewPopup: |
| 52 return navigation::TARGET_NEW_NODE; | 52 return TARGET_NEW_NODE; |
| 53 default: | 53 default: |
| 54 return navigation::TARGET_DEFAULT; | 54 return TARGET_DEFAULT; |
| 55 } | 55 } |
| 56 } | 56 } |
| 57 | 57 |
| 58 bool CanNavigateLocally(blink::WebFrame* frame, | 58 bool CanNavigateLocally(blink::WebFrame* frame, |
| 59 const blink::WebURLRequest& request) { | 59 const blink::WebURLRequest& request) { |
| 60 // For now, we just load child frames locally. | 60 // For now, we just load child frames locally. |
| 61 // TODO(aa): In the future, this should use embedding to connect to a | 61 // TODO(aa): In the future, this should use embedding to connect to a |
| 62 // different instance of Blink if the frame is cross-origin. | 62 // different instance of Blink if the frame is cross-origin. |
| 63 if (frame->parent()) | 63 if (frame->parent()) |
| 64 return true; | 64 return true; |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 return blink::Platform::current()->cookieJar(); | 153 return blink::Platform::current()->cookieJar(); |
| 154 } | 154 } |
| 155 | 155 |
| 156 blink::WebNavigationPolicy HTMLDocumentView::decidePolicyForNavigation( | 156 blink::WebNavigationPolicy HTMLDocumentView::decidePolicyForNavigation( |
| 157 blink::WebLocalFrame* frame, blink::WebDataSource::ExtraData* data, | 157 blink::WebLocalFrame* frame, blink::WebDataSource::ExtraData* data, |
| 158 const blink::WebURLRequest& request, blink::WebNavigationType nav_type, | 158 const blink::WebURLRequest& request, blink::WebNavigationType nav_type, |
| 159 blink::WebNavigationPolicy default_policy, bool is_redirect) { | 159 blink::WebNavigationPolicy default_policy, bool is_redirect) { |
| 160 if (CanNavigateLocally(frame, request)) | 160 if (CanNavigateLocally(frame, request)) |
| 161 return default_policy; | 161 return default_policy; |
| 162 | 162 |
| 163 navigation::NavigationDetailsPtr nav_details( | 163 NavigationDetailsPtr nav_details(NavigationDetails::New()); |
| 164 navigation::NavigationDetails::New()); | |
| 165 nav_details->url = request.url().string().utf8(); | 164 nav_details->url = request.url().string().utf8(); |
| 166 navigator_host_->RequestNavigate( | 165 navigator_host_->RequestNavigate( |
| 167 view_->node()->id(), | 166 view_->node()->id(), |
| 168 WebNavigationPolicyToNavigationTarget(default_policy), | 167 WebNavigationPolicyToNavigationTarget(default_policy), |
| 169 nav_details.Pass()); | 168 nav_details.Pass()); |
| 170 | 169 |
| 171 return blink::WebNavigationPolicyIgnore; | 170 return blink::WebNavigationPolicyIgnore; |
| 172 } | 171 } |
| 173 | 172 |
| 174 void HTMLDocumentView::didAddMessageToConsole( | 173 void HTMLDocumentView::didAddMessageToConsole( |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 218 | 217 |
| 219 skia::RefPtr<SkCanvas> canvas = skia::AdoptRef(SkCanvas::NewRaster( | 218 skia::RefPtr<SkCanvas> canvas = skia::AdoptRef(SkCanvas::NewRaster( |
| 220 SkImageInfo::MakeN32(width, height, kOpaque_SkAlphaType))); | 219 SkImageInfo::MakeN32(width, height, kOpaque_SkAlphaType))); |
| 221 | 220 |
| 222 web_view_->paint(canvas.get(), gfx::Rect(0, 0, width, height)); | 221 web_view_->paint(canvas.get(), gfx::Rect(0, 0, width, height)); |
| 223 | 222 |
| 224 view_->SetContents(canvas->getDevice()->accessBitmap(false)); | 223 view_->SetContents(canvas->getDevice()->accessBitmap(false)); |
| 225 } | 224 } |
| 226 | 225 |
| 227 } // namespace mojo | 226 } // namespace mojo |
| OLD | NEW |