Android 12 Developer Preview is here! Try it out, and give us your feedback!

WindowInsetsAnimationControlListenerCompat

interface WindowInsetsAnimationControlListenerCompat
androidx.core.view.WindowInsetsAnimationControlListenerCompat

Listener that encapsulates a request to WindowInsetsControllerCompat#controlWindowInsetsAnimation.

Insets can be controlled with the supplied WindowInsetsAnimationControllerCompat from onReady until either onFinished or onCancelled.

Once the control over insets is finished or cancelled, it will not be regained until a new request to WindowInsetsControllerCompat#controlWindowInsetsAnimation is made.

The request to control insets can fail immediately. In that case onCancelled will be invoked without a preceding onReady.

Summary

Public methods
abstract Unit

Called when the request for control over the insets has been cancelled, either because the android.os.CancellationSignal associated with the request has been invoked, or the window has lost control over the insets (e.g. because it lost focus).

abstract Unit

Called when the request for control over the insets has finished.

abstract Unit
onReady(@NonNull controller: WindowInsetsAnimationControllerCompat, types: Int)

Called when the animation is ready to be controlled.

Public methods

onCancelled

abstract fun onCancelled(@Nullable controller: WindowInsetsAnimationControllerCompat?): Unit

Called when the request for control over the insets has been cancelled, either because the android.os.CancellationSignal associated with the request has been invoked, or the window has lost control over the insets (e.g. because it lost focus).

Once this callback is invoked, the supplied WindowInsetsAnimationControllerCompat is no longer ready.

Control will not be regained until a new request to WindowInsetsControllerCompat#controlWindowInsetsAnimation is made.

Parameters
controller WindowInsetsAnimationControllerCompat?: the controller which has been cancelled, or null if the request was cancelled before onReady was invoked.

onFinished

abstract fun onFinished(@NonNull controller: WindowInsetsAnimationControllerCompat): Unit

Called when the request for control over the insets has finished.

Once this callback is invoked, the supplied WindowInsetsAnimationControllerCompat is no longer ready.

Control will not be regained until a new request to WindowInsetsControllerCompat#controlWindowInsetsAnimation is made.

Parameters
controller WindowInsetsAnimationControllerCompat: the controller which has finished.

onReady

abstract fun onReady(
    @NonNull controller: WindowInsetsAnimationControllerCompat,
    types: Int
): Unit

Called when the animation is ready to be controlled. This may be delayed when the IME needs to redraw because of an EditorInfo change, or when the window is starting up.

Parameters
controller WindowInsetsAnimationControllerCompat: The controller to control the inset animation.
types Int: The Types it was able to gain control over. Note that this may be different than the types passed into WindowInsetsControllerCompat#controlWindowInsetsAnimation in case the window wasn't able to gain the controls because it wasn't the IME target or not currently the window that's controlling the system bars.