Loading policy/src/com/android/internal/policy/impl/PhoneWindowManager.java +16 −0 Original line number Diff line number Diff line Loading @@ -342,6 +342,8 @@ public class PhoneWindowManager implements WindowManagerPolicy { int mUndockedHdmiRotation; int mDemoHdmiRotation; boolean mDemoHdmiRotationLock; int mDemoRotation; boolean mDemoRotationLock; boolean mWakeGestureEnabledSetting; MyWakeGestureListener mWakeGestureListener; Loading Loading @@ -1451,6 +1453,16 @@ public class PhoneWindowManager implements WindowManagerPolicy { } mDemoHdmiRotationLock = SystemProperties.getBoolean("persist.demo.hdmirotationlock", false); // For demo purposes, allow the rotation of the remote display to be controlled. // By default, remote display locks rotation to landscape. if ("portrait".equals(SystemProperties.get("persist.demo.remoterotation"))) { mDemoRotation = mPortraitRotation; } else { mDemoRotation = mLandscapeRotation; } mDemoRotationLock = SystemProperties.getBoolean( "persist.demo.rotationlock", false); // Only force the default orientation if the screen is xlarge, at least 960dp x 720dp, per // http://developer.android.com/guide/practices/screens_support.html#range mForceDefaultOrientation = longSizeDp >= 960 && shortSizeDp >= 720 && Loading Loading @@ -5319,6 +5331,10 @@ public class PhoneWindowManager implements WindowManagerPolicy { // full multi-display support). // Note that the dock orientation overrides the HDMI orientation. preferredRotation = mUndockedHdmiRotation; } else if (mDemoRotationLock) { // Ignore sensor when demo rotation lock is enabled. // Note that the dock orientation and HDMI rotation lock override this. preferredRotation = mDemoRotation; } else if (orientation == ActivityInfo.SCREEN_ORIENTATION_LOCKED) { // Application just wants to remain locked in the last rotation. preferredRotation = lastRotation; Loading services/core/java/com/android/server/display/VirtualDisplayAdapter.java +10 −0 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import android.media.projection.IMediaProjection; import android.media.projection.IMediaProjectionCallback; import android.os.Handler; import android.os.IBinder; import android.os.SystemProperties; import android.os.IBinder.DeathRecipient; import android.os.Message; import android.os.RemoteException; Loading Loading @@ -278,6 +279,15 @@ final class VirtualDisplayAdapter extends DisplayAdapter { } if ((mFlags & DisplayManager.VIRTUAL_DISPLAY_FLAG_PRESENTATION) != 0) { mInfo.flags |= DisplayDeviceInfo.FLAG_PRESENTATION; if ((mFlags & DisplayManager.VIRTUAL_DISPLAY_FLAG_PUBLIC) != 0) { // For demonstration purposes, allow rotation of the external display. // In the future we might allow the user to configure this directly. if ("portrait".equals(SystemProperties.get( "persist.demo.remoterotation"))) { mInfo.rotation = Surface.ROTATION_270; } } } mInfo.type = Display.TYPE_VIRTUAL; mInfo.touch = DisplayDeviceInfo.TOUCH_NONE; Loading Loading
policy/src/com/android/internal/policy/impl/PhoneWindowManager.java +16 −0 Original line number Diff line number Diff line Loading @@ -342,6 +342,8 @@ public class PhoneWindowManager implements WindowManagerPolicy { int mUndockedHdmiRotation; int mDemoHdmiRotation; boolean mDemoHdmiRotationLock; int mDemoRotation; boolean mDemoRotationLock; boolean mWakeGestureEnabledSetting; MyWakeGestureListener mWakeGestureListener; Loading Loading @@ -1451,6 +1453,16 @@ public class PhoneWindowManager implements WindowManagerPolicy { } mDemoHdmiRotationLock = SystemProperties.getBoolean("persist.demo.hdmirotationlock", false); // For demo purposes, allow the rotation of the remote display to be controlled. // By default, remote display locks rotation to landscape. if ("portrait".equals(SystemProperties.get("persist.demo.remoterotation"))) { mDemoRotation = mPortraitRotation; } else { mDemoRotation = mLandscapeRotation; } mDemoRotationLock = SystemProperties.getBoolean( "persist.demo.rotationlock", false); // Only force the default orientation if the screen is xlarge, at least 960dp x 720dp, per // http://developer.android.com/guide/practices/screens_support.html#range mForceDefaultOrientation = longSizeDp >= 960 && shortSizeDp >= 720 && Loading Loading @@ -5319,6 +5331,10 @@ public class PhoneWindowManager implements WindowManagerPolicy { // full multi-display support). // Note that the dock orientation overrides the HDMI orientation. preferredRotation = mUndockedHdmiRotation; } else if (mDemoRotationLock) { // Ignore sensor when demo rotation lock is enabled. // Note that the dock orientation and HDMI rotation lock override this. preferredRotation = mDemoRotation; } else if (orientation == ActivityInfo.SCREEN_ORIENTATION_LOCKED) { // Application just wants to remain locked in the last rotation. preferredRotation = lastRotation; Loading
services/core/java/com/android/server/display/VirtualDisplayAdapter.java +10 −0 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import android.media.projection.IMediaProjection; import android.media.projection.IMediaProjectionCallback; import android.os.Handler; import android.os.IBinder; import android.os.SystemProperties; import android.os.IBinder.DeathRecipient; import android.os.Message; import android.os.RemoteException; Loading Loading @@ -278,6 +279,15 @@ final class VirtualDisplayAdapter extends DisplayAdapter { } if ((mFlags & DisplayManager.VIRTUAL_DISPLAY_FLAG_PRESENTATION) != 0) { mInfo.flags |= DisplayDeviceInfo.FLAG_PRESENTATION; if ((mFlags & DisplayManager.VIRTUAL_DISPLAY_FLAG_PUBLIC) != 0) { // For demonstration purposes, allow rotation of the external display. // In the future we might allow the user to configure this directly. if ("portrait".equals(SystemProperties.get( "persist.demo.remoterotation"))) { mInfo.rotation = Surface.ROTATION_270; } } } mInfo.type = Display.TYPE_VIRTUAL; mInfo.touch = DisplayDeviceInfo.TOUCH_NONE; Loading