Chromium Code Reviews| Index: components/arc/common/app.mojom |
| diff --git a/components/arc/common/app.mojom b/components/arc/common/app.mojom |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..cc4b2e0df9e2db983ebea48c9d959eef1309af73 |
| --- /dev/null |
| +++ b/components/arc/common/app.mojom |
| @@ -0,0 +1,62 @@ |
| +// Copyright 2015 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. |
| + |
| +module arc; |
| + |
| +// Duplicates ui::ScaleFactor enum in order to be accessible on Android side. |
| +enum ScaleFactor { |
| + SCALE_FACTOR_NONE = 0, |
|
hidehiko
2015/12/16 18:34:03
nit: maybe it's time to remove the common prefix a
|
| + SCALE_FACTOR_100P, |
| + SCALE_FACTOR_125P, |
| + SCALE_FACTOR_133P, |
| + SCALE_FACTOR_140P, |
| + SCALE_FACTOR_150P, |
| + SCALE_FACTOR_180P, |
| + SCALE_FACTOR_200P, |
| + SCALE_FACTOR_250P, |
| + SCALE_FACTOR_300P, |
| + |
| + NUM_SCALE_FACTORS |
| +}; |
| + |
| +// Describes ARC app. |
| +struct AppInfo { |
| + string name; |
| + string package; |
| + string activity; |
| +}; |
| + |
| +interface AppHost { |
| + // Receives a list of available ARC apps to Chrome. Members of AppInfo must |
| + // contain non-empty string. |
| + OnAppListRefreshed(array<AppInfo> apps); |
| + |
| + // Receives an icon of required |scale_factor| for specific ARC app. The app |
| + // is defined by |package| and |activity|. The icon content cannot be empty |
| + // and must match to |scale_factor| assuming 48x48 for SCALE_FACTOR_100P. |
| + // |scale_factor| is an enum defined at ui/base/layout.h. |icon_png_data| is |
| + // a png-encoded image. |
| + OnAppIcon(string package, string activity, |
| + ScaleFactor scale_factor, array<uint8> icon_png_data); |
| +}; |
| + |
| +// TODO(lhchavez): Migrate all request/response messages to Mojo. |
|
hidehiko
2015/12/16 18:34:03
You've done already?
Luis Héctor Chávez
2015/12/16 19:09:49
What I want to be able to do is to change the meth
|
| +interface AppInstance { |
| + Init(AppHost host_ptr); |
| + |
| + // Sends a request to ARC to launch an ARC app defined by |package| and |
| + // |activity|, which cannot be empty. |
| + LaunchApp(string package, string activity); |
| + |
| + // Sends a request to ARC to refresh a list of ARC apps. |
| + // OnRefreshAppsList is expected in response to this message. However, |
| + // response may not be sent if ARC is not ready yet (boot completed event is |
| + // not received). |
| + RefreshAppList(); |
| + |
| + // Sends a request to ARC for the ARC app icon of a required scale factor. |
| + // Scale factor is an enum defined at ui/base/layout.h. App is defined by |
| + // package and activity, which cannot be empty. |
| + RequestAppIcon(string package, string activity, ScaleFactor scale_factor); |
| +}; |