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 "content/renderer/render_view_impl.h" | 5 #include "content/renderer/render_view_impl.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <cmath> | 8 #include <cmath> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 3260 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3271 } | 3271 } |
3272 | 3272 |
3273 WebKit::WebReferrerPolicy referrer_policy; | 3273 WebKit::WebReferrerPolicy referrer_policy; |
3274 if (document_state && document_state->is_referrer_policy_set()) { | 3274 if (document_state && document_state->is_referrer_policy_set()) { |
3275 referrer_policy = document_state->referrer_policy(); | 3275 referrer_policy = document_state->referrer_policy(); |
3276 document_state->clear_referrer_policy(); | 3276 document_state->clear_referrer_policy(); |
3277 } else { | 3277 } else { |
3278 referrer_policy = frame->document().referrerPolicy(); | 3278 referrer_policy = frame->document().referrerPolicy(); |
3279 } | 3279 } |
3280 | 3280 |
| 3281 // The request's extra data may indicate that we should set a custom user |
| 3282 // agent. This needs to be done here, after WebKit is through with setting the |
| 3283 // user agent on its own. |
| 3284 WebString custom_user_agent; |
| 3285 if (request.extraData()) { |
| 3286 webkit_glue::WebURLRequestExtraDataImpl* old_extra_data = |
| 3287 static_cast<webkit_glue::WebURLRequestExtraDataImpl*>( |
| 3288 request.extraData()); |
| 3289 custom_user_agent = old_extra_data->custom_user_agent(); |
| 3290 |
| 3291 if (!custom_user_agent.isNull()) { |
| 3292 if (custom_user_agent.isEmpty()) |
| 3293 request.clearHTTPHeaderField("User-Agent"); |
| 3294 else |
| 3295 request.setHTTPHeaderField("User-Agent", custom_user_agent); |
| 3296 } |
| 3297 } |
| 3298 |
3281 request.setExtraData( | 3299 request.setExtraData( |
3282 new RequestExtraData(referrer_policy, | 3300 new RequestExtraData(referrer_policy, |
| 3301 custom_user_agent, |
3283 (frame == top_frame), | 3302 (frame == top_frame), |
3284 frame->identifier(), | 3303 frame->identifier(), |
3285 frame->parent() == top_frame, | 3304 frame->parent() == top_frame, |
3286 frame->parent() ? frame->parent()->identifier() : -1, | 3305 frame->parent() ? frame->parent()->identifier() : -1, |
3287 navigation_state->allow_download(), | 3306 navigation_state->allow_download(), |
3288 transition_type, | 3307 transition_type, |
3289 navigation_state->transferred_request_child_id(), | 3308 navigation_state->transferred_request_child_id(), |
3290 navigation_state->transferred_request_request_id())); | 3309 navigation_state->transferred_request_request_id())); |
3291 | 3310 |
3292 DocumentState* top_document_state = | 3311 DocumentState* top_document_state = |
(...skipping 2357 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5650 bool RenderViewImpl::WebWidgetHandlesCompositorScheduling() const { | 5669 bool RenderViewImpl::WebWidgetHandlesCompositorScheduling() const { |
5651 return !!RenderThreadImpl::current()->compositor_thread(); | 5670 return !!RenderThreadImpl::current()->compositor_thread(); |
5652 } | 5671 } |
5653 | 5672 |
5654 void RenderViewImpl::OnJavaBridgeInit() { | 5673 void RenderViewImpl::OnJavaBridgeInit() { |
5655 DCHECK(!java_bridge_dispatcher_); | 5674 DCHECK(!java_bridge_dispatcher_); |
5656 #if defined(ENABLE_JAVA_BRIDGE) | 5675 #if defined(ENABLE_JAVA_BRIDGE) |
5657 java_bridge_dispatcher_ = new JavaBridgeDispatcher(this); | 5676 java_bridge_dispatcher_ = new JavaBridgeDispatcher(this); |
5658 #endif | 5677 #endif |
5659 } | 5678 } |
OLD | NEW |