Loading core/java/android/service/rotationresolver/RotationResolverService.java +11 −3 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import android.os.IBinder; import android.os.ICancellationSignal; import android.os.Looper; import android.os.RemoteException; import android.os.SystemClock; import android.view.Surface; import java.lang.annotation.Retention; Loading Loading @@ -136,12 +137,16 @@ public abstract class RotationResolverService extends Service { @MainThread private void resolveRotation(IRotationResolverCallback callback, RotationResolutionRequest request, ICancellationSignal transport) { // If there is a valid, uncancelled pending callback running in process, the new rotation // resolution request will be rejected immediately with a failure result. if (mPendingCallback != null && (mCancellationSignal == null || !mCancellationSignal.isCanceled())) { && (mCancellationSignal == null || !mCancellationSignal.isCanceled()) && (SystemClock.uptimeMillis() < mPendingCallback.mExpirationTime)) { reportFailures(callback, ROTATION_RESULT_FAILURE_PREEMPTED); return; } mPendingCallback = new RotationResolverCallbackWrapper(callback, this); mPendingCallback = new RotationResolverCallbackWrapper(callback, this, SystemClock.uptimeMillis() + request.getTimeoutMillis()); mCancellationSignal = CancellationSignal.fromTransport(transport); onResolveRotation(request, mCancellationSignal, mPendingCallback); Loading Loading @@ -224,12 +229,15 @@ public abstract class RotationResolverService extends Service { @NonNull private final Handler mHandler; private final long mExpirationTime; private RotationResolverCallbackWrapper( @NonNull android.service.rotationresolver.IRotationResolverCallback callback, RotationResolverService service) { RotationResolverService service, long expirationTime) { mCallback = callback; mService = service; mHandler = service.mMainThreadHandler; mExpirationTime = expirationTime; Objects.requireNonNull(mHandler); } Loading Loading
core/java/android/service/rotationresolver/RotationResolverService.java +11 −3 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import android.os.IBinder; import android.os.ICancellationSignal; import android.os.Looper; import android.os.RemoteException; import android.os.SystemClock; import android.view.Surface; import java.lang.annotation.Retention; Loading Loading @@ -136,12 +137,16 @@ public abstract class RotationResolverService extends Service { @MainThread private void resolveRotation(IRotationResolverCallback callback, RotationResolutionRequest request, ICancellationSignal transport) { // If there is a valid, uncancelled pending callback running in process, the new rotation // resolution request will be rejected immediately with a failure result. if (mPendingCallback != null && (mCancellationSignal == null || !mCancellationSignal.isCanceled())) { && (mCancellationSignal == null || !mCancellationSignal.isCanceled()) && (SystemClock.uptimeMillis() < mPendingCallback.mExpirationTime)) { reportFailures(callback, ROTATION_RESULT_FAILURE_PREEMPTED); return; } mPendingCallback = new RotationResolverCallbackWrapper(callback, this); mPendingCallback = new RotationResolverCallbackWrapper(callback, this, SystemClock.uptimeMillis() + request.getTimeoutMillis()); mCancellationSignal = CancellationSignal.fromTransport(transport); onResolveRotation(request, mCancellationSignal, mPendingCallback); Loading Loading @@ -224,12 +229,15 @@ public abstract class RotationResolverService extends Service { @NonNull private final Handler mHandler; private final long mExpirationTime; private RotationResolverCallbackWrapper( @NonNull android.service.rotationresolver.IRotationResolverCallback callback, RotationResolverService service) { RotationResolverService service, long expirationTime) { mCallback = callback; mService = service; mHandler = service.mMainThreadHandler; mExpirationTime = expirationTime; Objects.requireNonNull(mHandler); } Loading