diff options
| -rw-r--r-- | services/core/java/com/android/server/policy/PhoneWindowManager.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/policy/PhoneWindowManager.java b/services/core/java/com/android/server/policy/PhoneWindowManager.java index 31dd67311aab..21cb325cc3e0 100644 --- a/services/core/java/com/android/server/policy/PhoneWindowManager.java +++ b/services/core/java/com/android/server/policy/PhoneWindowManager.java @@ -2308,9 +2308,13 @@ public class PhoneWindowManager implements WindowManagerPolicy { // http://developer.android.com/guide/practices/screens_support.html#range // For car, ignore the dp limitation. It's physically impossible to rotate the car's screen // so if the orientation is forced, we need to respect that no matter what. - boolean isCar = mContext.getPackageManager().hasSystemFeature( + final boolean isCar = mContext.getPackageManager().hasSystemFeature( PackageManager.FEATURE_AUTOMOTIVE); - mForceDefaultOrientation = ((longSizeDp >= 960 && shortSizeDp >= 720) || isCar) && + // For TV, it's usually 960dp x 540dp, ignore the size limitation. + // so if the orientation is forced, we need to respect that no matter what. + final boolean isTv = mContext.getPackageManager().hasSystemFeature( + PackageManager.FEATURE_LEANBACK); + mForceDefaultOrientation = ((longSizeDp >= 960 && shortSizeDp >= 720) || isCar || isTv) && res.getBoolean(com.android.internal.R.bool.config_forceDefaultOrientation) && // For debug purposes the next line turns this feature off with: // $ adb shell setprop config.override_forced_orient true |