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/browser/devtools/render_frame_devtools_agent_host.h" | 5 #include "content/browser/devtools/render_frame_devtools_agent_host.h" |
6 | 6 |
7 #include <tuple> | 7 #include <tuple> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/guid.h" | 10 #include "base/guid.h" |
(...skipping 407 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
418 bool RenderFrameDevToolsAgentHost::IsNetworkHandlerEnabled( | 418 bool RenderFrameDevToolsAgentHost::IsNetworkHandlerEnabled( |
419 FrameTreeNode* frame_tree_node) { | 419 FrameTreeNode* frame_tree_node) { |
420 RenderFrameDevToolsAgentHost* agent_host = GetAgentHostFor(frame_tree_node); | 420 RenderFrameDevToolsAgentHost* agent_host = GetAgentHostFor(frame_tree_node); |
421 if (!agent_host || !agent_host->session()) | 421 if (!agent_host || !agent_host->session()) |
422 return false; | 422 return false; |
423 return protocol::NetworkHandler::FromSession(agent_host->session()) | 423 return protocol::NetworkHandler::FromSession(agent_host->session()) |
424 ->enabled(); | 424 ->enabled(); |
425 } | 425 } |
426 | 426 |
427 // static | 427 // static |
428 std::string RenderFrameDevToolsAgentHost::UserAgentOverride( | 428 void RenderFrameDevToolsAgentHost::ModifyRequestHeadersIfNeeded( |
429 FrameTreeNode* frame_tree_node) { | 429 FrameTreeNode* frame_tree_node, |
| 430 net::HttpRequestHeaders* headers) { |
430 RenderFrameDevToolsAgentHost* agent_host = GetAgentHostFor(frame_tree_node); | 431 RenderFrameDevToolsAgentHost* agent_host = GetAgentHostFor(frame_tree_node); |
431 if (!agent_host || !agent_host->session()) | 432 if (!agent_host || !agent_host->session()) |
432 return std::string(); | 433 return; |
433 return protocol::NetworkHandler::FromSession(agent_host->session()) | 434 protocol::NetworkHandler* network_handler = |
434 ->UserAgentOverride(); | 435 protocol::NetworkHandler::FromSession(agent_host->session()); |
| 436 std::string user_agent_override = network_handler->UserAgentOverride(); |
| 437 if (!user_agent_override.empty()) { |
| 438 headers->SetHeader(net::HttpRequestHeaders::kUserAgent, |
| 439 user_agent_override); |
| 440 } |
| 441 if (network_handler->interception_enabled()) { |
| 442 // Needed by DevToolsURLRequestInterceptor and will be removed by |
| 443 // DevToolsNetworkTransaction::Start before the request is actually sent. |
| 444 headers->SetHeader("X-DevTools-Emulate-Network-Conditions-Client-Id", |
| 445 agent_host->GetId()); |
| 446 } |
435 } | 447 } |
436 | 448 |
437 // static | 449 // static |
438 void RenderFrameDevToolsAgentHost::WebContentsCreated( | 450 void RenderFrameDevToolsAgentHost::WebContentsCreated( |
439 WebContents* web_contents) { | 451 WebContents* web_contents) { |
440 if (ShouldForceCreation()) { | 452 if (ShouldForceCreation()) { |
441 // Force agent host. | 453 // Force agent host. |
442 DevToolsAgentHost::GetOrCreateFor(web_contents); | 454 DevToolsAgentHost::GetOrCreateFor(web_contents); |
443 } | 455 } |
444 } | 456 } |
(...skipping 733 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1178 RenderFrameHost* host) { | 1190 RenderFrameHost* host) { |
1179 return (current_ && current_->host() == host) || | 1191 return (current_ && current_->host() == host) || |
1180 (pending_ && pending_->host() == host); | 1192 (pending_ && pending_->host() == host); |
1181 } | 1193 } |
1182 | 1194 |
1183 bool RenderFrameDevToolsAgentHost::IsChildFrame() { | 1195 bool RenderFrameDevToolsAgentHost::IsChildFrame() { |
1184 return current_ && current_->host()->GetParent(); | 1196 return current_ && current_->host()->GetParent(); |
1185 } | 1197 } |
1186 | 1198 |
1187 } // namespace content | 1199 } // namespace content |
OLD | NEW |