| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // IPC messages for extensions. | 5 // IPC messages for extensions. |
| 6 // Multiply-included message file, hence no include guard. | 6 // Multiply-included message file, hence no include guard. |
| 7 | 7 |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <string> | 10 #include <string> |
| 11 #include <vector> | 11 #include <vector> |
| 12 | 12 |
| 13 #include "base/memory/shared_memory.h" | 13 #include "base/memory/shared_memory.h" |
| 14 #include "base/values.h" | 14 #include "base/values.h" |
| 15 #include "components/version_info/version_info.h" | 15 #include "components/version_info/version_info.h" |
| 16 #include "content/public/common/common_param_traits.h" | 16 #include "content/public/common/common_param_traits.h" |
| 17 #include "content/public/common/socket_permission_request.h" | 17 #include "content/public/common/socket_permission_request.h" |
| 18 #include "extensions/common/api/messaging/message.h" | 18 #include "extensions/common/api/messaging/message.h" |
| 19 #include "extensions/common/draggable_region.h" | 19 #include "extensions/common/draggable_region.h" |
| 20 #include "extensions/common/extension.h" | 20 #include "extensions/common/extension.h" |
| 21 #include "extensions/common/extensions_client.h" | 21 #include "extensions/common/extensions_client.h" |
| 22 #include "extensions/common/features/feature_session_type.h" |
| 22 #include "extensions/common/host_id.h" | 23 #include "extensions/common/host_id.h" |
| 23 #include "extensions/common/permissions/media_galleries_permission_data.h" | 24 #include "extensions/common/permissions/media_galleries_permission_data.h" |
| 24 #include "extensions/common/permissions/permission_set.h" | 25 #include "extensions/common/permissions/permission_set.h" |
| 25 #include "extensions/common/permissions/socket_permission_data.h" | 26 #include "extensions/common/permissions/socket_permission_data.h" |
| 26 #include "extensions/common/permissions/usb_device_permission_data.h" | 27 #include "extensions/common/permissions/usb_device_permission_data.h" |
| 27 #include "extensions/common/stack_frame.h" | 28 #include "extensions/common/stack_frame.h" |
| 28 #include "extensions/common/url_pattern.h" | 29 #include "extensions/common/url_pattern.h" |
| 29 #include "extensions/common/url_pattern_set.h" | 30 #include "extensions/common/url_pattern_set.h" |
| 30 #include "extensions/common/user_script.h" | 31 #include "extensions/common/user_script.h" |
| 31 #include "extensions/common/view_type.h" | 32 #include "extensions/common/view_type.h" |
| 32 #include "ipc/ipc_message_macros.h" | 33 #include "ipc/ipc_message_macros.h" |
| 33 #include "url/gurl.h" | 34 #include "url/gurl.h" |
| 34 | 35 |
| 35 #define IPC_MESSAGE_START ExtensionMsgStart | 36 #define IPC_MESSAGE_START ExtensionMsgStart |
| 36 | 37 |
| 37 IPC_ENUM_TRAITS_MAX_VALUE(extensions::ViewType, extensions::VIEW_TYPE_LAST) | 38 IPC_ENUM_TRAITS_MAX_VALUE(extensions::ViewType, extensions::VIEW_TYPE_LAST) |
| 38 IPC_ENUM_TRAITS_MAX_VALUE(content::SocketPermissionRequest::OperationType, | 39 IPC_ENUM_TRAITS_MAX_VALUE(content::SocketPermissionRequest::OperationType, |
| 39 content::SocketPermissionRequest::OPERATION_TYPE_LAST) | 40 content::SocketPermissionRequest::OPERATION_TYPE_LAST) |
| 40 | 41 |
| 41 IPC_ENUM_TRAITS_MAX_VALUE(extensions::UserScript::InjectionType, | 42 IPC_ENUM_TRAITS_MAX_VALUE(extensions::UserScript::InjectionType, |
| 42 extensions::UserScript::INJECTION_TYPE_LAST) | 43 extensions::UserScript::INJECTION_TYPE_LAST) |
| 43 | 44 |
| 44 IPC_ENUM_TRAITS_MAX_VALUE(extensions::UserScript::RunLocation, | 45 IPC_ENUM_TRAITS_MAX_VALUE(extensions::UserScript::RunLocation, |
| 45 extensions::UserScript::RUN_LOCATION_LAST - 1) | 46 extensions::UserScript::RUN_LOCATION_LAST - 1) |
| 46 | 47 |
| 47 IPC_ENUM_TRAITS_MAX_VALUE(HostID::HostType, HostID::HOST_TYPE_LAST) | 48 IPC_ENUM_TRAITS_MAX_VALUE(HostID::HostType, HostID::HOST_TYPE_LAST) |
| 48 IPC_ENUM_TRAITS_MAX_VALUE(version_info::Channel, version_info::Channel::STABLE) | 49 IPC_ENUM_TRAITS_MAX_VALUE(version_info::Channel, version_info::Channel::STABLE) |
| 50 IPC_ENUM_TRAITS_MAX_VALUE(extensions::FeatureSessionType, |
| 51 extensions::FEATURE_SESSION_TYPE_MAX) |
| 49 | 52 |
| 50 // Parameters structure for ExtensionHostMsg_AddAPIActionToActivityLog and | 53 // Parameters structure for ExtensionHostMsg_AddAPIActionToActivityLog and |
| 51 // ExtensionHostMsg_AddEventToActivityLog. | 54 // ExtensionHostMsg_AddEventToActivityLog. |
| 52 IPC_STRUCT_BEGIN(ExtensionHostMsg_APIActionOrEvent_Params) | 55 IPC_STRUCT_BEGIN(ExtensionHostMsg_APIActionOrEvent_Params) |
| 53 // API name. | 56 // API name. |
| 54 IPC_STRUCT_MEMBER(std::string, api_call) | 57 IPC_STRUCT_MEMBER(std::string, api_call) |
| 55 | 58 |
| 56 // List of arguments. | 59 // List of arguments. |
| 57 IPC_STRUCT_MEMBER(base::ListValue, arguments) | 60 IPC_STRUCT_MEMBER(base::ListValue, arguments) |
| 58 | 61 |
| (...skipping 550 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 609 // the sequential nature of IPCs so that the blob has already been caught. | 612 // the sequential nature of IPCs so that the blob has already been caught. |
| 610 // This is a separate control message, so that the renderer process will send | 613 // This is a separate control message, so that the renderer process will send |
| 611 // an acknowledgement even if the RenderView has closed or navigated away. | 614 // an acknowledgement even if the RenderView has closed or navigated away. |
| 612 IPC_MESSAGE_CONTROL1(ExtensionMsg_TransferBlobs, | 615 IPC_MESSAGE_CONTROL1(ExtensionMsg_TransferBlobs, |
| 613 std::vector<std::string> /* blob_uuids */) | 616 std::vector<std::string> /* blob_uuids */) |
| 614 | 617 |
| 615 // Report the WebView partition ID to the WebView guest renderer process. | 618 // Report the WebView partition ID to the WebView guest renderer process. |
| 616 IPC_MESSAGE_CONTROL1(ExtensionMsg_SetWebViewPartitionID, | 619 IPC_MESSAGE_CONTROL1(ExtensionMsg_SetWebViewPartitionID, |
| 617 std::string /* webview_partition_id */) | 620 std::string /* webview_partition_id */) |
| 618 | 621 |
| 622 // Sent on renderer process startup to indicate the user session type in which |
| 623 // the process is running. |
| 624 IPC_MESSAGE_CONTROL1(ExtensionMsg_SetUserSessionType, |
| 625 extensions::FeatureSessionType) |
| 626 |
| 619 // Messages sent from the renderer to the browser: | 627 // Messages sent from the renderer to the browser: |
| 620 | 628 |
| 621 // A renderer sends this message when an extension process starts an API | 629 // A renderer sends this message when an extension process starts an API |
| 622 // request. The browser will always respond with a ExtensionMsg_Response. | 630 // request. The browser will always respond with a ExtensionMsg_Response. |
| 623 IPC_MESSAGE_ROUTED1(ExtensionHostMsg_Request, | 631 IPC_MESSAGE_ROUTED1(ExtensionHostMsg_Request, |
| 624 ExtensionHostMsg_Request_Params) | 632 ExtensionHostMsg_Request_Params) |
| 625 | 633 |
| 626 // A renderer sends this message when an extension process starts an API | 634 // A renderer sends this message when an extension process starts an API |
| 627 // request. The browser will always respond with a ExtensionMsg_Response. | 635 // request. The browser will always respond with a ExtensionMsg_Response. |
| 628 IPC_MESSAGE_CONTROL2(ExtensionHostMsg_RequestForIOThread, | 636 IPC_MESSAGE_CONTROL2(ExtensionHostMsg_RequestForIOThread, |
| (...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 870 | 878 |
| 871 // The browser sends this message in response to all service worker extension | 879 // The browser sends this message in response to all service worker extension |
| 872 // api calls. The response data (if any) is one of the base::Value subclasses, | 880 // api calls. The response data (if any) is one of the base::Value subclasses, |
| 873 // wrapped as the first element in a ListValue. | 881 // wrapped as the first element in a ListValue. |
| 874 IPC_MESSAGE_CONTROL5(ExtensionMsg_ResponseWorker, | 882 IPC_MESSAGE_CONTROL5(ExtensionMsg_ResponseWorker, |
| 875 int /* thread_id */, | 883 int /* thread_id */, |
| 876 int /* request_id */, | 884 int /* request_id */, |
| 877 bool /* success */, | 885 bool /* success */, |
| 878 base::ListValue /* response wrapper (see comment above) */, | 886 base::ListValue /* response wrapper (see comment above) */, |
| 879 std::string /* error */) | 887 std::string /* error */) |
| OLD | NEW |