1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef WebLockOrientationCallback_h
6 #define WebLockOrientationCallback_h
8 #include "public/platform/WebLockOrientationError.h"
9 #include "public/platform/WebScreenOrientationType.h"
13 // WebScreenOrientationType is an interface to be used by the embedder in order
14 // to inform Blink when a screen lock operation has succeeded or failed.
15 // A success notification comes with the new orientation angle and orientation
16 // type and a failure notification comes with an information about the type of
18 class WebLockOrientationCallback {
21 ErrorTypeNotAvailable, // If locking isn't available on the platform.
22 ErrorTypeFullScreenRequired, // If fullscreen is required to lock.
23 ErrorTypeCanceled, // If another lock/unlock got called before that one ended.
26 virtual ~WebLockOrientationCallback() { }
28 virtual void onSuccess(unsigned angle, WebScreenOrientationType) = 0;
30 // FIXME: those methods are defined and not virtual pure to not break the
31 // embedder during the transition period.
32 virtual void onError(ErrorType) { }
33 virtual void onError(WebLockOrientationError) { }
38 #endif // WebLockOrientationCallback_h