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

Commit b14bfc32 authored by android-build-team Robot's avatar android-build-team Robot
Browse files

Snap for 7412503 from a0ecdaaf to sc-release

Change-Id: I93b3004094fba917a9cffe73342146f254c501b9
parents 291073f7 a0ecdaaf
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -44,6 +44,7 @@ import android.annotation.Nullable;
import android.content.res.CompatibilityInfo;
import android.graphics.Insets;
import android.graphics.Matrix;
import android.graphics.Point;
import android.graphics.Rect;
import android.util.ArraySet;
import android.util.Log;
@@ -203,6 +204,19 @@ public class InsetsAnimationControlImpl implements WindowInsetsAnimationControll
        mControllingTypes &= ~types;
    }

    @Override
    public void updateSurfacePosition(SparseArray<InsetsSourceControl> controls) {
        for (int i = controls.size() - 1; i >= 0; i--) {
            final InsetsSourceControl control = controls.valueAt(i);
            final InsetsSourceControl c = mControls.get(control.getType());
            if (c == null) {
                continue;
            }
            final Point position = control.getSurfacePosition();
            c.setSurfacePosition(position.x, position.y);
        }
    }

    @Override
    public @AnimationType int getAnimationType() {
        return mAnimationType;
+8 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package android.view;

import android.util.SparseArray;
import android.util.proto.ProtoOutputStream;
import android.view.InsetsController.AnimationType;
import android.view.InsetsState.InternalInsetsType;
@@ -44,6 +45,13 @@ public interface InsetsAnimationControlRunner {
     */
    void notifyControlRevoked(@InsetsType int types);

    /**
     * Updates the surface positions of the controls owned by this runner if there is any.
     *
     * @param controls An array of {@link InsetsSourceControl} that the caller newly receives.
     */
    void updateSurfacePosition(SparseArray<InsetsSourceControl> controls);

    /**
     * Cancels the animation.
     */
+17 −1
Original line number Diff line number Diff line
@@ -62,8 +62,13 @@ public class InsetsAnimationThreadControlRunner implements InsetsAnimationContro

        @Override
        public void scheduleApplyChangeInsets(InsetsAnimationControlRunner runner) {
            synchronized (mControl) {
                // This reads the surface position on the animation thread, but the surface position
                // would be updated on the UI thread, so we need this critical section.
                // See: updateSurfacePosition.
                mControl.applyChangeInsets(null /* outState */);
            }
        }

        @Override
        public void notifyFinished(InsetsAnimationControlRunner runner, boolean shown) {
@@ -148,10 +153,21 @@ public class InsetsAnimationThreadControlRunner implements InsetsAnimationContro
    }

    @Override
    @UiThread
    public void notifyControlRevoked(@InsetsType int types) {
        mControl.notifyControlRevoked(types);
    }

    @Override
    @UiThread
    public void updateSurfacePosition(SparseArray<InsetsSourceControl> controls) {
        synchronized (mControl) {
            // This is called from the UI thread, however, the surface position will be used on the
            // animation thread, so we need this critical section. See: scheduleApplyChangeInsets.
            mControl.updateSurfacePosition(controls);
        }
    }

    @Override
    @UiThread
    public void cancel() {
+6 −0
Original line number Diff line number Diff line
@@ -829,7 +829,13 @@ public class InsetsController implements WindowInsetsController, InsetsAnimation

                requestedStateStale = requestedVisibilityChanged || imeRequestedVisible;
            }
        }

        if (mTmpControlArray.size() > 0) {
            // Update surface positions for animations.
            for (int i = mRunningAnimations.size() - 1; i >= 0; i--) {
                mRunningAnimations.get(i).runner.updateSurfacePosition(mTmpControlArray);
            }
        }
        mTmpControlArray.clear();

+1 −1
Original line number Diff line number Diff line
@@ -5020,7 +5020,7 @@
    <string name="confirm_battery_saver">OK</string>

    <!-- [CHAR_LIMIT=NONE] Battery saver: Feature description, with a "learn more" link. -->
    <string name="battery_saver_description_with_learn_more">Battery Saver turns on Dark theme and limits or turns off background activity, some visual effects, certain features, and some network connections.\n\n<annotation id="url">Learn more</annotation></string>
    <string name="battery_saver_description_with_learn_more">Battery Saver turns on Dark theme and limits or turns off background activity, some visual effects, certain features, and some network connections.</string>

    <!-- [CHAR_LIMIT=NONE] Battery saver: Feature description, without a "learn more" link. -->
    <string name="battery_saver_description">Battery Saver turns on Dark theme and limits or turns off background activity, some visual effects, certain features, and some network connections.</string>
Loading