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

Side by Side Diff: chrome/browser/devtools/devtools_ui_bindings.cc

Issue 744653002: Ignore DevTools messages from the old inspected RVH after navigation (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Use WebContents instead of RVH when creating DTFH Created 6 years 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "chrome/browser/devtools/devtools_ui_bindings.h" 5 #include "chrome/browser/devtools/devtools_ui_bindings.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/json/json_reader.h" 8 #include "base/json/json_reader.h"
9 #include "base/json/json_writer.h" 9 #include "base/json/json_writer.h"
10 #include "base/strings/string_number_conversions.h" 10 #include "base/strings/string_number_conversions.h"
(...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after
274 break; 274 break;
275 default: 275 default:
276 crashed = false; 276 crashed = false;
277 break; 277 break;
278 } 278 }
279 devtools_bindings_->delegate_->RenderProcessGone(crashed); 279 devtools_bindings_->delegate_->RenderProcessGone(crashed);
280 } 280 }
281 281
282 void DevToolsUIBindings::FrontendWebContentsObserver:: 282 void DevToolsUIBindings::FrontendWebContentsObserver::
283 AboutToNavigateRenderFrame(content::RenderFrameHost* render_frame_host) { 283 AboutToNavigateRenderFrame(content::RenderFrameHost* render_frame_host) {
284 // TODO(creis): Create should be refactored to operate on RenderFrameHosts.
285 devtools_bindings_->frontend_host_.reset( 284 devtools_bindings_->frontend_host_.reset(
286 content::DevToolsFrontendHost::Create( 285 content::DevToolsFrontendHost::Create(devtools_bindings_->web_contents(),
dgozman 2014/11/24 13:32:13 If you create DevToolsFrontendHost for a WebConten
yurys 2014/11/24 14:08:54 It will enable it for main frame only and it needs
287 render_frame_host->GetRenderViewHost(), devtools_bindings_)); 286 devtools_bindings_));
288 } 287 }
289 288
290 void DevToolsUIBindings::FrontendWebContentsObserver:: 289 void DevToolsUIBindings::FrontendWebContentsObserver::
291 DocumentOnLoadCompletedInMainFrame() { 290 DocumentOnLoadCompletedInMainFrame() {
292 devtools_bindings_->DocumentOnLoadCompletedInMainFrame(); 291 devtools_bindings_->DocumentOnLoadCompletedInMainFrame();
293 } 292 }
294 293
295 void DevToolsUIBindings::FrontendWebContentsObserver:: 294 void DevToolsUIBindings::FrontendWebContentsObserver::
296 DidNavigateMainFrame(const content::LoadCommittedDetails& details, 295 DidNavigateMainFrame(const content::LoadCommittedDetails& details,
297 const content::FrameNavigateParams& params) { 296 const content::FrameNavigateParams& params) {
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
362 // Register on-load actions. 361 // Register on-load actions.
363 registrar_.Add( 362 registrar_.Add(
364 this, chrome::NOTIFICATION_BROWSER_THEME_CHANGED, 363 this, chrome::NOTIFICATION_BROWSER_THEME_CHANGED,
365 content::Source<ThemeService>( 364 content::Source<ThemeService>(
366 ThemeServiceFactory::GetForProfile(profile_))); 365 ThemeServiceFactory::GetForProfile(profile_)));
367 366
368 embedder_message_dispatcher_.reset( 367 embedder_message_dispatcher_.reset(
369 DevToolsEmbedderMessageDispatcher::createForDevToolsFrontend(this)); 368 DevToolsEmbedderMessageDispatcher::createForDevToolsFrontend(this));
370 369
371 frontend_host_.reset( 370 frontend_host_.reset(
372 content::DevToolsFrontendHost::Create( 371 content::DevToolsFrontendHost::Create(web_contents_, this));
373 web_contents_->GetRenderViewHost(), this));
374 } 372 }
375 373
376 DevToolsUIBindings::~DevToolsUIBindings() { 374 DevToolsUIBindings::~DevToolsUIBindings() {
377 if (agent_host_.get()) 375 if (agent_host_.get())
378 agent_host_->DetachClient(); 376 agent_host_->DetachClient();
379 377
380 for (IndexingJobsMap::const_iterator jobs_it(indexing_jobs_.begin()); 378 for (IndexingJobsMap::const_iterator jobs_it(indexing_jobs_.begin());
381 jobs_it != indexing_jobs_.end(); ++jobs_it) { 379 jobs_it != indexing_jobs_.end(); ++jobs_it) {
382 jobs_it->second->Stop(); 380 jobs_it->second->Stop();
383 } 381 }
(...skipping 509 matching lines...) Expand 10 before | Expand all | Expand 10 after
893 if (frontend_loaded_) 891 if (frontend_loaded_)
894 return; 892 return;
895 frontend_loaded_ = true; 893 frontend_loaded_ = true;
896 894
897 // Call delegate first - it seeds importants bit of information. 895 // Call delegate first - it seeds importants bit of information.
898 delegate_->OnLoadCompleted(); 896 delegate_->OnLoadCompleted();
899 897
900 UpdateTheme(); 898 UpdateTheme();
901 AddDevToolsExtensionsToClient(); 899 AddDevToolsExtensionsToClient();
902 } 900 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698