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

Commit 56c560a9 authored by Andreas Gampe's avatar Andreas Gampe
Browse files

Frameworks/base: Move Animation.USE_CLOSEGUARD to inner class

Move flag to inner class to isolate Animation. This allows compile-
time initialization of Animation and subclasses.

Bug: 27265238
Change-Id: I3d95ab77e87de0c033f97545609461bdc9bd5d61
parent 70dc7e2f
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -93,8 +93,12 @@ public abstract class Animation implements Cloneable {
     */
    public static final int ZORDER_BOTTOM = -1;

    private static final boolean USE_CLOSEGUARD
    // Use a preload holder to isolate static initialization into inner class, which allows
    // Animation and its subclasses to be compile-time initialized.
    private static class NoImagePreloadHolder {
        public static final boolean USE_CLOSEGUARD
                = SystemProperties.getBoolean("log.closeguard.Animation", false);
    }

    /**
     * Set by {@link #getTransformation(long, Transformation)} when the animation ends.
@@ -859,7 +863,7 @@ public abstract class Animation implements Cloneable {
            if (!mStarted) {
                fireAnimationStart();
                mStarted = true;
                if (USE_CLOSEGUARD) {
                if (NoImagePreloadHolder.USE_CLOSEGUARD) {
                    guard.open("cancel or detach or getTransformation");
                }
            }