blob: 7fe1d197ba122e3c4849a88209834bc0a312aef5 [file] [log] [blame]
// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "ui/webui/examples/browser/devtools/devtools_manager_delegate.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/devtools_agent_host.h"
namespace webui_examples {
DevToolsManagerDelegate::DevToolsManagerDelegate(
content::BrowserContext* browser_context,
CreateContentWindowFunc create_content_window_func)
: browser_context_(browser_context),
create_content_window_func_(std::move(create_content_window_func)) {}
DevToolsManagerDelegate::~DevToolsManagerDelegate() = default;
content::BrowserContext* DevToolsManagerDelegate::GetDefaultBrowserContext() {
return browser_context_;
}
scoped_refptr<content::DevToolsAgentHost>
DevToolsManagerDelegate::CreateNewTarget(
const GURL& url,
content::DevToolsManagerDelegate::TargetType target_type,
bool new_window) {
content::WebContents* web_content =
create_content_window_func_.Run(browser_context_.get(), url);
return target_type == content::DevToolsManagerDelegate::kTab
? content::DevToolsAgentHost::GetOrCreateForTab(web_content)
: content::DevToolsAgentHost::GetOrCreateFor(web_content);
}
std::string DevToolsManagerDelegate::GetDiscoveryPageHTML() {
return std::string();
}
bool DevToolsManagerDelegate::HasBundledFrontendResources() {
return true;
}
} // namespace webui_examples