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 3 // found in the LICENSE file. 4 5 // IPC messages for the web manifest manager. 6 // Multiply-included message file, hence no include guard. 7 8 #include "content/common/content_export.h" 9 #include "content/public/common/manifest.h" 10 #include "ipc/ipc_message_macros.h" 11 12 #undef IPC_MESSAGE_EXPORT 13 #define IPC_MESSAGE_EXPORT CONTENT_EXPORT 14 15 #define IPC_MESSAGE_START ManifestManagerMsgStart 16 17 IPC_ENUM_TRAITS_MAX_VALUE(content::Manifest::DisplayMode, 18 content::Manifest::DISPLAY_MODE_BROWSER) 19 20 IPC_STRUCT_TRAITS_BEGIN(content::Manifest::Icon) 21 IPC_STRUCT_TRAITS_MEMBER(src) 22 IPC_STRUCT_TRAITS_MEMBER(type) 23 IPC_STRUCT_TRAITS_MEMBER(density) 24 IPC_STRUCT_TRAITS_MEMBER(sizes) 25 IPC_STRUCT_TRAITS_END() 26 27 IPC_STRUCT_TRAITS_BEGIN(content::Manifest) 28 IPC_STRUCT_TRAITS_MEMBER(name) 29 IPC_STRUCT_TRAITS_MEMBER(short_name) 30 IPC_STRUCT_TRAITS_MEMBER(start_url) 31 IPC_STRUCT_TRAITS_MEMBER(display) 32 IPC_STRUCT_TRAITS_MEMBER(orientation) 33 IPC_STRUCT_TRAITS_MEMBER(icons) 34 IPC_STRUCT_TRAITS_END() 35 36 // The browser process requests for the manifest linked with the associated 37 // render frame. The renderer process will respond via a RequestManifestResponse 38 // IPC message with a Manifest object attached to it and the associated 39 // |request_id| that was initially given. 40 IPC_MESSAGE_ROUTED1(ManifestManagerMsg_RequestManifest, 41 int /* request_id */) 42 43 // The renderer process' response to a RequestManifest. The |request_id| will 44 // match the one that was initially received. The |manifest| object will be an 45 // empty manifest in case of any failure. 46 IPC_MESSAGE_ROUTED2(ManifestManagerHostMsg_RequestManifestResponse, 47 int, /* request_id */ 48 content::Manifest /* manifest */) 49