| // Copyright 2013 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CONTENT_COMMON_FRAME_MESSAGES_H_ |
| #define CONTENT_COMMON_FRAME_MESSAGES_H_ |
| |
| // IPC messages for interacting with frames. |
| |
| #include <stddef.h> |
| #include <stdint.h> |
| |
| #include "base/optional.h" |
| #include "base/unguessable_token.h" |
| #include "build/build_config.h" |
| #include "cc/input/touch_action.h" |
| #include "components/viz/common/surfaces/surface_id.h" |
| #include "components/viz/common/surfaces/surface_info.h" |
| #include "content/common/buildflags.h" |
| #include "content/common/common_param_traits_macros.h" |
| #include "content/common/content_export.h" |
| #include "content/common/content_param_traits.h" |
| #include "content/common/navigation_gesture.h" |
| #include "content/common/navigation_params.h" |
| #include "content/public/common/common_param_traits.h" |
| #include "content/public/common/referrer.h" |
| #include "content/public/common/stop_find_action.h" |
| #include "content/public/common/three_d_api_types.h" |
| #include "ipc/ipc_channel_handle.h" |
| #include "ipc/ipc_message_macros.h" |
| #include "ipc/ipc_platform_file.h" |
| #include "mojo/public/cpp/system/message_pipe.h" |
| #include "ppapi/buildflags/buildflags.h" |
| #include "third_party/blink/public/common/context_menu_data/untrustworthy_context_menu_params.h" |
| #include "third_party/blink/public/common/frame/frame_policy.h" |
| #include "third_party/blink/public/common/frame/frame_visual_properties.h" |
| #include "third_party/blink/public/common/loader/previews_state.h" |
| #include "third_party/blink/public/common/messaging/message_port_channel.h" |
| #include "third_party/blink/public/common/navigation/impression.h" |
| #include "third_party/blink/public/common/navigation/navigation_policy.h" |
| #include "third_party/blink/public/common/page_state/page_state.h" |
| #include "third_party/blink/public/common/permissions_policy/permissions_policy.h" |
| #include "third_party/blink/public/mojom/choosers/file_chooser.mojom.h" |
| #include "third_party/blink/public/mojom/devtools/console_message.mojom.h" |
| #include "third_party/blink/public/mojom/favicon/favicon_url.mojom.h" |
| #include "third_party/blink/public/mojom/frame/blocked_navigation_types.mojom.h" |
| #include "third_party/blink/public/mojom/frame/frame_owner_properties.mojom.h" |
| #include "third_party/blink/public/mojom/frame/lifecycle.mojom.h" |
| #include "third_party/blink/public/mojom/frame/triggering_event_info.mojom-shared.h" |
| #include "third_party/blink/public/mojom/frame/user_activation_update_types.mojom.h" |
| #include "third_party/blink/public/mojom/loader/resource_load_info.mojom-shared.h" |
| #include "third_party/blink/public/mojom/manifest/display_mode.mojom.h" |
| #include "third_party/blink/public/mojom/permissions_policy/document_policy_feature.mojom.h" |
| #include "third_party/blink/public/mojom/permissions_policy/permissions_policy_feature.mojom-shared.h" |
| #include "third_party/blink/public/mojom/permissions_policy/policy_disposition.mojom.h" |
| #include "third_party/blink/public/mojom/scroll/scrollbar_mode.mojom.h" |
| #include "third_party/blink/public/mojom/web_feature/web_feature.mojom.h" |
| #include "third_party/blink/public/web/web_frame_owner_properties.h" |
| #include "ui/gfx/geometry/rect.h" |
| #include "ui/gfx/geometry/rect_f.h" |
| #include "ui/gfx/ipc/color/gfx_param_traits.h" |
| #include "ui/gfx/ipc/gfx_param_traits.h" |
| #include "url/gurl.h" |
| #include "url/origin.h" |
| |
| #if BUILDFLAG(ENABLE_PLUGINS) |
| #include "content/common/pepper_renderer_instance_data.h" |
| #endif |
| |
| #undef IPC_MESSAGE_EXPORT |
| #define IPC_MESSAGE_EXPORT CONTENT_EXPORT |
| |
| IPC_ENUM_TRAITS_MAX_VALUE(blink::mojom::ScrollbarMode, |
| blink::mojom::ScrollbarMode::kMaxValue) |
| IPC_ENUM_TRAITS_MAX_VALUE(content::StopFindAction, |
| content::STOP_FIND_ACTION_LAST) |
| IPC_ENUM_TRAITS(network::mojom::WebSandboxFlags) // Bitmask. |
| IPC_ENUM_TRAITS_MAX_VALUE(ui::MenuSourceType, ui::MENU_SOURCE_TYPE_LAST) |
| IPC_ENUM_TRAITS_MAX_VALUE(blink::mojom::PermissionsPolicyFeature, |
| blink::mojom::PermissionsPolicyFeature::kMaxValue) |
| IPC_ENUM_TRAITS_MAX_VALUE(blink::mojom::DocumentPolicyFeature, |
| blink::mojom::DocumentPolicyFeature::kMaxValue) |
| IPC_ENUM_TRAITS_MAX_VALUE(blink::mojom::UserActivationUpdateType, |
| blink::mojom::UserActivationUpdateType::kMaxValue) |
| IPC_ENUM_TRAITS_MAX_VALUE(blink::mojom::PolicyDisposition, |
| blink::mojom::PolicyDisposition::kMaxValue) |
| IPC_ENUM_TRAITS_MAX_VALUE(blink::mojom::FrameVisibility, |
| blink::mojom::FrameVisibility::kMaxValue) |
| IPC_ENUM_TRAITS_MAX_VALUE(blink::mojom::WebFeature, |
| blink::mojom::WebFeature::kMaxValue) |
| |
| IPC_STRUCT_TRAITS_BEGIN(blink::Impression) |
| IPC_STRUCT_TRAITS_MEMBER(conversion_destination) |
| IPC_STRUCT_TRAITS_MEMBER(reporting_origin) |
| IPC_STRUCT_TRAITS_MEMBER(impression_data) |
| IPC_STRUCT_TRAITS_MEMBER(expiry) |
| IPC_STRUCT_TRAITS_END() |
| |
| IPC_STRUCT_TRAITS_BEGIN(blink::FramePolicy) |
| IPC_STRUCT_TRAITS_MEMBER(sandbox_flags) |
| IPC_STRUCT_TRAITS_MEMBER(container_policy) |
| IPC_STRUCT_TRAITS_MEMBER(required_document_policy) |
| IPC_STRUCT_TRAITS_MEMBER(disallow_document_access) |
| IPC_STRUCT_TRAITS_END() |
| |
| IPC_STRUCT_TRAITS_BEGIN(blink::ScreenInfo) |
| IPC_STRUCT_TRAITS_MEMBER(device_scale_factor) |
| IPC_STRUCT_TRAITS_MEMBER(display_color_spaces) |
| IPC_STRUCT_TRAITS_MEMBER(depth) |
| IPC_STRUCT_TRAITS_MEMBER(depth_per_component) |
| IPC_STRUCT_TRAITS_MEMBER(is_monochrome) |
| IPC_STRUCT_TRAITS_MEMBER(display_frequency) |
| IPC_STRUCT_TRAITS_MEMBER(rect) |
| IPC_STRUCT_TRAITS_MEMBER(available_rect) |
| IPC_STRUCT_TRAITS_MEMBER(orientation_type) |
| IPC_STRUCT_TRAITS_MEMBER(orientation_angle) |
| IPC_STRUCT_TRAITS_END() |
| |
| IPC_STRUCT_TRAITS_BEGIN(blink::ParsedPermissionsPolicyDeclaration) |
| IPC_STRUCT_TRAITS_MEMBER(feature) |
| IPC_STRUCT_TRAITS_MEMBER(allowed_origins) |
| IPC_STRUCT_TRAITS_MEMBER(matches_all_origins) |
| IPC_STRUCT_TRAITS_MEMBER(matches_opaque_src) |
| IPC_STRUCT_TRAITS_END() |
| |
| // Adding a new message? Stick to the sort order above: first platform |
| // independent FrameMsg, then ifdefs for platform specific FrameMsg, then |
| // platform independent FrameHostMsg, then ifdefs for platform specific |
| // FrameHostMsg. |
| |
| #endif // CONTENT_COMMON_FRAME_MESSAGES_H_ |