Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(88)

Unified Diff: components/arc/common/app.mojom

Issue 1523643002: arc-bridge: Move most methods to Mojo interfaces (Closed) Base URL: https://chromium.googlesource.com/a/chromium/src.git@master
Patch Set: Rebased to ToT Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « components/arc/arc_bridge_service_unittest.cc ('k') | components/arc/common/arc_bridge.mojom » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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,
+ 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.
+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);
+};
« no previous file with comments | « components/arc/arc_bridge_service_unittest.cc ('k') | components/arc/common/arc_bridge.mojom » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698