OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "android_webview/renderer/aw_render_view_ext.h" | 5 #include "android_webview/renderer/aw_render_view_ext.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "android_webview/common/aw_hit_test_data.h" | 9 #include "android_webview/common/aw_hit_test_data.h" |
10 #include "android_webview/common/render_view_messages.h" | 10 #include "android_webview/common/render_view_messages.h" |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
137 // static | 137 // static |
138 void AwRenderViewExt::RenderViewCreated(content::RenderView* render_view) { | 138 void AwRenderViewExt::RenderViewCreated(content::RenderView* render_view) { |
139 new AwRenderViewExt(render_view); // |render_view| takes ownership. | 139 new AwRenderViewExt(render_view); // |render_view| takes ownership. |
140 } | 140 } |
141 | 141 |
142 bool AwRenderViewExt::OnMessageReceived(const IPC::Message& message) { | 142 bool AwRenderViewExt::OnMessageReceived(const IPC::Message& message) { |
143 bool handled = true; | 143 bool handled = true; |
144 IPC_BEGIN_MESSAGE_MAP(AwRenderViewExt, message) | 144 IPC_BEGIN_MESSAGE_MAP(AwRenderViewExt, message) |
145 IPC_MESSAGE_HANDLER(AwViewMsg_DocumentHasImages, OnDocumentHasImagesRequest) | 145 IPC_MESSAGE_HANDLER(AwViewMsg_DocumentHasImages, OnDocumentHasImagesRequest) |
146 IPC_MESSAGE_HANDLER(AwViewMsg_DoHitTest, OnDoHitTest) | 146 IPC_MESSAGE_HANDLER(AwViewMsg_DoHitTest, OnDoHitTest) |
147 IPC_MESSAGE_HANDLER(AwViewMsg_SetEnableFixedLayoutMode, | |
148 OnSetEnableFixedLayoutMode) | |
149 IPC_MESSAGE_HANDLER(AwViewMsg_SetTextZoomLevel, OnSetTextZoomLevel) | 147 IPC_MESSAGE_HANDLER(AwViewMsg_SetTextZoomLevel, OnSetTextZoomLevel) |
150 IPC_MESSAGE_HANDLER(AwViewMsg_ResetScrollAndScaleState, | 148 IPC_MESSAGE_HANDLER(AwViewMsg_ResetScrollAndScaleState, |
151 OnResetScrollAndScaleState) | 149 OnResetScrollAndScaleState) |
152 IPC_MESSAGE_HANDLER(AwViewMsg_SetInitialPageScale, OnSetInitialPageScale) | 150 IPC_MESSAGE_HANDLER(AwViewMsg_SetInitialPageScale, OnSetInitialPageScale) |
153 IPC_MESSAGE_UNHANDLED(handled = false) | 151 IPC_MESSAGE_UNHANDLED(handled = false) |
154 IPC_END_MESSAGE_MAP() | 152 IPC_END_MESSAGE_MAP() |
155 return handled; | 153 return handled; |
156 } | 154 } |
157 | 155 |
158 void AwRenderViewExt::OnDocumentHasImagesRequest(int id) { | 156 void AwRenderViewExt::OnDocumentHasImagesRequest(int id) { |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
237 data.href = GetHref(result.urlElement()); | 235 data.href = GetHref(result.urlElement()); |
238 } | 236 } |
239 | 237 |
240 PopulateHitTestData(result.absoluteLinkURL(), | 238 PopulateHitTestData(result.absoluteLinkURL(), |
241 result.absoluteImageURL(), | 239 result.absoluteImageURL(), |
242 result.isContentEditable(), | 240 result.isContentEditable(), |
243 &data); | 241 &data); |
244 Send(new AwViewHostMsg_UpdateHitTestData(routing_id(), data)); | 242 Send(new AwViewHostMsg_UpdateHitTestData(routing_id(), data)); |
245 } | 243 } |
246 | 244 |
247 void AwRenderViewExt::OnSetEnableFixedLayoutMode(bool enabled) { | |
248 if (!render_view() || !render_view()->GetWebView()) | |
249 return; | |
250 render_view()->GetWebView()->enableFixedLayoutMode(enabled); | |
251 } | |
252 | |
253 void AwRenderViewExt::OnSetTextZoomLevel(double zoom_level) { | 245 void AwRenderViewExt::OnSetTextZoomLevel(double zoom_level) { |
254 if (!render_view() || !render_view()->GetWebView()) | 246 if (!render_view() || !render_view()->GetWebView()) |
255 return; | 247 return; |
256 // Hide selection and autofill popups. | 248 // Hide selection and autofill popups. |
257 render_view()->GetWebView()->hidePopups(); | 249 render_view()->GetWebView()->hidePopups(); |
258 render_view()->GetWebView()->setZoomLevel(true, zoom_level); | 250 render_view()->GetWebView()->setZoomLevel(true, zoom_level); |
259 } | 251 } |
260 | 252 |
261 void AwRenderViewExt::OnResetScrollAndScaleState() { | 253 void AwRenderViewExt::OnResetScrollAndScaleState() { |
262 if (!render_view() || !render_view()->GetWebView()) | 254 if (!render_view() || !render_view()->GetWebView()) |
263 return; | 255 return; |
264 render_view()->GetWebView()->resetScrollAndScaleState(); | 256 render_view()->GetWebView()->resetScrollAndScaleState(); |
265 } | 257 } |
266 | 258 |
267 void AwRenderViewExt::OnSetInitialPageScale(double page_scale_factor) { | 259 void AwRenderViewExt::OnSetInitialPageScale(double page_scale_factor) { |
268 if (!render_view() || !render_view()->GetWebView()) | 260 if (!render_view() || !render_view()->GetWebView()) |
269 return; | 261 return; |
270 render_view()->GetWebView()->setInitialPageScaleOverride( | 262 render_view()->GetWebView()->setInitialPageScaleOverride( |
271 page_scale_factor); | 263 page_scale_factor); |
272 } | 264 } |
273 | 265 |
274 } // namespace android_webview | 266 } // namespace android_webview |
OLD | NEW |