Loading services/core/java/com/android/server/display/color/TintController.java +29 −10 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.server.display.color; import android.animation.ValueAnimator; import android.content.Context; import android.util.Slog; import com.android.internal.annotations.GuardedBy; import java.io.PrintWriter; Loading @@ -29,47 +30,65 @@ abstract class TintController { */ private static final long TRANSITION_DURATION = 3000L; private final Object mLock = new Object(); @GuardedBy("mLock") private ValueAnimator mAnimator; @GuardedBy("mLock") private Boolean mIsActivated; public ValueAnimator getAnimator() { synchronized (mLock) { return mAnimator; } } public void setAnimator(ValueAnimator animator) { synchronized (mLock) { mAnimator = animator; } } /** * Cancel the animator if it's still running. */ public void cancelAnimator() { synchronized (mLock) { if (mAnimator != null) { mAnimator.cancel(); } } } /** * End the animator if it's still running, jumping to the end state. */ public void endAnimator() { synchronized (mLock) { if (mAnimator != null) { mAnimator.end(); mAnimator = null; } } } public void setActivated(Boolean isActivated) { synchronized (mLock) { mIsActivated = isActivated; } } public boolean isActivated() { synchronized (mLock) { return mIsActivated != null && mIsActivated; } } public boolean isActivatedStateNotSet() { synchronized (mLock) { return mIsActivated == null; } } public long getTransitionDurationMilliseconds() { return TRANSITION_DURATION; Loading Loading
services/core/java/com/android/server/display/color/TintController.java +29 −10 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.server.display.color; import android.animation.ValueAnimator; import android.content.Context; import android.util.Slog; import com.android.internal.annotations.GuardedBy; import java.io.PrintWriter; Loading @@ -29,47 +30,65 @@ abstract class TintController { */ private static final long TRANSITION_DURATION = 3000L; private final Object mLock = new Object(); @GuardedBy("mLock") private ValueAnimator mAnimator; @GuardedBy("mLock") private Boolean mIsActivated; public ValueAnimator getAnimator() { synchronized (mLock) { return mAnimator; } } public void setAnimator(ValueAnimator animator) { synchronized (mLock) { mAnimator = animator; } } /** * Cancel the animator if it's still running. */ public void cancelAnimator() { synchronized (mLock) { if (mAnimator != null) { mAnimator.cancel(); } } } /** * End the animator if it's still running, jumping to the end state. */ public void endAnimator() { synchronized (mLock) { if (mAnimator != null) { mAnimator.end(); mAnimator = null; } } } public void setActivated(Boolean isActivated) { synchronized (mLock) { mIsActivated = isActivated; } } public boolean isActivated() { synchronized (mLock) { return mIsActivated != null && mIsActivated; } } public boolean isActivatedStateNotSet() { synchronized (mLock) { return mIsActivated == null; } } public long getTransitionDurationMilliseconds() { return TRANSITION_DURATION; Loading