#ifndef ASH_DISPLAY_SCREEN_ORIENTATION_CONTROLLER_TEST_API_H_
#define ASH_DISPLAY_SCREEN_ORIENTATION_CONTROLLER_TEST_API_H_
#include "ash/display/display_configuration_controller.h"
#include "base/memory/raw_ptr.h"
#include "chromeos/ui/base/display_util.h"
#include "ui/display/display.h"
namespace ash {
class ScreenOrientationController;
class ScreenOrientationControllerTestApi {
public:
explicit ScreenOrientationControllerTestApi(
ScreenOrientationController* controller);
ScreenOrientationControllerTestApi(
const ScreenOrientationControllerTestApi&) = delete;
ScreenOrientationControllerTestApi& operator=(
const ScreenOrientationControllerTestApi&) = delete;
void SetDisplayRotation(
display::Display::Rotation rotation,
display::Display::RotationSource source,
DisplayConfigurationController::RotationAnimation mode =
DisplayConfigurationController::ANIMATION_ASYNC);
void SetRotationLocked(bool rotation_locked);
chromeos::OrientationType UserLockedOrientation() const;
chromeos::OrientationType GetCurrentOrientation() const;
void UpdateNaturalOrientation();
bool IsAutoRotationAllowed() const;
private:
raw_ptr<ScreenOrientationController> controller_;
};
}
#endif