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" |
11 #include "base/lazy_instance.h" | 11 #include "base/lazy_instance.h" |
12 #include "base/strings/utf_string_conversions.h" | 12 #include "base/strings/utf_string_conversions.h" |
13 #include "build/build_config.h" | 13 #include "build/build_config.h" |
14 #include "content/browser/bad_message.h" | 14 #include "content/browser/bad_message.h" |
15 #include "content/browser/child_process_security_policy_impl.h" | 15 #include "content/browser/child_process_security_policy_impl.h" |
16 #include "content/browser/devtools/devtools_frame_trace_recorder.h" | 16 #include "content/browser/devtools/devtools_frame_trace_recorder.h" |
17 #include "content/browser/devtools/devtools_manager.h" | 17 #include "content/browser/devtools/devtools_manager.h" |
18 #include "content/browser/devtools/devtools_protocol_handler.h" | 18 #include "content/browser/devtools/devtools_protocol_handler.h" |
19 #include "content/browser/devtools/page_navigation_throttle.h" | 19 #include "content/browser/devtools/page_navigation_throttle.h" |
20 #include "content/browser/devtools/protocol/browser_handler.h" | |
21 #include "content/browser/devtools/protocol/dom_handler.h" | 20 #include "content/browser/devtools/protocol/dom_handler.h" |
22 #include "content/browser/devtools/protocol/emulation_handler.h" | 21 #include "content/browser/devtools/protocol/emulation_handler.h" |
23 #include "content/browser/devtools/protocol/input_handler.h" | 22 #include "content/browser/devtools/protocol/input_handler.h" |
24 #include "content/browser/devtools/protocol/inspector_handler.h" | 23 #include "content/browser/devtools/protocol/inspector_handler.h" |
25 #include "content/browser/devtools/protocol/io_handler.h" | 24 #include "content/browser/devtools/protocol/io_handler.h" |
26 #include "content/browser/devtools/protocol/network_handler.h" | 25 #include "content/browser/devtools/protocol/network_handler.h" |
27 #include "content/browser/devtools/protocol/page_handler.h" | 26 #include "content/browser/devtools/protocol/page_handler.h" |
28 #include "content/browser/devtools/protocol/schema_handler.h" | 27 #include "content/browser/devtools/protocol/schema_handler.h" |
29 #include "content/browser/devtools/protocol/security_handler.h" | 28 #include "content/browser/devtools/protocol/security_handler.h" |
30 #include "content/browser/devtools/protocol/service_worker_handler.h" | 29 #include "content/browser/devtools/protocol/service_worker_handler.h" |
(...skipping 346 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
377 WebContents* web_contents) { | 376 WebContents* web_contents) { |
378 if (ShouldForceCreation()) { | 377 if (ShouldForceCreation()) { |
379 // Force agent host. | 378 // Force agent host. |
380 DevToolsAgentHost::GetOrCreateFor(web_contents); | 379 DevToolsAgentHost::GetOrCreateFor(web_contents); |
381 } | 380 } |
382 } | 381 } |
383 | 382 |
384 RenderFrameDevToolsAgentHost::RenderFrameDevToolsAgentHost( | 383 RenderFrameDevToolsAgentHost::RenderFrameDevToolsAgentHost( |
385 RenderFrameHostImpl* host) | 384 RenderFrameHostImpl* host) |
386 : DevToolsAgentHostImpl(base::GenerateGUID()), | 385 : DevToolsAgentHostImpl(base::GenerateGUID()), |
387 browser_handler_(new devtools::browser::BrowserHandler()), | |
388 dom_handler_(new devtools::dom::DOMHandler()), | 386 dom_handler_(new devtools::dom::DOMHandler()), |
389 input_handler_(new devtools::input::InputHandler()), | 387 input_handler_(new devtools::input::InputHandler()), |
390 inspector_handler_(new devtools::inspector::InspectorHandler()), | 388 inspector_handler_(new devtools::inspector::InspectorHandler()), |
391 io_handler_(new devtools::io::IOHandler(GetIOContext())), | 389 io_handler_(new devtools::io::IOHandler(GetIOContext())), |
392 network_handler_(new devtools::network::NetworkHandler()), | 390 network_handler_(new devtools::network::NetworkHandler()), |
393 page_handler_(nullptr), | 391 page_handler_(nullptr), |
394 schema_handler_(new devtools::schema::SchemaHandler()), | 392 schema_handler_(new devtools::schema::SchemaHandler()), |
395 security_handler_(nullptr), | 393 security_handler_(nullptr), |
396 service_worker_handler_( | 394 service_worker_handler_( |
397 new devtools::service_worker::ServiceWorkerHandler()), | 395 new devtools::service_worker::ServiceWorkerHandler()), |
398 storage_handler_(new devtools::storage::StorageHandler()), | 396 storage_handler_(new devtools::storage::StorageHandler()), |
399 target_handler_(new devtools::target::TargetHandler()), | 397 target_handler_(new devtools::target::TargetHandler()), |
400 tracing_handler_(new devtools::tracing::TracingHandler( | 398 tracing_handler_(new devtools::tracing::TracingHandler( |
401 devtools::tracing::TracingHandler::Renderer, | 399 devtools::tracing::TracingHandler::Renderer, |
402 host->GetFrameTreeNodeId(), | 400 host->GetFrameTreeNodeId(), |
403 GetIOContext())), | 401 GetIOContext())), |
404 emulation_handler_(nullptr), | 402 emulation_handler_(nullptr), |
405 frame_trace_recorder_(nullptr), | 403 frame_trace_recorder_(nullptr), |
406 protocol_handler_(new DevToolsProtocolHandler(this)), | 404 protocol_handler_(new DevToolsProtocolHandler(this)), |
407 handlers_frame_host_(nullptr), | 405 handlers_frame_host_(nullptr), |
408 current_frame_crashed_(false), | 406 current_frame_crashed_(false), |
409 pending_handle_(nullptr), | 407 pending_handle_(nullptr), |
410 frame_tree_node_(host->frame_tree_node()) { | 408 frame_tree_node_(host->frame_tree_node()) { |
411 DevToolsProtocolDispatcher* dispatcher = protocol_handler_->dispatcher(); | 409 DevToolsProtocolDispatcher* dispatcher = protocol_handler_->dispatcher(); |
412 dispatcher->SetBrowserHandler(browser_handler_.get()); | |
413 dispatcher->SetDOMHandler(dom_handler_.get()); | 410 dispatcher->SetDOMHandler(dom_handler_.get()); |
414 dispatcher->SetInputHandler(input_handler_.get()); | 411 dispatcher->SetInputHandler(input_handler_.get()); |
415 dispatcher->SetInspectorHandler(inspector_handler_.get()); | 412 dispatcher->SetInspectorHandler(inspector_handler_.get()); |
416 dispatcher->SetIOHandler(io_handler_.get()); | 413 dispatcher->SetIOHandler(io_handler_.get()); |
417 dispatcher->SetNetworkHandler(network_handler_.get()); | 414 dispatcher->SetNetworkHandler(network_handler_.get()); |
418 dispatcher->SetSchemaHandler(schema_handler_.get()); | 415 dispatcher->SetSchemaHandler(schema_handler_.get()); |
419 dispatcher->SetServiceWorkerHandler(service_worker_handler_.get()); | 416 dispatcher->SetServiceWorkerHandler(service_worker_handler_.get()); |
420 dispatcher->SetStorageHandler(storage_handler_.get()); | 417 dispatcher->SetStorageHandler(storage_handler_.get()); |
421 dispatcher->SetTargetHandler(target_handler_.get()); | 418 dispatcher->SetTargetHandler(target_handler_.get()); |
422 dispatcher->SetTracingHandler(tracing_handler_.get()); | 419 dispatcher->SetTracingHandler(tracing_handler_.get()); |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
542 return; | 539 return; |
543 | 540 |
544 frame_trace_recorder_.reset(new DevToolsFrameTraceRecorder()); | 541 frame_trace_recorder_.reset(new DevToolsFrameTraceRecorder()); |
545 CreatePowerSaveBlocker(); | 542 CreatePowerSaveBlocker(); |
546 } | 543 } |
547 | 544 |
548 void RenderFrameDevToolsAgentHost::OnClientDetached() { | 545 void RenderFrameDevToolsAgentHost::OnClientDetached() { |
549 #if defined(OS_ANDROID) | 546 #if defined(OS_ANDROID) |
550 power_save_blocker_.reset(); | 547 power_save_blocker_.reset(); |
551 #endif | 548 #endif |
552 browser_handler_->Detached(); | |
553 if (emulation_handler_) | 549 if (emulation_handler_) |
554 emulation_handler_->Detached(); | 550 emulation_handler_->Detached(); |
555 if (page_handler_) | 551 if (page_handler_) |
556 page_handler_->Detached(); | 552 page_handler_->Detached(); |
557 service_worker_handler_->Detached(); | 553 service_worker_handler_->Detached(); |
558 target_handler_->Detached(); | 554 target_handler_->Detached(); |
559 tracing_handler_->Detached(); | 555 tracing_handler_->Detached(); |
560 frame_trace_recorder_.reset(); | 556 frame_trace_recorder_.reset(); |
561 in_navigation_protocol_message_buffer_.clear(); | 557 in_navigation_protocol_message_buffer_.clear(); |
562 } | 558 } |
(...skipping 533 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1096 RenderFrameHost* host) { | 1092 RenderFrameHost* host) { |
1097 return (current_ && current_->host() == host) || | 1093 return (current_ && current_->host() == host) || |
1098 (pending_ && pending_->host() == host); | 1094 (pending_ && pending_->host() == host); |
1099 } | 1095 } |
1100 | 1096 |
1101 bool RenderFrameDevToolsAgentHost::IsChildFrame() { | 1097 bool RenderFrameDevToolsAgentHost::IsChildFrame() { |
1102 return current_ && current_->host()->GetParent(); | 1098 return current_ && current_->host()->GetParent(); |
1103 } | 1099 } |
1104 | 1100 |
1105 } // namespace content | 1101 } // namespace content |
OLD | NEW |