Merge "Use parent frame to update wallpaper offset" into tm-qpr-dev

This commit is contained in:
Riddle Hsu
2023-01-11 07:26:36 +00:00
committed by Android (Google) Code Review
3 changed files with 6 additions and 9 deletions

View File

@@ -371,7 +371,7 @@ class WallpaperController {
boolean updateWallpaperOffset(WindowState wallpaperWin, boolean sync) {
// Size of the display the wallpaper is rendered on.
final Rect lastWallpaperBounds = wallpaperWin.getLastReportedBounds();
final Rect lastWallpaperBounds = wallpaperWin.getParentFrame();
// Full size of the wallpaper (usually larger than bounds above to parallax scroll when
// swiping through Launcher pages).
final Rect wallpaperFrame = wallpaperWin.getFrame();

View File

@@ -3081,12 +3081,6 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP
return mLastReportedConfiguration.getMergedConfiguration();
}
/** Returns the last window configuration bounds reported to the client. */
Rect getLastReportedBounds() {
final Rect bounds = getLastReportedConfiguration().windowConfiguration.getBounds();
return !bounds.isEmpty() ? bounds : getBounds();
}
void adjustStartingWindowFlags() {
if (mAttrs.type == TYPE_BASE_APPLICATION && mActivityRecord != null
&& mActivityRecord.mStartingWindow != null) {
@@ -4421,6 +4415,9 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP
pw.print("null");
}
if (mXOffset != 0 || mYOffset != 0) {
pw.println(prefix + "mXOffset=" + mXOffset + " mYOffset=" + mYOffset);
}
if (mHScale != 1 || mVScale != 1) {
pw.println(prefix + "mHScale=" + mHScale
+ " mVScale=" + mVScale);
@@ -5573,7 +5570,7 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP
mSurfacePosition);
if (mWallpaperScale != 1f) {
final Rect bounds = getLastReportedBounds();
final Rect bounds = getParentFrame();
Matrix matrix = mTmpMatrix;
matrix.setTranslate(mXOffset, mYOffset);
matrix.postScale(mWallpaperScale, mWallpaperScale, bounds.exactCenterX(),

View File

@@ -391,7 +391,7 @@ public class WallpaperControllerTests extends WindowTestsBase {
dc.updateOrientation();
dc.sendNewConfiguration();
spyOn(wallpaperWindow);
doReturn(new Rect(0, 0, width, height)).when(wallpaperWindow).getLastReportedBounds();
doReturn(new Rect(0, 0, width, height)).when(wallpaperWindow).getParentFrame();
}
@Test