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

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

Issue 2757543006: DevTools: remove dead frontend_url param from DevToolsWindow::Create. (Closed)
Patch Set: Created 3 years, 9 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 | « chrome/browser/devtools/devtools_window.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "chrome/browser/devtools/devtools_window.h" 5 #include "chrome/browser/devtools/devtools_window.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/json/json_reader.h" 10 #include "base/json/json_reader.h"
(...skipping 449 matching lines...) Expand 10 before | Expand all | Expand 10 after
460 return; 460 return;
461 window->bindings_->AttachTo(worker_agent); 461 window->bindings_->AttachTo(worker_agent);
462 } 462 }
463 window->ScheduleShow(DevToolsToggleAction::Show()); 463 window->ScheduleShow(DevToolsToggleAction::Show());
464 } 464 }
465 465
466 // static 466 // static
467 DevToolsWindow* DevToolsWindow::CreateDevToolsWindowForWorker( 467 DevToolsWindow* DevToolsWindow::CreateDevToolsWindowForWorker(
468 Profile* profile) { 468 Profile* profile) {
469 content::RecordAction(base::UserMetricsAction("DevTools_InspectWorker")); 469 content::RecordAction(base::UserMetricsAction("DevTools_InspectWorker"));
470 return Create(profile, GURL(), NULL, true, false, false, std::string(), 470 return Create(profile, NULL, true, false, false, std::string(), false, "",
471 false, "", ""); 471 "");
472 } 472 }
473 473
474 // static 474 // static
475 void DevToolsWindow::OpenDevToolsWindow( 475 void DevToolsWindow::OpenDevToolsWindow(
476 content::WebContents* inspected_web_contents) { 476 content::WebContents* inspected_web_contents) {
477 ToggleDevToolsWindow( 477 ToggleDevToolsWindow(
478 inspected_web_contents, true, DevToolsToggleAction::Show(), ""); 478 inspected_web_contents, true, DevToolsToggleAction::Show(), "");
479 } 479 }
480 480
481 // static 481 // static
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
520 const DevToolsToggleAction& action) { 520 const DevToolsToggleAction& action) {
521 ToggleDevToolsWindow(inspected_web_contents, true, action, ""); 521 ToggleDevToolsWindow(inspected_web_contents, true, action, "");
522 } 522 }
523 523
524 // static 524 // static
525 void DevToolsWindow::OpenDevToolsWindowForFrame( 525 void DevToolsWindow::OpenDevToolsWindowForFrame(
526 Profile* profile, 526 Profile* profile,
527 const scoped_refptr<content::DevToolsAgentHost>& agent_host) { 527 const scoped_refptr<content::DevToolsAgentHost>& agent_host) {
528 DevToolsWindow* window = FindDevToolsWindow(agent_host.get()); 528 DevToolsWindow* window = FindDevToolsWindow(agent_host.get());
529 if (!window) { 529 if (!window) {
530 window = DevToolsWindow::Create(profile, GURL(), nullptr, false, false, 530 window = DevToolsWindow::Create(profile, nullptr, false, false, false,
531 false, std::string(), false, std::string(), 531 std::string(), false, std::string(),
532 std::string()); 532 std::string());
533 if (!window) 533 if (!window)
534 return; 534 return;
535 window->bindings_->AttachTo(agent_host); 535 window->bindings_->AttachTo(agent_host);
536 } 536 }
537 window->ScheduleShow(DevToolsToggleAction::Show()); 537 window->ScheduleShow(DevToolsToggleAction::Show());
538 } 538 }
539 539
540 // static 540 // static
541 void DevToolsWindow::ToggleDevToolsWindow( 541 void DevToolsWindow::ToggleDevToolsWindow(
(...skipping 13 matching lines...) Expand all
555 555
556 // static 556 // static
557 void DevToolsWindow::OpenExternalFrontend( 557 void DevToolsWindow::OpenExternalFrontend(
558 Profile* profile, 558 Profile* profile,
559 const std::string& frontend_url, 559 const std::string& frontend_url,
560 const scoped_refptr<content::DevToolsAgentHost>& agent_host, 560 const scoped_refptr<content::DevToolsAgentHost>& agent_host,
561 bool is_worker, 561 bool is_worker,
562 bool is_v8_only) { 562 bool is_v8_only) {
563 DevToolsWindow* window = FindDevToolsWindow(agent_host.get()); 563 DevToolsWindow* window = FindDevToolsWindow(agent_host.get());
564 if (!window) { 564 if (!window) {
565 window = Create(profile, GURL(), nullptr, is_worker, is_v8_only, false, 565 window = Create(profile, nullptr, is_worker, is_v8_only, false,
566 DevToolsUI::GetProxyURL(frontend_url).spec(), false, 566 DevToolsUI::GetProxyURL(frontend_url).spec(), false,
567 std::string(), std::string()); 567 std::string(), std::string());
568 if (!window) 568 if (!window)
569 return; 569 return;
570 window->bindings_->AttachTo(agent_host); 570 window->bindings_->AttachTo(agent_host);
571 window->close_on_detach_ = false; 571 window->close_on_detach_ = false;
572 } 572 }
573 573
574 window->ScheduleShow(DevToolsToggleAction::Show()); 574 window->ScheduleShow(DevToolsToggleAction::Show());
575 } 575 }
576 576
577 // static 577 // static
578 void DevToolsWindow::OpenNodeFrontendWindow(Profile* profile) { 578 void DevToolsWindow::OpenNodeFrontendWindow(Profile* profile) {
579 DevToolsWindow* window = Create(profile, GURL(), nullptr, false, true, true, 579 DevToolsWindow* window =
580 std::string(), false, std::string(), 580 Create(profile, nullptr, false, true, true, std::string(), false,
581 std::string()); 581 std::string(), std::string());
582 if (!window) 582 if (!window)
583 return; 583 return;
584 window->bindings_->AttachTo(DevToolsAgentHost::CreateForDiscovery()); 584 window->bindings_->AttachTo(DevToolsAgentHost::CreateForDiscovery());
585 window->ScheduleShow(DevToolsToggleAction::Show()); 585 window->ScheduleShow(DevToolsToggleAction::Show());
586 } 586 }
587 587
588 // static 588 // static
589 void DevToolsWindow::ToggleDevToolsWindow( 589 void DevToolsWindow::ToggleDevToolsWindow(
590 content::WebContents* inspected_web_contents, 590 content::WebContents* inspected_web_contents,
591 bool force_open, 591 bool force_open,
(...skipping 16 matching lines...) Expand all
608 break; 608 break;
609 case DevToolsToggleAction::kShowConsolePanel: 609 case DevToolsToggleAction::kShowConsolePanel:
610 panel = "console"; 610 panel = "console";
611 break; 611 break;
612 case DevToolsToggleAction::kShow: 612 case DevToolsToggleAction::kShow:
613 case DevToolsToggleAction::kToggle: 613 case DevToolsToggleAction::kToggle:
614 case DevToolsToggleAction::kReveal: 614 case DevToolsToggleAction::kReveal:
615 case DevToolsToggleAction::kNoOp: 615 case DevToolsToggleAction::kNoOp:
616 break; 616 break;
617 } 617 }
618 window = Create(profile, GURL(), inspected_web_contents, false, false, 618 window = Create(profile, inspected_web_contents, false, false, false,
619 false, std::string(), true, settings, panel); 619 std::string(), true, settings, panel);
620 if (!window) 620 if (!window)
621 return; 621 return;
622 window->bindings_->AttachTo(agent.get()); 622 window->bindings_->AttachTo(agent.get());
623 do_open = true; 623 do_open = true;
624 } 624 }
625 625
626 // Update toolbar to reflect DevTools changes. 626 // Update toolbar to reflect DevTools changes.
627 window->UpdateBrowserToolbar(); 627 window->UpdateBrowserToolbar();
628 628
629 // If window is docked and visible, we hide it on toggle. If window is 629 // If window is docked and visible, we hide it on toggle. If window is
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
860 860
861 std::vector<base::Callback<void(DevToolsWindow*)>> copy( 861 std::vector<base::Callback<void(DevToolsWindow*)>> copy(
862 g_creation_callbacks.Get()); 862 g_creation_callbacks.Get());
863 for (const auto& callback : copy) 863 for (const auto& callback : copy)
864 callback.Run(this); 864 callback.Run(this);
865 } 865 }
866 866
867 // static 867 // static
868 DevToolsWindow* DevToolsWindow::Create( 868 DevToolsWindow* DevToolsWindow::Create(
869 Profile* profile, 869 Profile* profile,
870 const GURL& frontend_url,
871 content::WebContents* inspected_web_contents, 870 content::WebContents* inspected_web_contents,
872 bool shared_worker_frontend, 871 bool shared_worker_frontend,
873 bool v8_only_frontend, 872 bool v8_only_frontend,
874 bool node_frontend, 873 bool node_frontend,
875 const std::string& remote_frontend, 874 const std::string& remote_frontend,
876 bool can_dock, 875 bool can_dock,
877 const std::string& settings, 876 const std::string& settings,
878 const std::string& panel) { 877 const std::string& panel) {
879 if (profile->GetPrefs()->GetBoolean(prefs::kDevToolsDisabled) || 878 if (profile->GetPrefs()->GetBoolean(prefs::kDevToolsDisabled) ||
880 base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kKioskMode)) 879 base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kKioskMode))
881 return nullptr; 880 return nullptr;
882 881
883 if (inspected_web_contents) { 882 if (inspected_web_contents) {
884 // Check for a place to dock. 883 // Check for a place to dock.
885 Browser* browser = NULL; 884 Browser* browser = NULL;
886 int tab; 885 int tab;
887 if (!FindInspectedBrowserAndTabIndex(inspected_web_contents, 886 if (!FindInspectedBrowserAndTabIndex(inspected_web_contents,
888 &browser, &tab) || 887 &browser, &tab) ||
889 browser->is_type_popup()) { 888 browser->is_type_popup()) {
890 can_dock = false; 889 can_dock = false;
891 } 890 }
892 } 891 }
893 892
894 // Create WebContents with devtools. 893 // Create WebContents with devtools.
895 GURL url(GetDevToolsURL(profile, frontend_url, shared_worker_frontend, 894 GURL url(GetDevToolsURL(profile, shared_worker_frontend, v8_only_frontend,
896 v8_only_frontend, node_frontend, remote_frontend, can_dock, panel)); 895 node_frontend, remote_frontend, can_dock, panel));
897 std::unique_ptr<WebContents> main_web_contents( 896 std::unique_ptr<WebContents> main_web_contents(
898 WebContents::Create(WebContents::CreateParams(profile))); 897 WebContents::Create(WebContents::CreateParams(profile)));
899 main_web_contents->GetController().LoadURL( 898 main_web_contents->GetController().LoadURL(
900 DecorateFrontendURL(url), content::Referrer(), 899 DecorateFrontendURL(url), content::Referrer(),
901 ui::PAGE_TRANSITION_AUTO_TOPLEVEL, std::string()); 900 ui::PAGE_TRANSITION_AUTO_TOPLEVEL, std::string());
902 DevToolsUIBindings* bindings = 901 DevToolsUIBindings* bindings =
903 DevToolsUIBindings::ForWebContents(main_web_contents.get()); 902 DevToolsUIBindings::ForWebContents(main_web_contents.get());
904 if (!bindings) 903 if (!bindings)
905 return nullptr; 904 return nullptr;
906 if (!settings.empty()) 905 if (!settings.empty())
907 SetPreferencesFromJson(profile, settings); 906 SetPreferencesFromJson(profile, settings);
908 return new DevToolsWindow(profile, main_web_contents.release(), bindings, 907 return new DevToolsWindow(profile, main_web_contents.release(), bindings,
909 inspected_web_contents, can_dock); 908 inspected_web_contents, can_dock);
910 } 909 }
911 910
912 // static 911 // static
913 GURL DevToolsWindow::GetDevToolsURL(Profile* profile, 912 GURL DevToolsWindow::GetDevToolsURL(Profile* profile,
914 const GURL& base_url,
915 bool shared_worker_frontend, 913 bool shared_worker_frontend,
916 bool v8_only_frontend, 914 bool v8_only_frontend,
917 bool node_frontend, 915 bool node_frontend,
918 const std::string& remote_frontend, 916 const std::string& remote_frontend,
919 bool can_dock, 917 bool can_dock,
920 const std::string& panel) { 918 const std::string& panel) {
921 // Compatibility errors are encoded with data urls, pass them 919 std::string frontend_url(!remote_frontend.empty()
922 // through with no decoration. 920 ? remote_frontend
923 if (base_url.SchemeIs("data")) 921 : chrome::kChromeUIDevToolsURL);
924 return base_url;
925
926 std::string frontend_url(
927 !remote_frontend.empty() ?
928 remote_frontend :
929 base_url.is_empty() ? chrome::kChromeUIDevToolsURL : base_url.spec());
930 std::string url_string( 922 std::string url_string(
931 frontend_url + 923 frontend_url +
932 ((frontend_url.find("?") == std::string::npos) ? "?" : "&")); 924 ((frontend_url.find("?") == std::string::npos) ? "?" : "&"));
933 if (shared_worker_frontend) 925 if (shared_worker_frontend)
934 url_string += "&isSharedWorker=true"; 926 url_string += "&isSharedWorker=true";
935 if (v8_only_frontend) 927 if (v8_only_frontend)
936 url_string += "&v8only=true"; 928 url_string += "&v8only=true";
937 if (node_frontend) 929 if (node_frontend)
938 url_string += "&nodeFrontend=true"; 930 url_string += "&nodeFrontend=true";
939 if (remote_frontend.size()) { 931 if (remote_frontend.size()) {
(...skipping 469 matching lines...) Expand 10 before | Expand all | Expand 10 after
1409 bool DevToolsWindow::ReloadInspectedWebContents(bool bypass_cache) { 1401 bool DevToolsWindow::ReloadInspectedWebContents(bool bypass_cache) {
1410 // Only route reload via front-end if the agent is attached. 1402 // Only route reload via front-end if the agent is attached.
1411 WebContents* wc = GetInspectedWebContents(); 1403 WebContents* wc = GetInspectedWebContents();
1412 if (!wc || wc->GetCrashedStatus() != base::TERMINATION_STATUS_STILL_RUNNING) 1404 if (!wc || wc->GetCrashedStatus() != base::TERMINATION_STATUS_STILL_RUNNING)
1413 return false; 1405 return false;
1414 base::Value bypass_cache_value(bypass_cache); 1406 base::Value bypass_cache_value(bypass_cache);
1415 bindings_->CallClientFunction("DevToolsAPI.reloadInspectedPage", 1407 bindings_->CallClientFunction("DevToolsAPI.reloadInspectedPage",
1416 &bypass_cache_value, nullptr, nullptr); 1408 &bypass_cache_value, nullptr, nullptr);
1417 return true; 1409 return true;
1418 } 1410 }
OLDNEW
« no previous file with comments | « chrome/browser/devtools/devtools_window.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698