Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 93a238d1 authored by Tiger Huang's avatar Tiger Huang Committed by Android (Google) Code Review
Browse files

Merge "Send size-compat scale to the client" into tm-qpr-dev

parents e2d4dcf0 c77eaf87
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -88,6 +88,7 @@ public class WindowAddRemovePerfTest extends WindowManagerPerfTestBase
        final InsetsState mOutInsetsState = new InsetsState();
        final InsetsState mOutInsetsState = new InsetsState();
        final InsetsSourceControl[] mOutControls = new InsetsSourceControl[0];
        final InsetsSourceControl[] mOutControls = new InsetsSourceControl[0];
        final Rect mOutAttachedFrame = new Rect();
        final Rect mOutAttachedFrame = new Rect();
        final float[] mOutSizeCompatScale = { 1f };


        TestWindow() {
        TestWindow() {
            mLayoutParams.setTitle(TestWindow.class.getName());
            mLayoutParams.setTitle(TestWindow.class.getName());
@@ -106,7 +107,7 @@ public class WindowAddRemovePerfTest extends WindowManagerPerfTestBase
                long startTime = SystemClock.elapsedRealtimeNanos();
                long startTime = SystemClock.elapsedRealtimeNanos();
                session.addToDisplay(this, mLayoutParams, View.VISIBLE,
                session.addToDisplay(this, mLayoutParams, View.VISIBLE,
                        Display.DEFAULT_DISPLAY, mRequestedVisibilities, inputChannel,
                        Display.DEFAULT_DISPLAY, mRequestedVisibilities, inputChannel,
                        mOutInsetsState, mOutControls, mOutAttachedFrame);
                        mOutInsetsState, mOutControls, mOutAttachedFrame, mOutSizeCompatScale);
                final long elapsedTimeNsOfAdd = SystemClock.elapsedRealtimeNanos() - startTime;
                final long elapsedTimeNsOfAdd = SystemClock.elapsedRealtimeNanos() - startTime;
                state.addExtraResult("add", elapsedTimeNsOfAdd);
                state.addExtraResult("add", elapsedTimeNsOfAdd);


+9 −0
Original line number Original line Diff line number Diff line
@@ -460,6 +460,15 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu
        setDisplayWindowingMode(WINDOWING_MODE_UNDEFINED);
        setDisplayWindowingMode(WINDOWING_MODE_UNDEFINED);
    }
    }


    /** @hide */
    public void scale(float scale) {
        mBounds.scale(scale);
        mMaxBounds.scale(scale);
        if (mAppBounds != null) {
            mAppBounds.scale(scale);
        }
    }

    /**
    /**
     * Copies the fields from delta into this Configuration object, keeping
     * Copies the fields from delta into this Configuration object, keeping
     * track of which ones have changed. Any undefined fields in {@code delta}
     * track of which ones have changed. Any undefined fields in {@code delta}
+1 −6
Original line number Original line Diff line number Diff line
@@ -551,12 +551,7 @@ public class CompatibilityInfo implements Parcelable {
        if (isScalingRequired()) {
        if (isScalingRequired()) {
            float invertedRatio = applicationInvertedScale;
            float invertedRatio = applicationInvertedScale;
            inoutConfig.densityDpi = (int)((inoutConfig.densityDpi * invertedRatio) + .5f);
            inoutConfig.densityDpi = (int)((inoutConfig.densityDpi * invertedRatio) + .5f);
            inoutConfig.windowConfiguration.getMaxBounds().scale(invertedRatio);
            inoutConfig.windowConfiguration.scale(invertedRatio);
            inoutConfig.windowConfiguration.getBounds().scale(invertedRatio);
            final Rect appBounds = inoutConfig.windowConfiguration.getAppBounds();
            if (appBounds != null) {
                appBounds.scale(invertedRatio);
            }
        }
        }
    }
    }


+1 −1
Original line number Original line Diff line number Diff line
@@ -1134,7 +1134,7 @@ public abstract class WallpaperService extends Service {


                        if (mSession.addToDisplay(mWindow, mLayout, View.VISIBLE,
                        if (mSession.addToDisplay(mWindow, mLayout, View.VISIBLE,
                                mDisplay.getDisplayId(), mRequestedVisibilities, inputChannel,
                                mDisplay.getDisplayId(), mRequestedVisibilities, inputChannel,
                                mInsetsState, mTempControls, new Rect()) < 0) {
                                mInsetsState, mTempControls, new Rect(), new float[1]) < 0) {
                            Log.w(TAG, "Failed to add window while updating wallpaper surface.");
                            Log.w(TAG, "Failed to add window while updating wallpaper surface.");
                            return;
                            return;
                        }
                        }
+4 −3
Original line number Original line Diff line number Diff line
@@ -50,15 +50,16 @@ interface IWindowSession {
    int addToDisplay(IWindow window, in WindowManager.LayoutParams attrs,
    int addToDisplay(IWindow window, in WindowManager.LayoutParams attrs,
            in int viewVisibility, in int layerStackId, in InsetsVisibilities requestedVisibilities,
            in int viewVisibility, in int layerStackId, in InsetsVisibilities requestedVisibilities,
            out InputChannel outInputChannel, out InsetsState insetsState,
            out InputChannel outInputChannel, out InsetsState insetsState,
            out InsetsSourceControl[] activeControls, out Rect attachedFrame);
            out InsetsSourceControl[] activeControls, out Rect attachedFrame,
            out float[] sizeCompatScale);
    int addToDisplayAsUser(IWindow window, in WindowManager.LayoutParams attrs,
    int addToDisplayAsUser(IWindow window, in WindowManager.LayoutParams attrs,
            in int viewVisibility, in int layerStackId, in int userId,
            in int viewVisibility, in int layerStackId, in int userId,
            in InsetsVisibilities requestedVisibilities, out InputChannel outInputChannel,
            in InsetsVisibilities requestedVisibilities, out InputChannel outInputChannel,
            out InsetsState insetsState, out InsetsSourceControl[] activeControls,
            out InsetsState insetsState, out InsetsSourceControl[] activeControls,
            out Rect attachedFrame);
            out Rect attachedFrame, out float[] sizeCompatScale);
    int addToDisplayWithoutInputChannel(IWindow window, in WindowManager.LayoutParams attrs,
    int addToDisplayWithoutInputChannel(IWindow window, in WindowManager.LayoutParams attrs,
            in int viewVisibility, in int layerStackId, out InsetsState insetsState,
            in int viewVisibility, in int layerStackId, out InsetsState insetsState,
            out Rect attachedFrame);
            out Rect attachedFrame, out float[] sizeCompatScale);
    @UnsupportedAppUsage
    @UnsupportedAppUsage
    void remove(IWindow window);
    void remove(IWindow window);


Loading