OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 // Messages sent from the ARC instance to the host. | 5 // Messages sent from the ARC instance to the host. |
6 // Multiply-included message file, hence no include guard. | 6 // Multiply-included message file, hence no include guard. |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
11 #include "ipc/ipc_message_macros.h" | 11 #include "ipc/ipc_message_macros.h" |
12 | 12 |
13 #include "components/arc/common/arc_message_types.h" | 13 // Using relative paths since this file is shared between chromium and android. |
| 14 #include "arc_message_types.h" |
| 15 #include "arc_notification_types.h" |
14 | 16 |
15 #define IPC_MESSAGE_START ArcInstanceHostMsgStart | 17 #define IPC_MESSAGE_START ArcInstanceHostMsgStart |
16 | 18 |
17 IPC_ENUM_TRAITS_MAX_VALUE(arc::InstanceBootPhase, arc::InstanceBootPhase::LAST) | 19 IPC_ENUM_TRAITS_MAX_VALUE(arc::InstanceBootPhase, arc::InstanceBootPhase::LAST) |
18 | 20 |
19 IPC_MESSAGE_CONTROL1(ArcInstanceHostMsg_InstanceBootPhase, | 21 IPC_MESSAGE_CONTROL1(ArcInstanceHostMsg_InstanceBootPhase, |
20 arc::InstanceBootPhase) | 22 arc::InstanceBootPhase) |
21 | 23 |
22 // Sends a list of available ARC apps to Chrome. Members of AppInfo must contain | 24 // Sends a list of available ARC apps to Chrome. Members of AppInfo must contain |
23 // non-empty string. This message is sent in response to | 25 // non-empty string. This message is sent in response to |
24 // ArcInstanceMsg_RefreshApps message from Chrome to ARC and when ARC receives | 26 // ArcInstanceMsg_RefreshApps message from Chrome to ARC and when ARC receives |
25 // boot completed notification. | 27 // boot completed notification. |
26 IPC_MESSAGE_CONTROL1(ArcInstanceHostMsg_AppListRefreshed, | 28 IPC_MESSAGE_CONTROL1(ArcInstanceHostMsg_AppListRefreshed, |
27 std::vector<arc::AppInfo> /* apps */) | 29 std::vector<arc::AppInfo> /* apps */) |
28 | 30 |
29 // Sends an icon of required |scale_factor| for specific ARC app. The app is | 31 // Sends an icon of required |scale_factor| for specific ARC app. The app is |
30 // defined by |package| and |activity|. The icon content cannot be empty and | 32 // defined by |package| and |activity|. The icon content cannot be empty and |
31 // must match to |scale_factor| assuming 48x48 for SCALE_FACTOR_100P. | 33 // must match to |scale_factor| assuming 48x48 for SCALE_FACTOR_100P. |
32 // |scale_factor| is an enum defined at ui/base/layout.h. This message is sent | 34 // |scale_factor| is an enum defined at ui/base/layout.h. This message is sent |
33 // in response to ArcInstanceMsg_RequestIcon from Chrome to ARC. | 35 // in response to ArcInstanceMsg_RequestIcon from Chrome to ARC. |
34 IPC_MESSAGE_CONTROL4(ArcInstanceHostMsg_AppIcon, | 36 IPC_MESSAGE_CONTROL4(ArcInstanceHostMsg_AppIcon, |
35 std::string, /* package */ | 37 std::string, /* package */ |
36 std::string, /* activity */ | 38 std::string, /* activity */ |
37 arc::ScaleFactor, /* scale_factor */ | 39 arc::ScaleFactor, /* scale_factor */ |
38 std::vector<uint8_t> /* icon_png_data */) | 40 std::vector<uint8_t> /* icon_png_data */) |
| 41 |
| 42 // Tells the Chrome that a notification is posted (created or updated) on |
| 43 // Android. |
| 44 // |notification_data| is the data of notification (id, texts, icon and ...). |
| 45 IPC_MESSAGE_CONTROL1(ArcInstanceHostMsg_NotificationPosted, |
| 46 arc::ArcNotificationData /* notification_data */); |
| 47 |
| 48 // Notifies that a notification is removed on Android. |
| 49 // |key| is the identifier of the notification. |
| 50 IPC_MESSAGE_CONTROL1(ArcInstanceHostMsg_NotificationRemoved, |
| 51 std::string /* key */); |
OLD | NEW |