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

Side by Side Diff: content/browser/debugger/devtools_window.cc

Issue 7309011: Remove dependencies on extensions from content/browser/debugger. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge to head. Created 9 years, 5 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 <algorithm> 5 #include <algorithm>
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/json/json_writer.h" 8 #include "base/json/json_writer.h"
9 #include "base/stringprintf.h" 9 #include "base/stringprintf.h"
10 #include "base/string_number_conversions.h" 10 #include "base/string_number_conversions.h"
11 #include "base/utf_string_conversions.h" 11 #include "base/utf_string_conversions.h"
12 #include "base/values.h" 12 #include "base/values.h"
13 #include "chrome/browser/browser_process.h" 13 #include "chrome/browser/browser_process.h"
14 #include "chrome/browser/extensions/extension_service.h"
15 #include "chrome/browser/prefs/pref_service.h" 14 #include "chrome/browser/prefs/pref_service.h"
16 #include "chrome/browser/prefs/scoped_user_pref_update.h" 15 #include "chrome/browser/prefs/scoped_user_pref_update.h"
17 #include "chrome/browser/profiles/profile.h" 16 #include "chrome/browser/profiles/profile.h"
18 #include "chrome/browser/sessions/restore_tab_helper.h" 17 #include "chrome/browser/sessions/restore_tab_helper.h"
19 #include "chrome/browser/tabs/tab_strip_model.h" 18 #include "chrome/browser/tabs/tab_strip_model.h"
20 #include "chrome/browser/themes/theme_service.h" 19 #include "chrome/browser/themes/theme_service.h"
21 #include "chrome/browser/themes/theme_service_factory.h" 20 #include "chrome/browser/themes/theme_service_factory.h"
22 #include "chrome/browser/ui/browser.h" 21 #include "chrome/browser/ui/browser.h"
23 #include "chrome/browser/ui/browser_list.h" 22 #include "chrome/browser/ui/browser_list.h"
24 #include "chrome/browser/ui/browser_window.h" 23 #include "chrome/browser/ui/browser_window.h"
25 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" 24 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h"
26 #include "chrome/common/pref_names.h" 25 #include "chrome/common/pref_names.h"
27 #include "chrome/common/render_messages.h" 26 #include "chrome/common/render_messages.h"
28 #include "chrome/common/url_constants.h" 27 #include "chrome/common/url_constants.h"
29 #include "content/browser/browsing_instance.h" 28 #include "content/browser/browsing_instance.h"
29 #include "content/browser/content_browser_client.h"
30 #include "content/browser/debugger/devtools_manager.h" 30 #include "content/browser/debugger/devtools_manager.h"
31 #include "content/browser/debugger/devtools_window.h" 31 #include "content/browser/debugger/devtools_window.h"
32 #include "content/browser/in_process_webkit/session_storage_namespace.h" 32 #include "content/browser/in_process_webkit/session_storage_namespace.h"
33 #include "content/browser/load_notification_details.h" 33 #include "content/browser/load_notification_details.h"
34 #include "content/browser/renderer_host/render_view_host.h" 34 #include "content/browser/renderer_host/render_view_host.h"
35 #include "content/browser/tab_contents/navigation_controller.h" 35 #include "content/browser/tab_contents/navigation_controller.h"
36 #include "content/browser/tab_contents/navigation_entry.h" 36 #include "content/browser/tab_contents/navigation_entry.h"
37 #include "content/browser/tab_contents/tab_contents.h" 37 #include "content/browser/tab_contents/tab_contents.h"
38 #include "content/browser/tab_contents/tab_contents_view.h" 38 #include "content/browser/tab_contents/tab_contents_view.h"
39 #include "content/common/bindings_policy.h" 39 #include "content/common/bindings_policy.h"
40 #include "content/common/content_client.h"
40 #include "content/common/notification_service.h" 41 #include "content/common/notification_service.h"
41 #include "grit/generated_resources.h" 42 #include "grit/generated_resources.h"
42 43
43 const char DevToolsWindow::kDevToolsApp[] = "DevToolsApp"; 44 const char DevToolsWindow::kDevToolsApp[] = "DevToolsApp";
44 45
45 DevToolsWindow::DevToolsWindowList DevToolsWindow::instances_; 46 DevToolsWindow::DevToolsWindowList DevToolsWindow::instances_;
46 47
47 // static 48 // static
48 TabContentsWrapper* DevToolsWindow::GetDevToolsContents( 49 TabContentsWrapper* DevToolsWindow::GetDevToolsContents(
49 TabContents* inspected_tab) { 50 TabContents* inspected_tab) {
(...skipping 296 matching lines...) Expand 10 before | Expand all | Expand 10 after
346 } 347 }
347 348
348 349
349 void DevToolsWindow::AddDevToolsExtensionsToClient() { 350 void DevToolsWindow::AddDevToolsExtensionsToClient() {
350 if (inspected_tab_) { 351 if (inspected_tab_) {
351 FundamentalValue tabId( 352 FundamentalValue tabId(
352 inspected_tab_->restore_tab_helper()->session_id().id()); 353 inspected_tab_->restore_tab_helper()->session_id().id());
353 CallClientFunction(ASCIIToUTF16("WebInspector.setInspectedTabId"), tabId); 354 CallClientFunction(ASCIIToUTF16("WebInspector.setInspectedTabId"), tabId);
354 } 355 }
355 ListValue results; 356 ListValue results;
356 const ExtensionService* extension_service = 357 content::GetContentClient()->browser()->GetAdditionalStartPagesForDevTools(
357 tab_contents_->tab_contents()->profile()-> 358 tab_contents_->tab_contents(), &results);
358 GetOriginalProfile()->GetExtensionService();
359 if (!extension_service)
360 return;
361
362 const ExtensionList* extensions = extension_service->extensions();
363
364 for (ExtensionList::const_iterator extension = extensions->begin();
365 extension != extensions->end(); ++extension) {
366 if ((*extension)->devtools_url().is_empty())
367 continue;
368 DictionaryValue* extension_info = new DictionaryValue();
369 extension_info->Set("startPage",
370 new StringValue((*extension)->devtools_url().spec()));
371 results.Append(extension_info);
372 }
373 CallClientFunction(ASCIIToUTF16("WebInspector.addExtensions"), results); 359 CallClientFunction(ASCIIToUTF16("WebInspector.addExtensions"), results);
374 } 360 }
375 361
376 void DevToolsWindow::OpenURLFromTab(TabContents* source, 362 void DevToolsWindow::OpenURLFromTab(TabContents* source,
377 const GURL& url, 363 const GURL& url,
378 const GURL& referrer, 364 const GURL& referrer,
379 WindowOpenDisposition disposition, 365 WindowOpenDisposition disposition,
380 PageTransition::Type transition) { 366 PageTransition::Type transition) {
381 if (inspected_tab_) { 367 if (inspected_tab_) {
382 inspected_tab_->tab_contents()->OpenURL( 368 inspected_tab_->tab_contents()->OpenURL(
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after
561 DevToolsClientHost* client_host) { 547 DevToolsClientHost* client_host) {
562 if (!client_host) 548 if (!client_host)
563 return NULL; 549 return NULL;
564 DevToolsWindowList::iterator it = std::find(instances_.begin(), 550 DevToolsWindowList::iterator it = std::find(instances_.begin(),
565 instances_.end(), 551 instances_.end(),
566 client_host); 552 client_host);
567 if (it == instances_.end()) 553 if (it == instances_.end())
568 return NULL; 554 return NULL;
569 return *it; 555 return *it;
570 } 556 }
OLDNEW
« no previous file with comments | « content/browser/debugger/devtools_sanity_unittest.cc ('k') | content/browser/debugger/extension_ports_remote_service.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698