#include "chrome/browser/web_applications/os_integration/web_app_protocol_handler_manager.h"
#include "base/containers/contains.h"
#include "chrome/browser/custom_handlers/protocol_handler_registry_factory.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/web_applications/os_integration/web_app_protocol_handler_registration.h"
#include "chrome/browser/web_applications/proto/web_app_install_state.pb.h"
#include "chrome/browser/web_applications/web_app.h"
#include "chrome/browser/web_applications/web_app_provider.h"
#include "chrome/browser/web_applications/web_app_registrar.h"
#include "third_party/blink/public/common/security/protocol_handler_security_level.h"
ProtocolHandler;
namespace web_app {
WebAppProtocolHandlerManager::WebAppProtocolHandlerManager(Profile* profile)
: … { … }
WebAppProtocolHandlerManager::~WebAppProtocolHandlerManager() = default;
void WebAppProtocolHandlerManager::SetProvider(
base::PassKey<OsIntegrationManager>,
WebAppProvider& provider) { … }
void WebAppProtocolHandlerManager::Start() { … }
std::optional<GURL> WebAppProtocolHandlerManager::TranslateProtocolUrl(
const webapps::AppId& app_id,
const GURL& protocol_url) const { … }
std::vector<apps::ProtocolHandlerInfo>
WebAppProtocolHandlerManager::GetAppProtocolHandlerInfos(
const std::string& app_id) const { … }
std::vector<ProtocolHandler>
WebAppProtocolHandlerManager::GetAppProtocolHandlers(
const webapps::AppId& app_id) const { … }
std::vector<ProtocolHandler>
WebAppProtocolHandlerManager::GetAllowedHandlersForProtocol(
const std::string& protocol) const { … }
std::vector<ProtocolHandler>
WebAppProtocolHandlerManager::GetDisallowedHandlersForProtocol(
const std::string& protocol) const { … }
}