Home | History | Annotate | Download | only in app
      1 package com.android.camera.app;
      2 
      3 import android.os.Handler;
      4 import android.view.OrientationEventListener;
      5 
      6 /**
      7  * An interface which defines the orientation manager.
      8  */
      9 public interface OrientationManager {
     10     public final static int ORIENTATION_UNKNOWN = OrientationEventListener.ORIENTATION_UNKNOWN;
     11 
     12     public interface OnOrientationChangeListener {
     13         /**
     14          * Called when the orientation changes.
     15          *
     16          * @param orientation The current orientation.
     17          */
     18         public void onOrientationChanged(int orientation);
     19     }
     20 
     21     /**
     22      * Adds the
     23      * {@link com.android.camera.app.OrientationManager.OnOrientationChangeListener}.
     24      */
     25     public void addOnOrientationChangeListener(
     26             Handler handler, OnOrientationChangeListener listener);
     27 
     28     /**
     29      * Removes the listener.
     30      */
     31     public void removeOnOrientationChangeListener(
     32             Handler handler, OnOrientationChangeListener listener);
     33 
     34     /**
     35      * Lock the framework orientation to the current device orientation
     36      * rotates. No effect if the system setting of auto-rotation is off.
     37      */
     38     void lockOrientation();
     39 
     40     /**
     41      * Unlock the framework orientation, so it can change when the device
     42      * rotates. No effect if the system setting of auto-rotation is off.
     43      */
     44     void unlockOrientation();
     45 
     46     /** @return Whether the orientation is locked by the app or the system. */
     47     boolean isOrientationLocked();
     48 
     49     /**
     50      * Returns the display rotation degrees relative to the natural orientation
     51      * in clockwise.
     52      *
     53      * @return 0, 90, 180, or 270.
     54      */
     55     int getDisplayRotation();
     56 }
     57