#include "chrome/browser/devtools/protocol/browser_handler.h"
#include <set>
#include <vector>
#include "base/functional/bind.h"
#include "base/memory/ref_counted_memory.h"
#include "chrome/app/chrome_command_ids.h"
#include "chrome/browser/devtools/chrome_devtools_manager_delegate.h"
#include "chrome/browser/devtools/devtools_dock_tile.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/browser/ui/browser_commands.h"
#include "chrome/browser/ui/browser_list.h"
#include "chrome/browser/ui/browser_window.h"
#include "chrome/browser/ui/exclusive_access/exclusive_access_context.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "components/privacy_sandbox/privacy_sandbox_attestations/privacy_sandbox_attestations.h"
#include "content/public/browser/browser_task_traits.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/devtools_agent_host.h"
#include "ui/display/types/display_constants.h"
#include "ui/gfx/image/image.h"
#include "ui/gfx/image/image_png_rep.h"
Maybe;
Response;
namespace {
BrowserWindow* GetBrowserWindow(int window_id) { … }
std::unique_ptr<protocol::Browser::Bounds> GetBrowserWindowBounds(
BrowserWindow* window) { … }
}
BrowserHandler::BrowserHandler(protocol::UberDispatcher* dispatcher,
const std::string& target_id)
: … { … }
BrowserHandler::~BrowserHandler() = default;
Response BrowserHandler::GetWindowForTarget(
protocol::Maybe<std::string> target_id,
int* out_window_id,
std::unique_ptr<protocol::Browser::Bounds>* out_bounds) { … }
Response BrowserHandler::GetWindowBounds(
int window_id,
std::unique_ptr<protocol::Browser::Bounds>* out_bounds) { … }
Response BrowserHandler::Close() { … }
Response BrowserHandler::SetWindowBounds(
int window_id,
std::unique_ptr<protocol::Browser::Bounds> window_bounds) { … }
protocol::Response BrowserHandler::SetDockTile(
protocol::Maybe<std::string> label,
protocol::Maybe<protocol::Binary> image) { … }
protocol::Response BrowserHandler::ExecuteBrowserCommand(
const protocol::Browser::BrowserCommandId& command_id) { … }
protocol::Response BrowserHandler::AddPrivacySandboxEnrollmentOverride(
const std::string& in_url) { … }