Merge "[framework] Modify scalePreview in WallpaperService" into tm-qpr-dev am: 92bfd06a4e am: 5f6eba35f3

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20749681

Change-Id: Ie324efd544aec2ec6a5c6f21fe85369ad599e272
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
George Lin
2022-12-20 01:25:56 +00:00
committed by Automerger Merge Worker
2 changed files with 10 additions and 17 deletions

View File

@@ -42,7 +42,7 @@ interface IWallpaperEngine {
@UnsupportedAppUsage
oneway void destroy();
oneway void setZoomOut(float scale);
oneway void scalePreview(in Rect positionInWindow);
oneway void resizePreview(in Rect positionInWindow);
oneway void removeLocalColorsAreas(in List<RectF> regions);
oneway void addLocalColorsAreas(in List<RectF> regions);
SurfaceControl mirrorSurfaceControl();

View File

@@ -163,7 +163,7 @@ public abstract class WallpaperService extends Service {
private static final int MSG_TOUCH_EVENT = 10040;
private static final int MSG_REQUEST_WALLPAPER_COLORS = 10050;
private static final int MSG_ZOOM = 10100;
private static final int MSG_SCALE_PREVIEW = 10110;
private static final int MSG_RESIZE_PREVIEW = 10110;
private static final int MSG_REPORT_SHOWN = 10150;
private static final int MSG_UPDATE_DIMMING = 10200;
private static final int MSG_WALLPAPER_FLAGS_CHANGED = 10210;
@@ -322,7 +322,7 @@ public abstract class WallpaperService extends Service {
@Override
public void setFixedSize(int width, int height) {
if (!mFixedSizeAllowed) {
if (!mFixedSizeAllowed && !mIWallpaperEngine.mIsPreview) {
// Regular apps can't do this. It can only work for
// certain designs of window animations, so you can't
// rely on it.
@@ -1406,16 +1406,9 @@ public abstract class WallpaperService extends Service {
}
}
private void scalePreview(Rect position) {
if (isPreview() && mPreviewSurfacePosition == null && position != null
|| mPreviewSurfacePosition != null
&& !mPreviewSurfacePosition.equals(position)) {
mPreviewSurfacePosition = position;
if (mSurfaceControl.isValid()) {
reposition();
} else {
updateSurface(false, false, false);
}
private void resizePreview(Rect position) {
if (position != null) {
mSurfaceHolder.setFixedSize(position.width(), position.height());
}
}
@@ -2351,8 +2344,8 @@ public abstract class WallpaperService extends Service {
mCaller.sendMessage(msg);
}
public void scalePreview(Rect position) {
Message msg = mCaller.obtainMessageO(MSG_SCALE_PREVIEW, position);
public void resizePreview(Rect position) {
Message msg = mCaller.obtainMessageO(MSG_RESIZE_PREVIEW, position);
mCaller.sendMessage(msg);
}
@@ -2439,8 +2432,8 @@ public abstract class WallpaperService extends Service {
case MSG_UPDATE_DIMMING:
mEngine.updateWallpaperDimming(Float.intBitsToFloat(message.arg1));
break;
case MSG_SCALE_PREVIEW:
mEngine.scalePreview((Rect) message.obj);
case MSG_RESIZE_PREVIEW:
mEngine.resizePreview((Rect) message.obj);
break;
case MSG_VISIBILITY_CHANGED:
if (DEBUG) Log.v(TAG, "Visibility change in " + mEngine