1.修改动画横屏显示
--- a/mt8788/frameworks/base/cmds/bootanimation/BootAnimation.cpp
+++ b/mt8788/frameworks/base/cmds/bootanimation/BootAnimation.cpp
@@ -261,13 +261,13 @@ status_t BootAnimation::readyToRun() {
// create the native surface
sp<SurfaceControl> control = session()->createSurface(String8("BootAnimation"),
- dinfo.w, dinfo.h, PIXEL_FORMAT_RGB_565);
+ dinfo.h, dinfo.w, PIXEL_FORMAT_RGB_565);
SurfaceComposerClient::Transaction t;
//Neostra dangziming add for bug 1069
/// M: The tablet rotation maybe 90/270 degrees, so set the lcm config for tablet
//SurfaceComposerClient::setDisplayProjection(dtoken, DisplayState::eOrientationDefault, Rect(dinfo.w, dinfo.h), Rect(dinfo.w, dinfo.h));
- t.setDisplayProjection(dtoken, DisplayState::eOrientationDefault, Rect(dinfo.w, dinfo.h), Rect(dinfo.w, dinfo.h));//add by mtk
+ t.setDisplayProjection(dtoken, DisplayState::eOrientation270, Rect(dinfo.h, dinfo.w), Rect(dinfo.h, dinfo.w));//add by mtk
t.apply();//add by mtk
//Neostra dangziming end for bug 1069
t.setLayer(control, 0x40000000)
2.开机后默认固定横屏
--- a/mt8788/frameworks/base/core/java/com/android/internal/view/RotationPolicy.java
+++ b/mt8788/frameworks/base/core/java/com/android/internal/view/RotationPolicy.java
@@ -42,7 +42,7 @@ public final class RotationPolicy {
private static final String TAG = "RotationPolicy";
private static final int CURRENT_ROTATION = -1;
- public static final int NATURAL_ROTATION = Surface.ROTATION_0;
+ public static final int NATURAL_ROTATION = Surface.ROTATION_270;
private RotationPolicy() {
}
3.上层修改系统横屏方向
Android P修改文件
--- a/mt8788/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
+++ b/mt8788/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java
@@ -7638,7 +7638,7 @@ public class PhoneWindowManager implements WindowManagerPolicy {
if (preferredRotation >= 0) {
return preferredRotation;
}
- return Surface.ROTATION_0;
+ return Surface.ROTATION_270;
}
}
3.1 Android P 修改的文件
--- a/mt8788/frameworks/base/services/core/java/com/android/server/wm/DisplayContent.java
+++ b/mt8788/frameworks/base/services/core/java/com/android/server/wm/DisplayContent.java
@@ -264,7 +264,7 @@ class DisplayContent extends WindowContainer<DisplayContent.DisplayChildWindowCo
*
* @see #updateRotationUnchecked()
*/
- private int mRotation = 0;
+ private int mRotation = 3;
/**
* Last applied orientation of the display.
3.2Android O 修改的文件
frameworks/base/services/core/java/com/android/server/wm/WindowManagerService.java
ynchronized(mWindowMap) {
final DisplayContent displayContent = getDefaultDisplayContentLocked();
if (mMaxUiWidth > 0) {
displayContent.setMaxUiWidth(mMaxUiWidth);
}
readForcedDisplayPropertiesLocked(displayContent);
mDisplayReady = true;
displayContent.setRotation(3);//修改这个值
//getDefaultDisplayContentLocked().setRotation(2);
}