blob: ecf20efd39fe07724a6326f96203840048e9b80b [file] [log] [blame]
// content/common/renderer.mojom.cc is auto generated by mojom_bindings_generator.py, do not edit
// Copyright 2013 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "content/common/renderer.mojom.h"
#include <math.h>
#include <stdint.h>
#include <utility>
#include "base/debug/alias.h"
#include "base/run_loop.h"
#include "base/strings/string_number_conversions.h"
#include "base/task/thread_pool/thread_pool_instance.h"
#include "base/trace_event/trace_event.h"
#include "base/trace_event/typed_macros.h"
#include "base/types/cxx23_to_underlying.h"
#include "mojo/public/cpp/bindings/lib/default_construct_tag_internal.h"
#include "mojo/public/cpp/bindings/lib/generated_code_util.h"
#include "mojo/public/cpp/bindings/lib/message_internal.h"
#include "mojo/public/cpp/bindings/lib/proxy_to_responder.h"
#include "mojo/public/cpp/bindings/lib/send_message_helper.h"
#include "mojo/public/cpp/bindings/lib/serialization.h"
#include "mojo/public/cpp/bindings/lib/serialization_util.h"
#include "mojo/public/cpp/bindings/lib/unserialized_message_context.h"
#include "mojo/public/cpp/bindings/lib/validate_params.h"
#include "mojo/public/cpp/bindings/lib/validation_errors.h"
#include "mojo/public/cpp/bindings/mojo_buildflags.h"
#include "mojo/public/cpp/bindings/urgent_message_scope.h"
#include "mojo/public/interfaces/bindings/interface_control_messages.mojom.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value.h"
#include "content/common/renderer.mojom-params-data.h"
#include "content/common/renderer.mojom-shared-message-ids.h"
#include "content/common/renderer.mojom-import-headers.h"
#include "content/common/renderer.mojom-test-utils.h"
#include "content/common/content_param_traits_macros.h"
#include "content/public/common/common_param_traits.h"
#include "services/network/public/cpp/p2p_param_traits.h"
namespace content::mojom {
UpdateScrollbarThemeParams::UpdateScrollbarThemeParams()
: has_initial_button_delay(),
initial_button_delay(),
has_autoscroll_button_delay(),
autoscroll_button_delay(),
jump_on_track_click(),
preferred_scroller_style(),
redraw(),
scroll_view_rubber_banding() {}
UpdateScrollbarThemeParams::UpdateScrollbarThemeParams(
bool has_initial_button_delay_in,
float initial_button_delay_in,
bool has_autoscroll_button_delay_in,
float autoscroll_button_delay_in,
bool jump_on_track_click_in,
::content::mojom::ScrollerStyle preferred_scroller_style_in,
bool redraw_in,
bool scroll_view_rubber_banding_in)
: has_initial_button_delay(std::move(has_initial_button_delay_in)),
initial_button_delay(std::move(initial_button_delay_in)),
has_autoscroll_button_delay(std::move(has_autoscroll_button_delay_in)),
autoscroll_button_delay(std::move(autoscroll_button_delay_in)),
jump_on_track_click(std::move(jump_on_track_click_in)),
preferred_scroller_style(std::move(preferred_scroller_style_in)),
redraw(std::move(redraw_in)),
scroll_view_rubber_banding(std::move(scroll_view_rubber_banding_in)) {}
UpdateScrollbarThemeParams::~UpdateScrollbarThemeParams() = default;
size_t UpdateScrollbarThemeParams::Hash(size_t seed) const {
seed = mojo::internal::Hash(seed, this->has_initial_button_delay);
seed = mojo::internal::Hash(seed, this->initial_button_delay);
seed = mojo::internal::Hash(seed, this->has_autoscroll_button_delay);
seed = mojo::internal::Hash(seed, this->autoscroll_button_delay);
seed = mojo::internal::Hash(seed, this->jump_on_track_click);
seed = mojo::internal::Hash(seed, this->preferred_scroller_style);
seed = mojo::internal::Hash(seed, this->redraw);
seed = mojo::internal::Hash(seed, this->scroll_view_rubber_banding);
return seed;
}
void UpdateScrollbarThemeParams::WriteIntoTrace(
perfetto::TracedValue traced_context) const {
[[maybe_unused]] auto dict = std::move(traced_context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem(
"has_initial_button_delay"), this->has_initial_button_delay,
#if BUILDFLAG(MOJO_TRACE_ENABLED)
"<value of type bool>"
#else
"<value>"
#endif // BUILDFLAG(MOJO_TRACE_ENABLED)
);
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem(
"initial_button_delay"), this->initial_button_delay,
#if BUILDFLAG(MOJO_TRACE_ENABLED)
"<value of type float>"
#else
"<value>"
#endif // BUILDFLAG(MOJO_TRACE_ENABLED)
);
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem(
"has_autoscroll_button_delay"), this->has_autoscroll_button_delay,
#if BUILDFLAG(MOJO_TRACE_ENABLED)
"<value of type bool>"
#else
"<value>"
#endif // BUILDFLAG(MOJO_TRACE_ENABLED)
);
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem(
"autoscroll_button_delay"), this->autoscroll_button_delay,
#if BUILDFLAG(MOJO_TRACE_ENABLED)
"<value of type float>"
#else
"<value>"
#endif // BUILDFLAG(MOJO_TRACE_ENABLED)
);
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem(
"jump_on_track_click"), this->jump_on_track_click,
#if BUILDFLAG(MOJO_TRACE_ENABLED)
"<value of type bool>"
#else
"<value>"
#endif // BUILDFLAG(MOJO_TRACE_ENABLED)
);
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem(
"preferred_scroller_style"), this->preferred_scroller_style,
#if BUILDFLAG(MOJO_TRACE_ENABLED)
"<value of type ::content::mojom::ScrollerStyle>"
#else
"<value>"
#endif // BUILDFLAG(MOJO_TRACE_ENABLED)
);
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem(
"redraw"), this->redraw,
#if BUILDFLAG(MOJO_TRACE_ENABLED)
"<value of type bool>"
#else
"<value>"
#endif // BUILDFLAG(MOJO_TRACE_ENABLED)
);
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem(
"scroll_view_rubber_banding"), this->scroll_view_rubber_banding,
#if BUILDFLAG(MOJO_TRACE_ENABLED)
"<value of type bool>"
#else
"<value>"
#endif // BUILDFLAG(MOJO_TRACE_ENABLED)
);
}
bool UpdateScrollbarThemeParams::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) {
return Data_::Validate(data, validation_context);
}
UpdateSystemColorInfoParams::UpdateSystemColorInfoParams()
: accent_color() {}
UpdateSystemColorInfoParams::UpdateSystemColorInfoParams(
std::optional<uint32_t> accent_color_in)
: accent_color(std::move(accent_color_in)) {}
UpdateSystemColorInfoParams::~UpdateSystemColorInfoParams() = default;
void UpdateSystemColorInfoParams::WriteIntoTrace(
perfetto::TracedValue traced_context) const {
[[maybe_unused]] auto dict = std::move(traced_context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem(
"accent_color"), this->accent_color,
#if BUILDFLAG(MOJO_TRACE_ENABLED)
"<value of type std::optional<uint32_t>>"
#else
"<value>"
#endif // BUILDFLAG(MOJO_TRACE_ENABLED)
);
}
bool UpdateSystemColorInfoParams::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) {
return Data_::Validate(data, validation_context);
}
// The declaration includes the definition on other builds.
Renderer::IPCStableHashFunction Renderer::MessageToMethodInfo_(mojo::Message& message) {
#if !BUILDFLAG(IS_FUCHSIA)
switch (static_cast<messages::Renderer>(message.name())) {
case messages::Renderer::kCreateAgentSchedulingGroup: {
return &Renderer::CreateAgentSchedulingGroup_Sym::IPCStableHash;
}
case messages::Renderer::kCreateAssociatedAgentSchedulingGroup: {
return &Renderer::CreateAssociatedAgentSchedulingGroup_Sym::IPCStableHash;
}
case messages::Renderer::kTransferSharedLastForegroundTime: {
return &Renderer::TransferSharedLastForegroundTime_Sym::IPCStableHash;
}
case messages::Renderer::kOnNetworkConnectionChanged: {
return &Renderer::OnNetworkConnectionChanged_Sym::IPCStableHash;
}
case messages::Renderer::kOnNetworkQualityChanged: {
return &Renderer::OnNetworkQualityChanged_Sym::IPCStableHash;
}
case messages::Renderer::kSetWebKitSharedTimersSuspended: {
return &Renderer::SetWebKitSharedTimersSuspended_Sym::IPCStableHash;
}
case messages::Renderer::kUpdateScrollbarTheme: {
return &Renderer::UpdateScrollbarTheme_Sym::IPCStableHash;
}
case messages::Renderer::kOnSystemColorsChanged: {
return &Renderer::OnSystemColorsChanged_Sym::IPCStableHash;
}
case messages::Renderer::kUpdateSystemColorInfo: {
return &Renderer::UpdateSystemColorInfo_Sym::IPCStableHash;
}
case messages::Renderer::kPurgePluginListCache: {
return &Renderer::PurgePluginListCache_Sym::IPCStableHash;
}
case messages::Renderer::kPurgeResourceCache: {
return &Renderer::PurgeResourceCache_Sym::IPCStableHash;
}
case messages::Renderer::kSetProcessState: {
return &Renderer::SetProcessState_Sym::IPCStableHash;
}
case messages::Renderer::kSetIsLockedToSite: {
return &Renderer::SetIsLockedToSite_Sym::IPCStableHash;
}
case messages::Renderer::kSetIsCrossOriginIsolated: {
return &Renderer::SetIsCrossOriginIsolated_Sym::IPCStableHash;
}
case messages::Renderer::kSetIsWebSecurityDisabled: {
return &Renderer::SetIsWebSecurityDisabled_Sym::IPCStableHash;
}
case messages::Renderer::kSetIsIsolatedContext: {
return &Renderer::SetIsIsolatedContext_Sym::IPCStableHash;
}
case messages::Renderer::kSetWebUIResourceUrlToCodeCacheMap: {
return &Renderer::SetWebUIResourceUrlToCodeCacheMap_Sym::IPCStableHash;
}
case messages::Renderer::kInitializeRenderer: {
return &Renderer::InitializeRenderer_Sym::IPCStableHash;
}
}
#endif // !BUILDFLAG(IS_FUCHSIA)
return nullptr;
}
const char* Renderer::MessageToMethodName_(mojo::Message& message) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
bool is_response = message.has_flag(mojo::Message::kFlagIsResponse);
if (!is_response) {
switch (static_cast<messages::Renderer>(message.name())) {
case messages::Renderer::kCreateAgentSchedulingGroup:
return "Receive content::mojom::Renderer::CreateAgentSchedulingGroup";
case messages::Renderer::kCreateAssociatedAgentSchedulingGroup:
return "Receive content::mojom::Renderer::CreateAssociatedAgentSchedulingGroup";
case messages::Renderer::kTransferSharedLastForegroundTime:
return "Receive content::mojom::Renderer::TransferSharedLastForegroundTime";
case messages::Renderer::kOnNetworkConnectionChanged:
return "Receive content::mojom::Renderer::OnNetworkConnectionChanged";
case messages::Renderer::kOnNetworkQualityChanged:
return "Receive content::mojom::Renderer::OnNetworkQualityChanged";
case messages::Renderer::kSetWebKitSharedTimersSuspended:
return "Receive content::mojom::Renderer::SetWebKitSharedTimersSuspended";
case messages::Renderer::kUpdateScrollbarTheme:
return "Receive content::mojom::Renderer::UpdateScrollbarTheme";
case messages::Renderer::kOnSystemColorsChanged:
return "Receive content::mojom::Renderer::OnSystemColorsChanged";
case messages::Renderer::kUpdateSystemColorInfo:
return "Receive content::mojom::Renderer::UpdateSystemColorInfo";
case messages::Renderer::kPurgePluginListCache:
return "Receive content::mojom::Renderer::PurgePluginListCache";
case messages::Renderer::kPurgeResourceCache:
return "Receive content::mojom::Renderer::PurgeResourceCache";
case messages::Renderer::kSetProcessState:
return "Receive content::mojom::Renderer::SetProcessState";
case messages::Renderer::kSetIsLockedToSite:
return "Receive content::mojom::Renderer::SetIsLockedToSite";
case messages::Renderer::kSetIsCrossOriginIsolated:
return "Receive content::mojom::Renderer::SetIsCrossOriginIsolated";
case messages::Renderer::kSetIsWebSecurityDisabled:
return "Receive content::mojom::Renderer::SetIsWebSecurityDisabled";
case messages::Renderer::kSetIsIsolatedContext:
return "Receive content::mojom::Renderer::SetIsIsolatedContext";
case messages::Renderer::kSetWebUIResourceUrlToCodeCacheMap:
return "Receive content::mojom::Renderer::SetWebUIResourceUrlToCodeCacheMap";
case messages::Renderer::kInitializeRenderer:
return "Receive content::mojom::Renderer::InitializeRenderer";
}
} else {
switch (static_cast<messages::Renderer>(message.name())) {
case messages::Renderer::kCreateAgentSchedulingGroup:
return "Receive reply content::mojom::Renderer::CreateAgentSchedulingGroup";
case messages::Renderer::kCreateAssociatedAgentSchedulingGroup:
return "Receive reply content::mojom::Renderer::CreateAssociatedAgentSchedulingGroup";
case messages::Renderer::kTransferSharedLastForegroundTime:
return "Receive reply content::mojom::Renderer::TransferSharedLastForegroundTime";
case messages::Renderer::kOnNetworkConnectionChanged:
return "Receive reply content::mojom::Renderer::OnNetworkConnectionChanged";
case messages::Renderer::kOnNetworkQualityChanged:
return "Receive reply content::mojom::Renderer::OnNetworkQualityChanged";
case messages::Renderer::kSetWebKitSharedTimersSuspended:
return "Receive reply content::mojom::Renderer::SetWebKitSharedTimersSuspended";
case messages::Renderer::kUpdateScrollbarTheme:
return "Receive reply content::mojom::Renderer::UpdateScrollbarTheme";
case messages::Renderer::kOnSystemColorsChanged:
return "Receive reply content::mojom::Renderer::OnSystemColorsChanged";
case messages::Renderer::kUpdateSystemColorInfo:
return "Receive reply content::mojom::Renderer::UpdateSystemColorInfo";
case messages::Renderer::kPurgePluginListCache:
return "Receive reply content::mojom::Renderer::PurgePluginListCache";
case messages::Renderer::kPurgeResourceCache:
return "Receive reply content::mojom::Renderer::PurgeResourceCache";
case messages::Renderer::kSetProcessState:
return "Receive reply content::mojom::Renderer::SetProcessState";
case messages::Renderer::kSetIsLockedToSite:
return "Receive reply content::mojom::Renderer::SetIsLockedToSite";
case messages::Renderer::kSetIsCrossOriginIsolated:
return "Receive reply content::mojom::Renderer::SetIsCrossOriginIsolated";
case messages::Renderer::kSetIsWebSecurityDisabled:
return "Receive reply content::mojom::Renderer::SetIsWebSecurityDisabled";
case messages::Renderer::kSetIsIsolatedContext:
return "Receive reply content::mojom::Renderer::SetIsIsolatedContext";
case messages::Renderer::kSetWebUIResourceUrlToCodeCacheMap:
return "Receive reply content::mojom::Renderer::SetWebUIResourceUrlToCodeCacheMap";
case messages::Renderer::kInitializeRenderer:
return "Receive reply content::mojom::Renderer::InitializeRenderer";
}
}
return "Receive unknown mojo message";
#else
bool is_response = message.has_flag(mojo::Message::kFlagIsResponse);
if (is_response) {
return "Receive mojo reply";
} else {
return "Receive mojo message";
}
#endif // BUILDFLAG(MOJO_TRACE_ENABLED)
}
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t Renderer::CreateAgentSchedulingGroup_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0x6e1daf0c; // IPCStableHash for content::mojom::Renderer::CreateAgentSchedulingGroup
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::CreateAssociatedAgentSchedulingGroup_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0x03bb9db8; // IPCStableHash for content::mojom::Renderer::CreateAssociatedAgentSchedulingGroup
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::TransferSharedLastForegroundTime_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0xd51a3873; // IPCStableHash for content::mojom::Renderer::TransferSharedLastForegroundTime
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::OnNetworkConnectionChanged_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0x6310898e; // IPCStableHash for content::mojom::Renderer::OnNetworkConnectionChanged
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::OnNetworkQualityChanged_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0x54a48364; // IPCStableHash for content::mojom::Renderer::OnNetworkQualityChanged
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::SetWebKitSharedTimersSuspended_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0xf0049a93; // IPCStableHash for content::mojom::Renderer::SetWebKitSharedTimersSuspended
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::UpdateScrollbarTheme_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0x005e5298; // IPCStableHash for content::mojom::Renderer::UpdateScrollbarTheme
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::OnSystemColorsChanged_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0xaa9d60e8; // IPCStableHash for content::mojom::Renderer::OnSystemColorsChanged
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::UpdateSystemColorInfo_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0x45267373; // IPCStableHash for content::mojom::Renderer::UpdateSystemColorInfo
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::PurgePluginListCache_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0xaf6a87db; // IPCStableHash for content::mojom::Renderer::PurgePluginListCache
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::PurgeResourceCache_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0xc55eea1c; // IPCStableHash for content::mojom::Renderer::PurgeResourceCache
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::SetProcessState_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0xb614b659; // IPCStableHash for content::mojom::Renderer::SetProcessState
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::SetIsLockedToSite_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0xba4399eb; // IPCStableHash for content::mojom::Renderer::SetIsLockedToSite
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::SetIsCrossOriginIsolated_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0x10fa8508; // IPCStableHash for content::mojom::Renderer::SetIsCrossOriginIsolated
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::SetIsWebSecurityDisabled_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0x9de24e19; // IPCStableHash for content::mojom::Renderer::SetIsWebSecurityDisabled
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::SetIsIsolatedContext_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0x863d4ac4; // IPCStableHash for content::mojom::Renderer::SetIsIsolatedContext
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::SetWebUIResourceUrlToCodeCacheMap_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0x236984ba; // IPCStableHash for content::mojom::Renderer::SetWebUIResourceUrlToCodeCacheMap
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
uint32_t Renderer::InitializeRenderer_Sym::IPCStableHash() {
// This method's address is used for identifying the mojo method name after
// symbolization. So each IPCStableHash should have a unique address.
// We cannot use NO_CODE_FOLDING() here - it relies on the uniqueness of
// __LINE__ value, which is not unique across different mojo modules.
// The code below is very similar to NO_CODE_FOLDING, but it uses a unique
// hash instead of __LINE__.
static constexpr uint32_t kHash = 0xbcb54651; // IPCStableHash for content::mojom::Renderer::InitializeRenderer
const uint32_t hash = kHash;
base::debug::Alias(&hash);
return hash;
}
# endif // !BUILDFLAG(IS_FUCHSIA)
class Renderer_PurgeResourceCache_ForwardToCallback
: public mojo::MessageReceiver {
public:
Renderer_PurgeResourceCache_ForwardToCallback(
Renderer::PurgeResourceCacheCallback callback
) : callback_(std::move(callback)) {
}
Renderer_PurgeResourceCache_ForwardToCallback(const Renderer_PurgeResourceCache_ForwardToCallback&) = delete;
Renderer_PurgeResourceCache_ForwardToCallback& operator=(const Renderer_PurgeResourceCache_ForwardToCallback&) = delete;
bool Accept(mojo::Message* message) override;
private:
Renderer::PurgeResourceCacheCallback callback_;
};
RendererProxy::RendererProxy(mojo::MessageReceiverWithResponder* receiver)
: receiver_(receiver) {
}
void RendererProxy::CreateAgentSchedulingGroup(
::mojo::PendingReceiver<::IPC::mojom::ChannelBootstrap> in_bootstrap) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::CreateAgentSchedulingGroup", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("bootstrap"), in_bootstrap,
"<value of type ::mojo::PendingReceiver<::IPC::mojom::ChannelBootstrap>>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kCreateAgentSchedulingGroup), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_CreateAgentSchedulingGroup_Params_Data> params(
message);
params.Allocate();
mojo::internal::Serialize<mojo::InterfaceRequestDataView<::IPC::mojom::ChannelBootstrapInterfaceBase>>(
in_bootstrap,
&params->bootstrap,
&params.message());
MOJO_INTERNAL_CHECK_SERIALIZATION(
mojo::internal::SendValidation::kDefault,
!(!mojo::internal::IsHandleOrInterfaceValid(params->bootstrap)),
mojo::internal::VALIDATION_ERROR_UNEXPECTED_INVALID_HANDLE,
"invalid bootstrap in Renderer.CreateAgentSchedulingGroup request");
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("CreateAgentSchedulingGroup");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::CreateAssociatedAgentSchedulingGroup(
::mojo::PendingAssociatedReceiver<::content::mojom::AgentSchedulingGroup> in_agent_scheduling_group) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::CreateAssociatedAgentSchedulingGroup", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("agent_scheduling_group"), in_agent_scheduling_group,
"<value of type ::mojo::PendingAssociatedReceiver<::content::mojom::AgentSchedulingGroup>>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kCreateAssociatedAgentSchedulingGroup), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_CreateAssociatedAgentSchedulingGroup_Params_Data> params(
message);
params.Allocate();
mojo::internal::Serialize<::content::mojom::AgentSchedulingGroupAssociatedRequestDataView>(
in_agent_scheduling_group,
&params->agent_scheduling_group,
&params.message());
MOJO_INTERNAL_CHECK_SERIALIZATION(
mojo::internal::SendValidation::kDefault,
!(!mojo::internal::IsHandleOrInterfaceValid(params->agent_scheduling_group)),
mojo::internal::VALIDATION_ERROR_UNEXPECTED_INVALID_INTERFACE_ID,
"invalid agent_scheduling_group in Renderer.CreateAssociatedAgentSchedulingGroup request");
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("CreateAssociatedAgentSchedulingGroup");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::TransferSharedLastForegroundTime(
::base::ReadOnlySharedMemoryRegion in_last_foreground_time_region) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::TransferSharedLastForegroundTime", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("last_foreground_time_region"), in_last_foreground_time_region,
"<value of type ::base::ReadOnlySharedMemoryRegion>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kTransferSharedLastForegroundTime), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_TransferSharedLastForegroundTime_Params_Data> params(
message);
params.Allocate();
mojo::internal::MessageFragment<
typename decltype(params->last_foreground_time_region)::BaseType> last_foreground_time_region_fragment(
params.message());
mojo::internal::Serialize<::mojo_base::mojom::ReadOnlySharedMemoryRegionDataView>(
in_last_foreground_time_region,
last_foreground_time_region_fragment);
params->last_foreground_time_region.Set(
last_foreground_time_region_fragment.is_null() ? nullptr : last_foreground_time_region_fragment.data());
MOJO_INTERNAL_CHECK_SERIALIZATION(
mojo::internal::SendValidation::kDefault,
!(params->last_foreground_time_region.is_null()),
mojo::internal::VALIDATION_ERROR_UNEXPECTED_NULL_POINTER,
"null last_foreground_time_region in Renderer.TransferSharedLastForegroundTime request");
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("TransferSharedLastForegroundTime");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::OnNetworkConnectionChanged(
::net::NetworkChangeNotifier::ConnectionType in_connection_type, double in_max_bandwidth_mbps) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::OnNetworkConnectionChanged", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("connection_type"), in_connection_type,
"<value of type ::net::NetworkChangeNotifier::ConnectionType>");
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("max_bandwidth_mbps"), in_max_bandwidth_mbps,
"<value of type double>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kOnNetworkConnectionChanged), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_OnNetworkConnectionChanged_Params_Data> params(
message);
params.Allocate();
mojo::internal::Serialize<::content::mojom::NetworkConnectionType>(
in_connection_type,
&params->connection_type);
params->max_bandwidth_mbps = in_max_bandwidth_mbps;
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("OnNetworkConnectionChanged");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::OnNetworkQualityChanged(
::net::EffectiveConnectionType in_effective_connection_type, ::base::TimeDelta in_http_rtt, ::base::TimeDelta in_transport_rtt, double in_bandwidth_kbps) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::OnNetworkQualityChanged", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("effective_connection_type"), in_effective_connection_type,
"<value of type ::net::EffectiveConnectionType>");
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("http_rtt"), in_http_rtt,
"<value of type ::base::TimeDelta>");
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("transport_rtt"), in_transport_rtt,
"<value of type ::base::TimeDelta>");
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("bandwidth_kbps"), in_bandwidth_kbps,
"<value of type double>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kOnNetworkQualityChanged), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_OnNetworkQualityChanged_Params_Data> params(
message);
params.Allocate();
mojo::internal::Serialize<::network::mojom::EffectiveConnectionType>(
in_effective_connection_type,
&params->effective_connection_type);
mojo::internal::MessageFragment<
typename decltype(params->http_rtt)::BaseType> http_rtt_fragment(
params.message());
mojo::internal::Serialize<::mojo_base::mojom::TimeDeltaDataView>(
in_http_rtt,
http_rtt_fragment);
params->http_rtt.Set(
http_rtt_fragment.is_null() ? nullptr : http_rtt_fragment.data());
MOJO_INTERNAL_CHECK_SERIALIZATION(
mojo::internal::SendValidation::kDefault,
!(params->http_rtt.is_null()),
mojo::internal::VALIDATION_ERROR_UNEXPECTED_NULL_POINTER,
"null http_rtt in Renderer.OnNetworkQualityChanged request");
mojo::internal::MessageFragment<
typename decltype(params->transport_rtt)::BaseType> transport_rtt_fragment(
params.message());
mojo::internal::Serialize<::mojo_base::mojom::TimeDeltaDataView>(
in_transport_rtt,
transport_rtt_fragment);
params->transport_rtt.Set(
transport_rtt_fragment.is_null() ? nullptr : transport_rtt_fragment.data());
MOJO_INTERNAL_CHECK_SERIALIZATION(
mojo::internal::SendValidation::kDefault,
!(params->transport_rtt.is_null()),
mojo::internal::VALIDATION_ERROR_UNEXPECTED_NULL_POINTER,
"null transport_rtt in Renderer.OnNetworkQualityChanged request");
params->bandwidth_kbps = in_bandwidth_kbps;
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("OnNetworkQualityChanged");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::SetWebKitSharedTimersSuspended(
bool in_suspend) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::SetWebKitSharedTimersSuspended", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("suspend"), in_suspend,
"<value of type bool>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kSetWebKitSharedTimersSuspended), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_SetWebKitSharedTimersSuspended_Params_Data> params(
message);
params.Allocate();
params->suspend = in_suspend;
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("SetWebKitSharedTimersSuspended");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::UpdateScrollbarTheme(
UpdateScrollbarThemeParamsPtr in_params) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::UpdateScrollbarTheme", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("params"), in_params,
"<value of type UpdateScrollbarThemeParamsPtr>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kUpdateScrollbarTheme), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_UpdateScrollbarTheme_Params_Data> params(
message);
params.Allocate();
mojo::internal::MessageFragment<
typename decltype(params->params)::BaseType> params_fragment(
params.message());
mojo::internal::Serialize<::content::mojom::UpdateScrollbarThemeParamsDataView>(
in_params,
params_fragment);
params->params.Set(
params_fragment.is_null() ? nullptr : params_fragment.data());
MOJO_INTERNAL_CHECK_SERIALIZATION(
mojo::internal::SendValidation::kDefault,
!(params->params.is_null()),
mojo::internal::VALIDATION_ERROR_UNEXPECTED_NULL_POINTER,
"null params in Renderer.UpdateScrollbarTheme request");
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("UpdateScrollbarTheme");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::OnSystemColorsChanged(
int32_t in_aqua_color_variant) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::OnSystemColorsChanged", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("aqua_color_variant"), in_aqua_color_variant,
"<value of type int32_t>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kOnSystemColorsChanged), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_OnSystemColorsChanged_Params_Data> params(
message);
params.Allocate();
params->aqua_color_variant = in_aqua_color_variant;
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("OnSystemColorsChanged");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::UpdateSystemColorInfo(
UpdateSystemColorInfoParamsPtr in_params) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::UpdateSystemColorInfo", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("params"), in_params,
"<value of type UpdateSystemColorInfoParamsPtr>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kUpdateSystemColorInfo), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_UpdateSystemColorInfo_Params_Data> params(
message);
params.Allocate();
mojo::internal::MessageFragment<
typename decltype(params->params)::BaseType> params_fragment(
params.message());
mojo::internal::Serialize<::content::mojom::UpdateSystemColorInfoParamsDataView>(
in_params,
params_fragment);
params->params.Set(
params_fragment.is_null() ? nullptr : params_fragment.data());
MOJO_INTERNAL_CHECK_SERIALIZATION(
mojo::internal::SendValidation::kDefault,
!(params->params.is_null()),
mojo::internal::VALIDATION_ERROR_UNEXPECTED_NULL_POINTER,
"null params in Renderer.UpdateSystemColorInfo request");
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("UpdateSystemColorInfo");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::PurgePluginListCache(
bool in_reload_pages) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::PurgePluginListCache", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("reload_pages"), in_reload_pages,
"<value of type bool>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kPurgePluginListCache), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_PurgePluginListCache_Params_Data> params(
message);
params.Allocate();
params->reload_pages = in_reload_pages;
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("PurgePluginListCache");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::PurgeResourceCache(
PurgeResourceCacheCallback callback) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT0("mojom", "Send content::mojom::Renderer::PurgeResourceCache");
#endif
const bool kExpectsResponse = true;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kPurgeResourceCache), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_PurgeResourceCache_Params_Data> params(
message);
params.Allocate();
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("PurgeResourceCache");
#endif
std::unique_ptr<mojo::MessageReceiver> responder(
new Renderer_PurgeResourceCache_ForwardToCallback(
std::move(callback)));
::mojo::internal::SendMojoMessage(*receiver_, message, std::move(responder));
}
void RendererProxy::SetProcessState(
::base::Process::Priority in_process_priority, RenderProcessVisibleState in_visible_state) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::SetProcessState", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("process_priority"), in_process_priority,
"<value of type ::base::Process::Priority>");
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("visible_state"), in_visible_state,
"<value of type RenderProcessVisibleState>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kSetProcessState), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_SetProcessState_Params_Data> params(
message);
params.Allocate();
mojo::internal::Serialize<::mojo_base::mojom::ProcessPriority>(
in_process_priority,
&params->process_priority);
mojo::internal::Serialize<::content::mojom::RenderProcessVisibleState>(
in_visible_state,
&params->visible_state);
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("SetProcessState");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::SetIsLockedToSite(
) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT0("mojom", "Send content::mojom::Renderer::SetIsLockedToSite");
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kSetIsLockedToSite), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_SetIsLockedToSite_Params_Data> params(
message);
params.Allocate();
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("SetIsLockedToSite");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::SetIsCrossOriginIsolated(
bool in_value) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::SetIsCrossOriginIsolated", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("value"), in_value,
"<value of type bool>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kSetIsCrossOriginIsolated), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_SetIsCrossOriginIsolated_Params_Data> params(
message);
params.Allocate();
params->value = in_value;
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("SetIsCrossOriginIsolated");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::SetIsWebSecurityDisabled(
bool in_value) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::SetIsWebSecurityDisabled", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("value"), in_value,
"<value of type bool>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kSetIsWebSecurityDisabled), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_SetIsWebSecurityDisabled_Params_Data> params(
message);
params.Allocate();
params->value = in_value;
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("SetIsWebSecurityDisabled");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::SetIsIsolatedContext(
bool in_value) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::SetIsIsolatedContext", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("value"), in_value,
"<value of type bool>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kSetIsIsolatedContext), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_SetIsIsolatedContext_Params_Data> params(
message);
params.Allocate();
params->value = in_value;
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("SetIsIsolatedContext");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::SetWebUIResourceUrlToCodeCacheMap(
const base::flat_map<::GURL, int32_t>& in_resource_map) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::SetWebUIResourceUrlToCodeCacheMap", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("resource_map"), in_resource_map,
"<value of type const base::flat_map<::GURL, int32_t>&>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kSetWebUIResourceUrlToCodeCacheMap), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_SetWebUIResourceUrlToCodeCacheMap_Params_Data> params(
message);
params.Allocate();
mojo::internal::MessageFragment<
typename decltype(params->resource_map)::BaseType>
resource_map_fragment(params.message());
constexpr const mojo::internal::ContainerValidateParams& resource_map_validate_params =
mojo::internal::GetMapValidator<*&mojo::internal::GetArrayValidator<0, false, nullptr>(), *&mojo::internal::GetArrayValidator<0, false, nullptr>()>();
mojo::internal::Serialize<mojo::MapDataView<::url::mojom::UrlDataView, int32_t>>(
in_resource_map,
resource_map_fragment,
&resource_map_validate_params);
params->resource_map.Set(
resource_map_fragment.is_null() ? nullptr : resource_map_fragment.data());
MOJO_INTERNAL_CHECK_SERIALIZATION(
mojo::internal::SendValidation::kDefault,
!(params->resource_map.is_null()),
mojo::internal::VALIDATION_ERROR_UNEXPECTED_NULL_POINTER,
"null resource_map in Renderer.SetWebUIResourceUrlToCodeCacheMap request");
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("SetWebUIResourceUrlToCodeCacheMap");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
void RendererProxy::InitializeRenderer(
const std::string& in_user_agent, const ::blink::UserAgentMetadata& in_metadata, const std::vector<std::string>& in_cors_exempt_header_list, ::blink::mojom::OriginTrialsSettingsPtr in_origin_trials_settings, uint64_t in_trace_id) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT1(
"mojom", "Send content::mojom::Renderer::InitializeRenderer", "input_parameters",
[&](perfetto::TracedValue context){
auto dict = std::move(context).WriteDictionary();
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("user_agent"), in_user_agent,
"<value of type const std::string&>");
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("metadata"), in_metadata,
"<value of type const ::blink::UserAgentMetadata&>");
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("cors_exempt_header_list"), in_cors_exempt_header_list,
"<value of type const std::vector<std::string>&>");
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("origin_trials_settings"), in_origin_trials_settings,
"<value of type ::blink::mojom::OriginTrialsSettingsPtr>");
perfetto::WriteIntoTracedValueWithFallback(
dict.AddItem("trace_id"), in_trace_id,
"<value of type uint64_t>");
});
#endif
const bool kExpectsResponse = false;
const bool kIsSync = false;
const bool kAllowInterrupt = true;
const bool is_urgent = false;
const uint32_t kFlags =
((kExpectsResponse) ? mojo::Message::kFlagExpectsResponse : 0) |
((kIsSync) ? mojo::Message::kFlagIsSync : 0) |
((kAllowInterrupt) ? 0 : mojo::Message::kFlagNoInterrupt) |
((is_urgent) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kInitializeRenderer), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_InitializeRenderer_Params_Data> params(
message);
params.Allocate();
mojo::internal::MessageFragment<
typename decltype(params->user_agent)::BaseType> user_agent_fragment(
params.message());
mojo::internal::Serialize<mojo::StringDataView>(
in_user_agent,
user_agent_fragment);
params->user_agent.Set(
user_agent_fragment.is_null() ? nullptr : user_agent_fragment.data());
MOJO_INTERNAL_CHECK_SERIALIZATION(
mojo::internal::SendValidation::kDefault,
!(params->user_agent.is_null()),
mojo::internal::VALIDATION_ERROR_UNEXPECTED_NULL_POINTER,
"null user_agent in Renderer.InitializeRenderer request");
mojo::internal::MessageFragment<
typename decltype(params->metadata)::BaseType> metadata_fragment(
params.message());
mojo::internal::Serialize<::blink::mojom::UserAgentMetadataDataView>(
in_metadata,
metadata_fragment);
params->metadata.Set(
metadata_fragment.is_null() ? nullptr : metadata_fragment.data());
MOJO_INTERNAL_CHECK_SERIALIZATION(
mojo::internal::SendValidation::kDefault,
!(params->metadata.is_null()),
mojo::internal::VALIDATION_ERROR_UNEXPECTED_NULL_POINTER,
"null metadata in Renderer.InitializeRenderer request");
mojo::internal::MessageFragment<
typename decltype(params->cors_exempt_header_list)::BaseType>
cors_exempt_header_list_fragment(params.message());
constexpr const mojo::internal::ContainerValidateParams& cors_exempt_header_list_validate_params =
mojo::internal::GetArrayValidator<0, false, &mojo::internal::GetArrayValidator<0, false, nullptr>()>();
mojo::internal::Serialize<mojo::ArrayDataView<mojo::StringDataView>>(
in_cors_exempt_header_list,
cors_exempt_header_list_fragment,
&cors_exempt_header_list_validate_params);
params->cors_exempt_header_list.Set(
cors_exempt_header_list_fragment.is_null() ? nullptr : cors_exempt_header_list_fragment.data());
MOJO_INTERNAL_CHECK_SERIALIZATION(
mojo::internal::SendValidation::kDefault,
!(params->cors_exempt_header_list.is_null()),
mojo::internal::VALIDATION_ERROR_UNEXPECTED_NULL_POINTER,
"null cors_exempt_header_list in Renderer.InitializeRenderer request");
mojo::internal::MessageFragment<
typename decltype(params->origin_trials_settings)::BaseType> origin_trials_settings_fragment(
params.message());
mojo::internal::Serialize<::blink::mojom::OriginTrialsSettingsDataView>(
in_origin_trials_settings,
origin_trials_settings_fragment);
params->origin_trials_settings.Set(
origin_trials_settings_fragment.is_null() ? nullptr : origin_trials_settings_fragment.data());
params->trace_id = in_trace_id;
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("InitializeRenderer");
#endif
// This return value may be ignored as false implies the Connector has
// encountered an error, which will be visible through other means.
::mojo::internal::SendMojoMessage(*receiver_, message);
}
class Renderer_PurgeResourceCache_ProxyToResponder : public ::mojo::internal::ProxyToResponder {
public:
static Renderer::PurgeResourceCacheCallback CreateCallback(
::mojo::Message& message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) {
std::unique_ptr<Renderer_PurgeResourceCache_ProxyToResponder> proxy(
new Renderer_PurgeResourceCache_ProxyToResponder(
message, std::move(responder)));
return base::BindOnce(&Renderer_PurgeResourceCache_ProxyToResponder::Run,
std::move(proxy));
}
~Renderer_PurgeResourceCache_ProxyToResponder() {
#if DCHECK_IS_ON()
if (responder_) {
// If we're being destroyed without being run, we want to ensure the
// binding endpoint has been closed. This checks for that asynchronously.
// We pass a bound generated callback to handle the response so that any
// resulting DCHECK stack will have useful interface type information.
// Instantiate a ScopedFizzleBlockShutdownTasks to allow this request to
// fizzle if this happens after shutdown and the endpoint is bound to a
// BLOCK_SHUTDOWN sequence.
base::ThreadPoolInstance::ScopedFizzleBlockShutdownTasks fizzler;
responder_->IsConnectedAsync(base::BindOnce(&OnIsConnectedComplete));
}
#endif
}
private:
Renderer_PurgeResourceCache_ProxyToResponder(
::mojo::Message& message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder)
: ::mojo::internal::ProxyToResponder(message, std::move(responder)) {
}
#if DCHECK_IS_ON()
static void OnIsConnectedComplete(bool connected) {
DCHECK(!connected)
<< "Renderer::PurgeResourceCacheCallback was destroyed without "
<< "first either being run or its corresponding binding being closed. "
<< "It is an error to drop response callbacks which still correspond "
<< "to an open interface pipe.";
}
#endif
void Run(
);
};
bool Renderer_PurgeResourceCache_ForwardToCallback::Accept(
mojo::Message* message) {
DCHECK(message->is_serialized());
internal::Renderer_PurgeResourceCache_ResponseParams_Data* params =
reinterpret_cast<
internal::Renderer_PurgeResourceCache_ResponseParams_Data*>(
message->mutable_payload());
// Validation for Renderer.10
bool success = true;
Renderer_PurgeResourceCache_ResponseParamsDataView input_data_view(params, message);
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 10, true);
return false;
}
if (!callback_.is_null()) {
std::move(callback_).Run();
}
return true;
}
void Renderer_PurgeResourceCache_ProxyToResponder::Run(
) {
#if BUILDFLAG(MOJO_TRACE_ENABLED)
TRACE_EVENT0("mojom", "Send reply content::mojom::Renderer::PurgeResourceCache");
#endif
const uint32_t kFlags = mojo::Message::kFlagIsResponse |
((is_sync_) ? mojo::Message::kFlagIsSync : 0) |
((true) ? 0 : mojo::Message::kFlagNoInterrupt) |
((false) ? mojo::Message::kFlagIsUrgent : 0);
const size_t estimated_payload_size =
0;
mojo::Message message(
base::to_underlying(messages::Renderer::kPurgeResourceCache), kFlags, estimated_payload_size);
mojo::internal::MessageFragment<
::content::mojom::internal::Renderer_PurgeResourceCache_ResponseParams_Data> params(
message);
params.Allocate();
#if defined(ENABLE_IPC_FUZZER)
message.set_interface_name(Renderer::Name_);
message.set_method_name("PurgeResourceCache");
#endif
message.set_request_id(request_id_);
message.set_trace_nonce(trace_nonce_);
::mojo::internal::SendMojoMessage(*responder_, message);
// SendMojoMessage() fails silently if the responder connection is closed,
// or if the message is malformed.
//
// TODO(darin): If Accept() returns false due to a malformed message, that
// may be good reason to close the connection. However, we don't have a
// way to do that from here. We should add a way.
responder_ = nullptr;
}
// static
bool RendererStubDispatch::Accept(
Renderer* impl,
mojo::Message* message) {
switch (static_cast<messages::Renderer>(message->header()->name)) {
case messages::Renderer::kCreateAgentSchedulingGroup: {
DCHECK(message->is_serialized());
internal::Renderer_CreateAgentSchedulingGroup_Params_Data* params =
reinterpret_cast<internal::Renderer_CreateAgentSchedulingGroup_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.0
bool success = true;
::mojo::PendingReceiver<::IPC::mojom::ChannelBootstrap> p_bootstrap{};
Renderer_CreateAgentSchedulingGroup_ParamsDataView input_data_view(params, message);
if (success) {
p_bootstrap =
input_data_view.TakeBootstrap<decltype(p_bootstrap)>();
}
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 0, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->CreateAgentSchedulingGroup(
std::move(p_bootstrap));
return true;
}
case messages::Renderer::kCreateAssociatedAgentSchedulingGroup: {
DCHECK(message->is_serialized());
internal::Renderer_CreateAssociatedAgentSchedulingGroup_Params_Data* params =
reinterpret_cast<internal::Renderer_CreateAssociatedAgentSchedulingGroup_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.1
bool success = true;
::mojo::PendingAssociatedReceiver<::content::mojom::AgentSchedulingGroup> p_agent_scheduling_group{};
Renderer_CreateAssociatedAgentSchedulingGroup_ParamsDataView input_data_view(params, message);
if (success) {
p_agent_scheduling_group =
input_data_view.TakeAgentSchedulingGroup<decltype(p_agent_scheduling_group)>();
}
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 1, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->CreateAssociatedAgentSchedulingGroup(
std::move(p_agent_scheduling_group));
return true;
}
case messages::Renderer::kTransferSharedLastForegroundTime: {
DCHECK(message->is_serialized());
internal::Renderer_TransferSharedLastForegroundTime_Params_Data* params =
reinterpret_cast<internal::Renderer_TransferSharedLastForegroundTime_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.2
bool success = true;
::base::ReadOnlySharedMemoryRegion p_last_foreground_time_region{};
Renderer_TransferSharedLastForegroundTime_ParamsDataView input_data_view(params, message);
if (success && !input_data_view.ReadLastForegroundTimeRegion(&p_last_foreground_time_region))
success = false;
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 2, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->TransferSharedLastForegroundTime(
std::move(p_last_foreground_time_region));
return true;
}
case messages::Renderer::kOnNetworkConnectionChanged: {
DCHECK(message->is_serialized());
internal::Renderer_OnNetworkConnectionChanged_Params_Data* params =
reinterpret_cast<internal::Renderer_OnNetworkConnectionChanged_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.3
bool success = true;
::net::NetworkChangeNotifier::ConnectionType p_connection_type{};
double p_max_bandwidth_mbps{};
Renderer_OnNetworkConnectionChanged_ParamsDataView input_data_view(params, message);
if (success && !input_data_view.ReadConnectionType(&p_connection_type))
success = false;
if (success)
p_max_bandwidth_mbps = input_data_view.max_bandwidth_mbps();
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 3, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->OnNetworkConnectionChanged(
std::move(p_connection_type),
std::move(p_max_bandwidth_mbps));
return true;
}
case messages::Renderer::kOnNetworkQualityChanged: {
DCHECK(message->is_serialized());
internal::Renderer_OnNetworkQualityChanged_Params_Data* params =
reinterpret_cast<internal::Renderer_OnNetworkQualityChanged_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.4
bool success = true;
::net::EffectiveConnectionType p_effective_connection_type{};
::base::TimeDelta p_http_rtt{};
::base::TimeDelta p_transport_rtt{};
double p_bandwidth_kbps{};
Renderer_OnNetworkQualityChanged_ParamsDataView input_data_view(params, message);
if (success && !input_data_view.ReadEffectiveConnectionType(&p_effective_connection_type))
success = false;
if (success && !input_data_view.ReadHttpRtt(&p_http_rtt))
success = false;
if (success && !input_data_view.ReadTransportRtt(&p_transport_rtt))
success = false;
if (success)
p_bandwidth_kbps = input_data_view.bandwidth_kbps();
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 4, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->OnNetworkQualityChanged(
std::move(p_effective_connection_type),
std::move(p_http_rtt),
std::move(p_transport_rtt),
std::move(p_bandwidth_kbps));
return true;
}
case messages::Renderer::kSetWebKitSharedTimersSuspended: {
DCHECK(message->is_serialized());
internal::Renderer_SetWebKitSharedTimersSuspended_Params_Data* params =
reinterpret_cast<internal::Renderer_SetWebKitSharedTimersSuspended_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.5
bool success = true;
bool p_suspend{};
Renderer_SetWebKitSharedTimersSuspended_ParamsDataView input_data_view(params, message);
if (success)
p_suspend = input_data_view.suspend();
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 5, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->SetWebKitSharedTimersSuspended(
std::move(p_suspend));
return true;
}
case messages::Renderer::kUpdateScrollbarTheme: {
DCHECK(message->is_serialized());
internal::Renderer_UpdateScrollbarTheme_Params_Data* params =
reinterpret_cast<internal::Renderer_UpdateScrollbarTheme_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.6
bool success = true;
UpdateScrollbarThemeParamsPtr p_params{};
Renderer_UpdateScrollbarTheme_ParamsDataView input_data_view(params, message);
if (success && !input_data_view.ReadParams(&p_params))
success = false;
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 6, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->UpdateScrollbarTheme(
std::move(p_params));
return true;
}
case messages::Renderer::kOnSystemColorsChanged: {
DCHECK(message->is_serialized());
internal::Renderer_OnSystemColorsChanged_Params_Data* params =
reinterpret_cast<internal::Renderer_OnSystemColorsChanged_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.7
bool success = true;
int32_t p_aqua_color_variant{};
Renderer_OnSystemColorsChanged_ParamsDataView input_data_view(params, message);
if (success)
p_aqua_color_variant = input_data_view.aqua_color_variant();
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 7, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->OnSystemColorsChanged(
std::move(p_aqua_color_variant));
return true;
}
case messages::Renderer::kUpdateSystemColorInfo: {
DCHECK(message->is_serialized());
internal::Renderer_UpdateSystemColorInfo_Params_Data* params =
reinterpret_cast<internal::Renderer_UpdateSystemColorInfo_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.8
bool success = true;
UpdateSystemColorInfoParamsPtr p_params{};
Renderer_UpdateSystemColorInfo_ParamsDataView input_data_view(params, message);
if (success && !input_data_view.ReadParams(&p_params))
success = false;
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 8, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->UpdateSystemColorInfo(
std::move(p_params));
return true;
}
case messages::Renderer::kPurgePluginListCache: {
DCHECK(message->is_serialized());
internal::Renderer_PurgePluginListCache_Params_Data* params =
reinterpret_cast<internal::Renderer_PurgePluginListCache_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.9
bool success = true;
bool p_reload_pages{};
Renderer_PurgePluginListCache_ParamsDataView input_data_view(params, message);
if (success)
p_reload_pages = input_data_view.reload_pages();
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 9, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->PurgePluginListCache(
std::move(p_reload_pages));
return true;
}
case messages::Renderer::kPurgeResourceCache: {
break;
}
case messages::Renderer::kSetProcessState: {
DCHECK(message->is_serialized());
internal::Renderer_SetProcessState_Params_Data* params =
reinterpret_cast<internal::Renderer_SetProcessState_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.11
bool success = true;
::base::Process::Priority p_process_priority{};
RenderProcessVisibleState p_visible_state{};
Renderer_SetProcessState_ParamsDataView input_data_view(params, message);
if (success && !input_data_view.ReadProcessPriority(&p_process_priority))
success = false;
if (success && !input_data_view.ReadVisibleState(&p_visible_state))
success = false;
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 11, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->SetProcessState(
std::move(p_process_priority),
std::move(p_visible_state));
return true;
}
case messages::Renderer::kSetIsLockedToSite: {
DCHECK(message->is_serialized());
internal::Renderer_SetIsLockedToSite_Params_Data* params =
reinterpret_cast<internal::Renderer_SetIsLockedToSite_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.12
bool success = true;
Renderer_SetIsLockedToSite_ParamsDataView input_data_view(params, message);
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 12, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->SetIsLockedToSite( );
return true;
}
case messages::Renderer::kSetIsCrossOriginIsolated: {
DCHECK(message->is_serialized());
internal::Renderer_SetIsCrossOriginIsolated_Params_Data* params =
reinterpret_cast<internal::Renderer_SetIsCrossOriginIsolated_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.13
bool success = true;
bool p_value{};
Renderer_SetIsCrossOriginIsolated_ParamsDataView input_data_view(params, message);
if (success)
p_value = input_data_view.value();
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 13, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->SetIsCrossOriginIsolated(
std::move(p_value));
return true;
}
case messages::Renderer::kSetIsWebSecurityDisabled: {
DCHECK(message->is_serialized());
internal::Renderer_SetIsWebSecurityDisabled_Params_Data* params =
reinterpret_cast<internal::Renderer_SetIsWebSecurityDisabled_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.14
bool success = true;
bool p_value{};
Renderer_SetIsWebSecurityDisabled_ParamsDataView input_data_view(params, message);
if (success)
p_value = input_data_view.value();
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 14, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->SetIsWebSecurityDisabled(
std::move(p_value));
return true;
}
case messages::Renderer::kSetIsIsolatedContext: {
DCHECK(message->is_serialized());
internal::Renderer_SetIsIsolatedContext_Params_Data* params =
reinterpret_cast<internal::Renderer_SetIsIsolatedContext_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.15
bool success = true;
bool p_value{};
Renderer_SetIsIsolatedContext_ParamsDataView input_data_view(params, message);
if (success)
p_value = input_data_view.value();
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 15, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->SetIsIsolatedContext(
std::move(p_value));
return true;
}
case messages::Renderer::kSetWebUIResourceUrlToCodeCacheMap: {
DCHECK(message->is_serialized());
internal::Renderer_SetWebUIResourceUrlToCodeCacheMap_Params_Data* params =
reinterpret_cast<internal::Renderer_SetWebUIResourceUrlToCodeCacheMap_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.16
bool success = true;
base::flat_map<::GURL, int32_t> p_resource_map{};
Renderer_SetWebUIResourceUrlToCodeCacheMap_ParamsDataView input_data_view(params, message);
if (success && !input_data_view.ReadResourceMap(&p_resource_map))
success = false;
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 16, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->SetWebUIResourceUrlToCodeCacheMap(
std::move(p_resource_map));
return true;
}
case messages::Renderer::kInitializeRenderer: {
DCHECK(message->is_serialized());
internal::Renderer_InitializeRenderer_Params_Data* params =
reinterpret_cast<internal::Renderer_InitializeRenderer_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.17
bool success = true;
std::string p_user_agent{};
::blink::UserAgentMetadata p_metadata{};
std::vector<std::string> p_cors_exempt_header_list{};
::blink::mojom::OriginTrialsSettingsPtr p_origin_trials_settings{};
uint64_t p_trace_id{};
Renderer_InitializeRenderer_ParamsDataView input_data_view(params, message);
if (success && !input_data_view.ReadUserAgent(&p_user_agent))
success = false;
if (success && !input_data_view.ReadMetadata(&p_metadata))
success = false;
if (success && !input_data_view.ReadCorsExemptHeaderList(&p_cors_exempt_header_list))
success = false;
if (success && !input_data_view.ReadOriginTrialsSettings(&p_origin_trials_settings))
success = false;
if (success)
p_trace_id = input_data_view.trace_id();
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 17, false);
return false;
}
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->InitializeRenderer(
std::move(p_user_agent),
std::move(p_metadata),
std::move(p_cors_exempt_header_list),
std::move(p_origin_trials_settings),
std::move(p_trace_id));
return true;
}
}
return false;
}
// static
bool RendererStubDispatch::AcceptWithResponder(
Renderer* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) {
[[maybe_unused]] const bool message_is_sync =
message->has_flag(mojo::Message::kFlagIsSync);
[[maybe_unused]] const uint64_t request_id = message->request_id();
switch (static_cast<messages::Renderer>(message->header()->name)) {
case messages::Renderer::kCreateAgentSchedulingGroup: {
break;
}
case messages::Renderer::kCreateAssociatedAgentSchedulingGroup: {
break;
}
case messages::Renderer::kTransferSharedLastForegroundTime: {
break;
}
case messages::Renderer::kOnNetworkConnectionChanged: {
break;
}
case messages::Renderer::kOnNetworkQualityChanged: {
break;
}
case messages::Renderer::kSetWebKitSharedTimersSuspended: {
break;
}
case messages::Renderer::kUpdateScrollbarTheme: {
break;
}
case messages::Renderer::kOnSystemColorsChanged: {
break;
}
case messages::Renderer::kUpdateSystemColorInfo: {
break;
}
case messages::Renderer::kPurgePluginListCache: {
break;
}
case messages::Renderer::kPurgeResourceCache: {
internal::Renderer_PurgeResourceCache_Params_Data* params =
reinterpret_cast<
internal::Renderer_PurgeResourceCache_Params_Data*>(
message->mutable_payload());
// Validation for Renderer.10
bool success = true;
Renderer_PurgeResourceCache_ParamsDataView input_data_view(params, message);
if (!success) {
ReportValidationErrorForMessage(
message,
mojo::internal::VALIDATION_ERROR_DESERIALIZATION_FAILED,
Renderer::Name_, 10, false);
return false;
}
auto callback =
Renderer_PurgeResourceCache_ProxyToResponder::CreateCallback(
*message, std::move(responder));
// A null |impl| means no implementation was bound.
DCHECK(impl);
impl->PurgeResourceCache(std::move(callback));
return true;
}
case messages::Renderer::kSetProcessState: {
break;
}
case messages::Renderer::kSetIsLockedToSite: {
break;
}
case messages::Renderer::kSetIsCrossOriginIsolated: {
break;
}
case messages::Renderer::kSetIsWebSecurityDisabled: {
break;
}
case messages::Renderer::kSetIsIsolatedContext: {
break;
}
case messages::Renderer::kSetWebUIResourceUrlToCodeCacheMap: {
break;
}
case messages::Renderer::kInitializeRenderer: {
break;
}
}
return false;
}
namespace {
} // namespace
static const mojo::internal::GenericValidationInfo kRendererValidationInfo[] = {
{ &internal::Renderer_CreateAgentSchedulingGroup_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_CreateAssociatedAgentSchedulingGroup_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_TransferSharedLastForegroundTime_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_OnNetworkConnectionChanged_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_OnNetworkQualityChanged_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_SetWebKitSharedTimersSuspended_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_UpdateScrollbarTheme_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_OnSystemColorsChanged_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_UpdateSystemColorInfo_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_PurgePluginListCache_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_PurgeResourceCache_Params_Data::Validate,
&internal::Renderer_PurgeResourceCache_ResponseParams_Data::Validate},
{ &internal::Renderer_SetProcessState_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_SetIsLockedToSite_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_SetIsCrossOriginIsolated_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_SetIsWebSecurityDisabled_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_SetIsIsolatedContext_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_SetWebUIResourceUrlToCodeCacheMap_Params_Data::Validate,
nullptr /* no response */},
{ &internal::Renderer_InitializeRenderer_Params_Data::Validate,
nullptr /* no response */},
};
bool RendererRequestValidator::Accept(mojo::Message* message) {
return mojo::internal::ValidateRequestGenericPacked(
message,
::content::mojom::Renderer::Name_,
kRendererValidationInfo);
}
bool RendererResponseValidator::Accept(mojo::Message* message) {
return mojo::internal::ValidateResponseGenericPacked(
message,
::content::mojom::Renderer::Name_,
kRendererValidationInfo);
}
} // content::mojom
namespace mojo {
// static
bool StructTraits<::content::mojom::UpdateScrollbarThemeParams::DataView, ::content::mojom::UpdateScrollbarThemeParamsPtr>::Read(
::content::mojom::UpdateScrollbarThemeParams::DataView input,
::content::mojom::UpdateScrollbarThemeParamsPtr* output) {
bool success = true;
::content::mojom::UpdateScrollbarThemeParamsPtr result(::content::mojom::UpdateScrollbarThemeParams::New());
if (success)
result->has_initial_button_delay = input.has_initial_button_delay();
if (success)
result->initial_button_delay = input.initial_button_delay();
if (success)
result->has_autoscroll_button_delay = input.has_autoscroll_button_delay();
if (success)
result->autoscroll_button_delay = input.autoscroll_button_delay();
if (success)
result->jump_on_track_click = input.jump_on_track_click();
if (success && !input.ReadPreferredScrollerStyle(&result->preferred_scroller_style))
success = false;
if (success)
result->redraw = input.redraw();
if (success)
result->scroll_view_rubber_banding = input.scroll_view_rubber_banding();
*output = std::move(result);
return success;
}
// static
bool StructTraits<::content::mojom::UpdateSystemColorInfoParams::DataView, ::content::mojom::UpdateSystemColorInfoParamsPtr>::Read(
::content::mojom::UpdateSystemColorInfoParams::DataView input,
::content::mojom::UpdateSystemColorInfoParamsPtr* output) {
bool success = true;
::content::mojom::UpdateSystemColorInfoParamsPtr result(::content::mojom::UpdateSystemColorInfoParams::New());
if (success) {
result->accent_color = input.accent_color();
}
*output = std::move(result);
return success;
}
} // namespace mojo
// Symbols declared in the -test-utils.h header are defined here instead of a
// separate .cc file to save compile time.
namespace content::mojom {
void RendererInterceptorForTesting::CreateAgentSchedulingGroup(::mojo::PendingReceiver<::IPC::mojom::ChannelBootstrap> bootstrap) {
GetForwardingInterface()->CreateAgentSchedulingGroup(
std::move(bootstrap)
);
}
void RendererInterceptorForTesting::CreateAssociatedAgentSchedulingGroup(::mojo::PendingAssociatedReceiver<::content::mojom::AgentSchedulingGroup> agent_scheduling_group) {
GetForwardingInterface()->CreateAssociatedAgentSchedulingGroup(
std::move(agent_scheduling_group)
);
}
void RendererInterceptorForTesting::TransferSharedLastForegroundTime(::base::ReadOnlySharedMemoryRegion last_foreground_time_region) {
GetForwardingInterface()->TransferSharedLastForegroundTime(
std::move(last_foreground_time_region)
);
}
void RendererInterceptorForTesting::OnNetworkConnectionChanged(::net::NetworkChangeNotifier::ConnectionType connection_type, double max_bandwidth_mbps) {
GetForwardingInterface()->OnNetworkConnectionChanged(
std::move(connection_type)
,
std::move(max_bandwidth_mbps)
);
}
void RendererInterceptorForTesting::OnNetworkQualityChanged(::net::EffectiveConnectionType effective_connection_type, ::base::TimeDelta http_rtt, ::base::TimeDelta transport_rtt, double bandwidth_kbps) {
GetForwardingInterface()->OnNetworkQualityChanged(
std::move(effective_connection_type)
,
std::move(http_rtt)
,
std::move(transport_rtt)
,
std::move(bandwidth_kbps)
);
}
void RendererInterceptorForTesting::SetWebKitSharedTimersSuspended(bool suspend) {
GetForwardingInterface()->SetWebKitSharedTimersSuspended(
std::move(suspend)
);
}
void RendererInterceptorForTesting::UpdateScrollbarTheme(UpdateScrollbarThemeParamsPtr params) {
GetForwardingInterface()->UpdateScrollbarTheme(
std::move(params)
);
}
void RendererInterceptorForTesting::OnSystemColorsChanged(int32_t aqua_color_variant) {
GetForwardingInterface()->OnSystemColorsChanged(
std::move(aqua_color_variant)
);
}
void RendererInterceptorForTesting::UpdateSystemColorInfo(UpdateSystemColorInfoParamsPtr params) {
GetForwardingInterface()->UpdateSystemColorInfo(
std::move(params)
);
}
void RendererInterceptorForTesting::PurgePluginListCache(bool reload_pages) {
GetForwardingInterface()->PurgePluginListCache(
std::move(reload_pages)
);
}
void RendererInterceptorForTesting::PurgeResourceCache(PurgeResourceCacheCallback callback) {
GetForwardingInterface()->PurgeResourceCache(std::move(callback));
}
void RendererInterceptorForTesting::SetProcessState(::base::Process::Priority process_priority, RenderProcessVisibleState visible_state) {
GetForwardingInterface()->SetProcessState(
std::move(process_priority)
,
std::move(visible_state)
);
}
void RendererInterceptorForTesting::SetIsLockedToSite() {
GetForwardingInterface()->SetIsLockedToSite();
}
void RendererInterceptorForTesting::SetIsCrossOriginIsolated(bool value) {
GetForwardingInterface()->SetIsCrossOriginIsolated(
std::move(value)
);
}
void RendererInterceptorForTesting::SetIsWebSecurityDisabled(bool value) {
GetForwardingInterface()->SetIsWebSecurityDisabled(
std::move(value)
);
}
void RendererInterceptorForTesting::SetIsIsolatedContext(bool value) {
GetForwardingInterface()->SetIsIsolatedContext(
std::move(value)
);
}
void RendererInterceptorForTesting::SetWebUIResourceUrlToCodeCacheMap(const base::flat_map<::GURL, int32_t>& resource_map) {
GetForwardingInterface()->SetWebUIResourceUrlToCodeCacheMap(
std::move(resource_map)
);
}
void RendererInterceptorForTesting::InitializeRenderer(const std::string& user_agent, const ::blink::UserAgentMetadata& metadata, const std::vector<std::string>& cors_exempt_header_list, ::blink::mojom::OriginTrialsSettingsPtr origin_trials_settings, uint64_t trace_id) {
GetForwardingInterface()->InitializeRenderer(
std::move(user_agent)
,
std::move(metadata)
,
std::move(cors_exempt_header_list)
,
std::move(origin_trials_settings)
,
std::move(trace_id)
);
}
RendererAsyncWaiter::RendererAsyncWaiter(
Renderer* proxy) : proxy_(proxy) {}
RendererAsyncWaiter::~RendererAsyncWaiter() = default;
void RendererAsyncWaiter::PurgeResourceCache(
) {
base::RunLoop loop;
proxy_->PurgeResourceCache(
base::BindOnce(
[](base::RunLoop* loop) {
loop->Quit();
},
&loop));
loop.Run();
}
} // content::mojom
#if defined(__clang__)
#pragma clang diagnostic pop
#endif