/**@class android.view.WindowInsetsAnimationController Interface to control a window inset animation frame-by-frame. @hide pending unhide */ var WindowInsetsAnimationController = { /**Retrieves the {@link Insets} when the windows this animation is controlling are fully hidden. <p> If there are any animation listeners registered, this value is the same as {@link android.view.WindowInsetsAnimationListener.InsetsAnimation#getLowerBound()} that will be passed into the callbacks. @return {Object {android.graphics.Insets}} Insets when the windows this animation is controlling are fully hidden. @see InsetsAnimation#getLowerBound() */ getHiddenStateInsets : function( ) {}, /**Retrieves the {@link Insets} when the windows this animation is controlling are fully shown. <p> In case the size of a window causing insets is changing in the middle of the animation, we execute that height change after this animation has finished. <p> If there are any animation listeners registered, this value is the same as {@link android.view.WindowInsetsAnimationListener.InsetsAnimation#getUpperBound()} that will be passed into the callbacks. @return {Object {android.graphics.Insets}} Insets when the windows this animation is controlling are fully shown. @see InsetsAnimation#getUpperBound() */ getShownStateInsets : function( ) {}, /** @return {Object {android.graphics.Insets}} The current insets on the window. These will follow any animation changes. */ getCurrentInsets : function( ) {}, /** @return {Number} The {@link InsetType}s this object is currently controlling. */ getTypes : function( ) {}, /**Modifies the insets by indirectly moving the windows around in the system that are causing window insets. <p> Note that this will <b>not</b> inform the view system of a full inset change via {@link android.view.View#dispatchApplyWindowInsets} in order to avoid a full layout pass during the animation. If you'd like to animate views during a window inset animation, register a {@link android.view.WindowInsetsAnimationListener} by calling {@link android.view.View#setWindowInsetsAnimationListener(WindowInsetsAnimationListener)} that will be notified about any insets change via {@link android.view.WindowInsetsAnimationListener#onProgress} during the animation. <p> {@link android.view.View#dispatchApplyWindowInsets} will instead be called once the animation has finished, i.e. once {@link #finish} has been called. @param {Object {Insets}} insets The new insets to apply. Based on the requested insets, the system will calculate the positions of the windows in the system causing insets such that the resulting insets of that configuration will match the passed in parameter. Note that these insets are being clamped to the range from {@link #getHiddenStateInsets} to {@link #getShownStateInsets} @see WindowInsetsAnimationListener @see View#setWindowInsetsAnimationListener(WindowInsetsAnimationListener) */ changeInsets : function( ) {}, /** @param {Number} shownTypes The list of windows causing insets that should remain shown after finishing the animation. */ finish : function( ) {}, };