Loading services/core/java/com/android/server/wm/ActivityRecord.java +2 −1 Original line number Diff line number Diff line Loading @@ -4622,7 +4622,8 @@ final class ActivityRecord extends WindowToken { return true; } else if (fromActivity.mStartingData != null) { if (fromActivity.mStartingData instanceof SnapshotStartingData && !isStartingOrientationCompatible(fromActivity)) { && (!isStartingOrientationCompatible(fromActivity) || !(((SnapshotStartingData) fromActivity.mStartingData).isValid()))) { // Do not transfer because the snapshot will be distorted in different orientation. return false; } Loading services/core/java/com/android/server/wm/SnapshotStartingData.java +4 −0 Original line number Diff line number Diff line Loading @@ -49,4 +49,8 @@ class SnapshotStartingData extends StartingData { boolean hasImeSurface() { return mSnapshot.hasImeSurface(); } boolean isValid() { return !mSnapshot.getHardwareBuffer().isClosed(); } } Loading
services/core/java/com/android/server/wm/ActivityRecord.java +2 −1 Original line number Diff line number Diff line Loading @@ -4622,7 +4622,8 @@ final class ActivityRecord extends WindowToken { return true; } else if (fromActivity.mStartingData != null) { if (fromActivity.mStartingData instanceof SnapshotStartingData && !isStartingOrientationCompatible(fromActivity)) { && (!isStartingOrientationCompatible(fromActivity) || !(((SnapshotStartingData) fromActivity.mStartingData).isValid()))) { // Do not transfer because the snapshot will be distorted in different orientation. return false; } Loading
services/core/java/com/android/server/wm/SnapshotStartingData.java +4 −0 Original line number Diff line number Diff line Loading @@ -49,4 +49,8 @@ class SnapshotStartingData extends StartingData { boolean hasImeSurface() { return mSnapshot.hasImeSurface(); } boolean isValid() { return !mSnapshot.getHardwareBuffer().isClosed(); } }