Files
brave-core/renderer/brave_content_renderer_client.h
T

69 lines
2.6 KiB
C++

/* Copyright (c) 2019 The Brave Authors. All rights reserved.
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef BRAVE_RENDERER_BRAVE_CONTENT_RENDERER_CLIENT_H_
#define BRAVE_RENDERER_BRAVE_CONTENT_RENDERER_CLIENT_H_
#include <memory>
#include "brave/components/brave_search/renderer/brave_search_service_worker_holder.h"
#include "brave/components/brave_wallet/common/buildflags/buildflags.h"
#include "chrome/renderer/chrome_content_renderer_client.h"
#include "v8/include/v8.h"
class BraveRenderThreadObserver;
class GURL;
namespace blink {
class WebServiceWorkerContextProxy;
}
class BraveContentRendererClient : public ChromeContentRendererClient {
public:
BraveContentRendererClient();
BraveContentRendererClient(const BraveContentRendererClient&) = delete;
BraveContentRendererClient& operator=(const BraveContentRendererClient&) =
delete;
~BraveContentRendererClient() override;
void RenderThreadStarted() override;
void SetRuntimeFeaturesDefaultsBeforeBlinkInitialization() override;
void RenderFrameCreated(content::RenderFrame* render_frame) override;
std::unique_ptr<media::KeySystemSupportRegistration> GetSupportedKeySystems(
content::RenderFrame* render_frame,
media::GetSupportedKeySystemsCB cb) override;
void RunScriptsAtDocumentStart(content::RenderFrame* render_frame) override;
void RunScriptsAtDocumentEnd(content::RenderFrame* render_frame) override;
void WillEvaluateServiceWorkerOnWorkerThread(
blink::WebServiceWorkerContextProxy* context_proxy,
v8::Local<v8::Context> v8_context,
int64_t service_worker_version_id,
const GURL& service_worker_scope,
const GURL& script_url,
const blink::ServiceWorkerToken& service_worker_token) override;
void WillDestroyServiceWorkerContextOnWorkerThread(
v8::Local<v8::Context> v8_context,
int64_t service_worker_version_id,
const GURL& service_worker_scope,
const GURL& script_url,
const blink::ServiceWorkerToken& service_worker_token) override;
std::unique_ptr<blink::URLLoaderThrottleProvider>
CreateURLLoaderThrottleProvider(
blink::URLLoaderThrottleProviderType provider_type) override;
bool IsOnionAllowed() const;
#if BUILDFLAG(ENABLE_BRAVE_WALLET)
bool IsBraveWalletAvailable() const;
#endif
private:
std::unique_ptr<BraveRenderThreadObserver> brave_observer_;
brave_search::BraveSearchServiceWorkerHolder
brave_search_service_worker_holder_;
};
#endif // BRAVE_RENDERER_BRAVE_CONTENT_RENDERER_CLIENT_H_