69 lines
2.6 KiB
C++
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_
|