| // Copyright 2021 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. |
| // |
| // Next MinVersion: 1 |
| |
| module arc.mojom; |
| |
| // Contains the types of resize lock setting status that overrides the state |
| // Android calculates. |
| // These values are persisted to logs. Entries should not be renumbered and |
| // numeric values should never be reused. |
| [Extensible] |
| enum ArcResizeLockState { |
| // The setting value is not set. |
| UNDEFINED = 0, |
| // Resize lock is ready to be turned on. The state must have this value first |
| // to be enabled. |
| READY = 1, |
| // Resize lock is enabled. |
| ON = 2, |
| // Resize lock is disabled via the Chrome OS settings. |
| OFF = 3, |
| // Resize lock is enabled, and even resize/resizability toggle is not |
| // available. |
| FULLY_LOCKED = 4, |
| }; |
| |
| // Interface for synchronizing the Chrome OS setting value for compatibility |
| // mode to Android. |
| // Compatibility mode is a special set of WM policies to enforce restrictions |
| // on apps that are not optimized for large screens. |
| // Next Method ID: 1 |
| interface CompatibilityModeInstance { |
| // Synchronizes the resize lock state of the given package name to Android. |
| SetResizeLockState@0(string package_name, |
| ArcResizeLockState state); |
| }; |