Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(225)

Side by Side Diff: components/web_view/frame_devtools_agent.cc

Issue 1635603002: Make use of CreateInterfacePtrAndBind() where appropriate (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: tweaks Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « components/web_view/frame_apptest.cc ('k') | components/web_view/public/cpp/web_view.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "components/web_view/frame_devtools_agent.h" 5 #include "components/web_view/frame_devtools_agent.h"
6 6
7 #include <string.h> 7 #include <string.h>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 } 54 }
55 55
56 ~FrameDevToolsAgentClient() override {} 56 ~FrameDevToolsAgentClient() override {}
57 57
58 void OnAttachedFrame() { 58 void OnAttachedFrame() {
59 DCHECK(owner_->forward_agent_); 59 DCHECK(owner_->forward_agent_);
60 60
61 if (binding_.is_bound()) 61 if (binding_.is_bound())
62 binding_.Close(); 62 binding_.Close();
63 63
64 DevToolsAgentClientPtr client; 64 owner_->forward_agent_->SetClient(binding_.CreateInterfacePtrAndBind());
65 binding_.Bind(&client);
66 owner_->forward_agent_->SetClient(std::move(client));
67 } 65 }
68 66
69 private: 67 private:
70 // DevToolsAgentClient implementation. 68 // DevToolsAgentClient implementation.
71 void DispatchProtocolMessage(int32_t call_id, 69 void DispatchProtocolMessage(int32_t call_id,
72 const String& message, 70 const String& message,
73 const String& state) override { 71 const String& state) override {
74 DCHECK(forward_client_); 72 DCHECK(forward_client_);
75 owner_->OnReceivedClientMessage(call_id, message, state); 73 owner_->OnReceivedClientMessage(call_id, message, state);
76 // The state is used to persist state across frame navigations. There is no 74 // The state is used to persist state across frame navigations. There is no
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
119 forward_agent_->DispatchProtocolMessage(item.second); 117 forward_agent_->DispatchProtocolMessage(item.second);
120 } 118 }
121 119
122 void FrameDevToolsAgent::RegisterAgentIfNecessary() { 120 void FrameDevToolsAgent::RegisterAgentIfNecessary() {
123 if (binding_.is_bound()) 121 if (binding_.is_bound())
124 return; 122 return;
125 123
126 DevToolsRegistryPtr devtools_registry; 124 DevToolsRegistryPtr devtools_registry;
127 app_->ConnectToService("mojo:devtools_service", &devtools_registry); 125 app_->ConnectToService("mojo:devtools_service", &devtools_registry);
128 126
129 DevToolsAgentPtr agent; 127 devtools_registry->RegisterAgent(id_, binding_.CreateInterfacePtrAndBind());
130 binding_.Bind(&agent);
131 devtools_registry->RegisterAgent(id_, std::move(agent));
132 } 128 }
133 129
134 void FrameDevToolsAgent::HandlePageNavigateRequest( 130 void FrameDevToolsAgent::HandlePageNavigateRequest(
135 const base::DictionaryValue* request) { 131 const base::DictionaryValue* request) {
136 std::string method; 132 std::string method;
137 if (!request->GetString("method", &method) || method != "Page.navigate") 133 if (!request->GetString("method", &method) || method != "Page.navigate")
138 return; 134 return;
139 135
140 std::string url_string; 136 std::string url_string;
141 if (!request->GetString("params.url", &url_string)) 137 if (!request->GetString("params.url", &url_string))
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
191 pending_messages_.erase(call_id); 187 pending_messages_.erase(call_id);
192 } 188 }
193 189
194 void FrameDevToolsAgent::OnForwardClientClosed() { 190 void FrameDevToolsAgent::OnForwardClientClosed() {
195 client_impl_.reset(); 191 client_impl_.reset();
196 state_.clear(); 192 state_.clear();
197 pending_messages_.clear(); 193 pending_messages_.clear();
198 } 194 }
199 195
200 } // namespace web_view 196 } // namespace web_view
OLDNEW
« no previous file with comments | « components/web_view/frame_apptest.cc ('k') | components/web_view/public/cpp/web_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698