Merge "WM/ViewRootImpl: Fix convertFromTranslucent to respect existing state." into qt-dev

This commit is contained in:
Rob Carr
2019-05-07 19:31:36 +00:00
committed by Android (Google) Code Review
2 changed files with 6 additions and 2 deletions

View File

@@ -8271,6 +8271,7 @@ public final class ViewRootImpl implements ViewParent,
void changeCanvasOpacity(boolean opaque) {
Log.d(mTag, "changeCanvasOpacity: opaque=" + opaque);
opaque = opaque & ((mView.mPrivateFlags & View.PFLAG_REQUEST_TRANSPARENT_REGIONS) == 0);
if (mAttachInfo.mThreadedRenderer != null) {
mAttachInfo.mThreadedRenderer.setOpaque(opaque);
}

View File

@@ -137,6 +137,7 @@ import android.database.ContentObserver;
import android.graphics.Bitmap;
import android.graphics.Insets;
import android.graphics.Matrix;
import android.graphics.PixelFormat;
import android.graphics.Point;
import android.graphics.Rect;
import android.graphics.RectF;
@@ -2604,9 +2605,11 @@ public class WindowManagerService extends IWindowManager.Stub
final AppWindowToken wtoken = mRoot.getAppWindowToken(token);
if (wtoken != null) {
final WindowState win = wtoken.findMainWindow();
if (win != null) {
win.mWinAnimator.setOpaqueLocked(isOpaque);
if (win == null) {
return;
}
isOpaque = isOpaque & !PixelFormat.formatHasAlpha(win.getAttrs().format);
win.mWinAnimator.setOpaqueLocked(isOpaque);
}
}