naiveproxy/services/device/public/mojom/screen_orientation.mojom

36 lines
1.5 KiB
Plaintext
Raw Normal View History

2018-08-11 08:35:24 +03:00
// Copyright 2016 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 device.mojom;
import "services/device/public/mojom/screen_orientation_lock_types.mojom";
interface ScreenOrientation {
LockOrientation(ScreenOrientationLockType orientation) =>
(ScreenOrientationLockResult result);
UnlockOrientation();
};
// ScreenOrientationListener is expected to be used when the platform requires
// heavy work in order to accurately know the screen orientation.
// For example, on Android, this is required for Jelly Bean, where there is no
// API to be notified of a screen orientation change of 180 degrees.
interface ScreenOrientationListener {
// The renderer process is now using the Screen Orientation API and informs
// the browser process that it should start accurately listening to the screen
// orientation if it wasn't already.
Start();
// The renderer process is no longer using the Screen Orientation API and
// informs the browser process that it can stop accurately listening to the
// screen orientation if no other process cares about it.
Stop();
// Queries whether accelerometer auto rotation of screen orientation is
// enabled, or the user has locked the screen orientation at the OS level.
// This can be called at any time, whether or not the listener is started.
// It's currently only implemented on Android.
IsAutoRotateEnabledByUser() => (bool enabled);
};