Chromium Code Reviews| 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/web_contents/web_contents_impl.h" | 5 #include "content/browser/web_contents/web_contents_impl.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <cmath> | 9 #include <cmath> |
| 10 #include <utility> | 10 #include <utility> |
| (...skipping 656 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 667 | 667 |
| 668 bool WebContentsImpl::OnMessageReceived(RenderViewHost* render_view_host, | 668 bool WebContentsImpl::OnMessageReceived(RenderViewHost* render_view_host, |
| 669 const IPC::Message& message) { | 669 const IPC::Message& message) { |
| 670 return OnMessageReceived(render_view_host, NULL, message); | 670 return OnMessageReceived(render_view_host, NULL, message); |
| 671 } | 671 } |
| 672 | 672 |
| 673 bool WebContentsImpl::OnMessageReceived(RenderViewHost* render_view_host, | 673 bool WebContentsImpl::OnMessageReceived(RenderViewHost* render_view_host, |
| 674 RenderFrameHost* render_frame_host, | 674 RenderFrameHost* render_frame_host, |
| 675 const IPC::Message& message) { | 675 const IPC::Message& message) { |
| 676 DCHECK(render_view_host || render_frame_host); | 676 DCHECK(render_view_host || render_frame_host); |
| 677 if (GetWebUI() && | 677 |
| 678 static_cast<WebUIImpl*>(GetWebUI())->OnMessageReceived(message)) { | 678 if (render_view_host) { |
| 679 return true; | 679 RenderFrameHost* main_frame = render_view_host->GetMainFrame(); |
| 680 if (main_frame) { | |
|
jam
2016/12/08 17:43:53
nit: are you sure you need this check?
yzshen1
2016/12/08 17:46:19
Yes, there are cases where render_view_host->GetMa
| |
| 681 WebUIImpl* web_ui = | |
| 682 static_cast<RenderFrameHostImpl*>(main_frame)->web_ui(); | |
| 683 if (web_ui && web_ui->OnMessageReceived(message)) | |
| 684 return true; | |
| 685 } | |
| 680 } | 686 } |
| 681 | 687 |
| 682 if (render_frame_host) { | 688 if (render_frame_host) { |
| 683 for (auto& observer : observers_) { | 689 for (auto& observer : observers_) { |
| 684 if (observer.OnMessageReceived(message, render_frame_host)) | 690 if (observer.OnMessageReceived(message, render_frame_host)) |
| 685 return true; | 691 return true; |
| 686 } | 692 } |
| 687 } else { | 693 } else { |
| 688 for (auto& observer : observers_) { | 694 for (auto& observer : observers_) { |
| 689 if (observer.OnMessageReceived(message)) | 695 if (observer.OnMessageReceived(message)) |
| (...skipping 4586 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 5276 dialog_manager_ = dialog_manager; | 5282 dialog_manager_ = dialog_manager; |
| 5277 } | 5283 } |
| 5278 | 5284 |
| 5279 void WebContentsImpl::RemoveBindingSet(const std::string& interface_name) { | 5285 void WebContentsImpl::RemoveBindingSet(const std::string& interface_name) { |
| 5280 auto it = binding_sets_.find(interface_name); | 5286 auto it = binding_sets_.find(interface_name); |
| 5281 if (it != binding_sets_.end()) | 5287 if (it != binding_sets_.end()) |
| 5282 binding_sets_.erase(it); | 5288 binding_sets_.erase(it); |
| 5283 } | 5289 } |
| 5284 | 5290 |
| 5285 } // namespace content | 5291 } // namespace content |
| OLD | NEW |