diff options
| -rw-r--r-- | core/java/android/view/ViewRootImpl.java | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index da6cd40a0c8c..c5a4d677e70e 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -9587,6 +9587,8 @@ public final class ViewRootImpl implements ViewParent, } mRemoved = true; mOnBackInvokedDispatcher.detachFromWindow(); + removeVrrMessages(); + if (mAdded) { dispatchDetachedFromWindow(); } @@ -12551,8 +12553,8 @@ public final class ViewRootImpl implements ViewParent, if (sToolkitFrameRateFunctionEnablingReadOnlyFlagValue) { mFrameRateTransaction.setFrameRateCategory(mSurfaceControl, frameRateCategory, false).applyAsyncUnsafe(); - mLastPreferredFrameRateCategory = frameRateCategory; } + mLastPreferredFrameRateCategory = frameRateCategory; } } catch (Exception e) { Log.e(mTag, "Unable to set frame rate category", e); @@ -12612,8 +12614,8 @@ public final class ViewRootImpl implements ViewParent, if (sToolkitFrameRateFunctionEnablingReadOnlyFlagValue) { mFrameRateTransaction.setFrameRate(mSurfaceControl, preferredFrameRate, mFrameRateCompatibility).applyAsyncUnsafe(); - mLastPreferredFrameRate = preferredFrameRate; } + mLastPreferredFrameRate = preferredFrameRate; } } catch (Exception e) { Log.e(mTag, "Unable to set frame rate", e); @@ -12855,4 +12857,10 @@ public final class ViewRootImpl implements ViewParent, mHasIdledMessage = true; } } + + private void removeVrrMessages() { + mHandler.removeMessages(MSG_TOUCH_BOOST_TIMEOUT); + mHandler.removeMessages(MSG_CHECK_INVALIDATION_IDLE); + mHandler.removeMessages(MSG_FRAME_RATE_SETTING); + } } |