.class public Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout; .super Landroid/view/ViewGroup; .source "SwipeRefreshLayout.java" # interfaces .implements Landroidx/core/view/NestedScrollingParent; .implements Landroidx/core/view/NestedScrollingChild; # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnChildScrollUpCallback;, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnRefreshListener; } .end annotation # static fields .field public static final ALPHA_ANIMATION_DURATION:I = 0x12c .field public static final ANIMATE_TO_START_DURATION:I = 0xc8 .field public static final ANIMATE_TO_TRIGGER_DURATION:I = 0xc8 .field public static final CIRCLE_BG_LIGHT:I = -0x50506 .field public static final CIRCLE_DIAMETER:I = 0x28 .annotation build Landroidx/annotation/VisibleForTesting; .end annotation .end field .field public static final CIRCLE_DIAMETER_LARGE:I = 0x38 .annotation build Landroidx/annotation/VisibleForTesting; .end annotation .end field .field public static final DECELERATE_INTERPOLATION_FACTOR:F = 2.0f .field public static final DEFAULT:I = 0x1 .field public static final DEFAULT_CIRCLE_TARGET:I = 0x40 .field public static final DEFAULT_SLINGSHOT_DISTANCE:I = -0x1 .field public static final DRAG_RATE:F = 0.5f .field public static final INVALID_POINTER:I = -0x1 .field public static final LARGE:I = 0x0 .field public static final LAYOUT_ATTRS:[I .field public static final LOG_TAG:Ljava/lang/String; .field public static final MAX_ALPHA:I = 0xff .field public static final MAX_PROGRESS_ANGLE:F = 0.8f .field public static final SCALE_DOWN_DURATION:I = 0x96 .field public static final STARTING_PROGRESS_ALPHA:I = 0x4c # instance fields .field public mActivePointerId:I .field public mAlphaMaxAnimation:Landroid/view/animation/Animation; .field public mAlphaStartAnimation:Landroid/view/animation/Animation; .field public final mAnimateToCorrectPosition:Landroid/view/animation/Animation; .field public final mAnimateToStartPosition:Landroid/view/animation/Animation; .field public mChildScrollUpCallback:Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnChildScrollUpCallback; .field public mCircleDiameter:I .field public mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; .field public mCircleViewIndex:I .field public mCurrentTargetOffsetTop:I .field public mCustomSlingshotDistance:I .field public final mDecelerateInterpolator:Landroid/view/animation/DecelerateInterpolator; .field public mFrom:I .field public mInitialDownY:F .field public mInitialMotionY:F .field public mIsBeingDragged:Z .field public mListener:Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnRefreshListener; .field public mMediumAnimationDuration:I .field public mNestedScrollInProgress:Z .field public final mNestedScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; .field public final mNestedScrollingParentHelper:Landroidx/core/view/NestedScrollingParentHelper; .field public mNotify:Z .field public mOriginalOffsetTop:I .field public final mParentOffsetInWindow:[I .field public final mParentScrollConsumed:[I .field public mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; .field public mRefreshListener:Landroid/view/animation/Animation$AnimationListener; .field public mRefreshing:Z .field public mReturningToStart:Z .field public mScale:Z .field public mScaleAnimation:Landroid/view/animation/Animation; .field public mScaleDownAnimation:Landroid/view/animation/Animation; .field public mScaleDownToStartAnimation:Landroid/view/animation/Animation; .field public mSpinnerOffsetEnd:I .field public mStartingScale:F .field public mTarget:Landroid/view/View; .field public mTotalDragDistance:F .field public mTotalUnconsumed:F .field public mTouchSlop:I .field public mUsingCustomStart:Z # direct methods .method public static constructor ()V .locals 3 const-class v0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout; invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String; move-result-object v0 sput-object v0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->LOG_TAG:Ljava/lang/String; const/4 v0, 0x1 new-array v0, v0, [I const/4 v1, 0x0 const v2, 0x101000e aput v2, v0, v1 sput-object v0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->LAYOUT_ATTRS:[I return-void .end method .method public constructor (Landroid/content/Context;)V .locals 1 .param p1 # Landroid/content/Context; .annotation build Landroidx/annotation/NonNull; .end annotation .end param const/4 v0, 0x0 invoke-direct {p0, p1, v0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->(Landroid/content/Context;Landroid/util/AttributeSet;)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;)V .locals 4 .param p1 # Landroid/content/Context; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/util/AttributeSet; .annotation build Landroidx/annotation/Nullable; .end annotation .end param invoke-direct {p0, p1, p2}, Landroid/view/ViewGroup;->(Landroid/content/Context;Landroid/util/AttributeSet;)V const/4 v0, 0x0 iput-boolean v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshing:Z const/high16 v1, -0x40800000 # -1.0f iput v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalDragDistance:F const/4 v1, 0x2 new-array v2, v1, [I iput-object v2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mParentScrollConsumed:[I new-array v1, v1, [I iput-object v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mParentOffsetInWindow:[I const/4 v1, -0x1 iput v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mActivePointerId:I iput v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleViewIndex:I new-instance v1, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$1; invoke-direct {v1, p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$1;->(Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;)V iput-object v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshListener:Landroid/view/animation/Animation$AnimationListener; new-instance v1, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$6; invoke-direct {v1, p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$6;->(Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;)V iput-object v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAnimateToCorrectPosition:Landroid/view/animation/Animation; new-instance v1, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$7; invoke-direct {v1, p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$7;->(Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;)V iput-object v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAnimateToStartPosition:Landroid/view/animation/Animation; invoke-static {p1}, Landroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration; move-result-object v1 invoke-virtual {v1}, Landroid/view/ViewConfiguration;->getScaledTouchSlop()I move-result v1 iput v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTouchSlop:I invoke-virtual {p0}, Landroid/view/ViewGroup;->getResources()Landroid/content/res/Resources; move-result-object v1 const v2, 0x10e0001 invoke-virtual {v1, v2}, Landroid/content/res/Resources;->getInteger(I)I move-result v1 iput v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mMediumAnimationDuration:I invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->setWillNotDraw(Z)V new-instance v1, Landroid/view/animation/DecelerateInterpolator; const/high16 v2, 0x40000000 # 2.0f invoke-direct {v1, v2}, Landroid/view/animation/DecelerateInterpolator;->(F)V iput-object v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mDecelerateInterpolator:Landroid/view/animation/DecelerateInterpolator; invoke-virtual {p0}, Landroid/view/ViewGroup;->getResources()Landroid/content/res/Resources; move-result-object v1 invoke-virtual {v1}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics; move-result-object v1 iget v2, v1, Landroid/util/DisplayMetrics;->density:F const/high16 v3, 0x42200000 # 40.0f mul-float v2, v2, v3 float-to-int v2, v2 iput v2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleDiameter:I invoke-direct {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->createProgressView()V const/4 v2, 0x1 invoke-virtual {p0, v2}, Landroid/view/ViewGroup;->setChildrenDrawingOrderEnabled(Z)V iget v1, v1, Landroid/util/DisplayMetrics;->density:F const/high16 v3, 0x42800000 # 64.0f mul-float v1, v1, v3 float-to-int v1, v1 iput v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mSpinnerOffsetEnd:I int-to-float v1, v1 iput v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalDragDistance:F new-instance v1, Landroidx/core/view/NestedScrollingParentHelper; invoke-direct {v1, p0}, Landroidx/core/view/NestedScrollingParentHelper;->(Landroid/view/ViewGroup;)V iput-object v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingParentHelper:Landroidx/core/view/NestedScrollingParentHelper; new-instance v1, Landroidx/core/view/NestedScrollingChildHelper; invoke-direct {v1, p0}, Landroidx/core/view/NestedScrollingChildHelper;->(Landroid/view/View;)V iput-object v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; invoke-virtual {p0, v2}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setNestedScrollingEnabled(Z)V iget v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleDiameter:I neg-int v1, v1 iput v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCurrentTargetOffsetTop:I iput v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mOriginalOffsetTop:I const/high16 v1, 0x3f800000 # 1.0f invoke-virtual {p0, v1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->moveToStart(F)V sget-object v1, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->LAYOUT_ATTRS:[I invoke-virtual {p1, p2, v1}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; move-result-object p1 invoke-virtual {p1, v0, v2}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z move-result p2 invoke-virtual {p0, p2}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setEnabled(Z)V invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V return-void .end method .method private animateOffsetToCorrectPosition(ILandroid/view/animation/Animation$AnimationListener;)V .locals 2 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mFrom:I iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAnimateToCorrectPosition:Landroid/view/animation/Animation; invoke-virtual {p1}, Landroid/view/animation/Animation;->reset()V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAnimateToCorrectPosition:Landroid/view/animation/Animation; const-wide/16 v0, 0xc8 invoke-virtual {p1, v0, v1}, Landroid/view/animation/Animation;->setDuration(J)V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAnimateToCorrectPosition:Landroid/view/animation/Animation; iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mDecelerateInterpolator:Landroid/view/animation/DecelerateInterpolator; invoke-virtual {p1, v0}, Landroid/view/animation/Animation;->setInterpolator(Landroid/view/animation/Interpolator;)V if-eqz p2, :cond_0 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1, p2}, Landroidx/swiperefreshlayout/widget/CircleImageView;->setAnimationListener(Landroid/view/animation/Animation$AnimationListener;)V :cond_0 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1}, Landroid/widget/ImageView;->clearAnimation()V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; iget-object p2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAnimateToCorrectPosition:Landroid/view/animation/Animation; invoke-virtual {p1, p2}, Landroid/widget/ImageView;->startAnimation(Landroid/view/animation/Animation;)V return-void .end method .method private animateOffsetToStartPosition(ILandroid/view/animation/Animation$AnimationListener;)V .locals 2 iget-boolean v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScale:Z if-eqz v0, :cond_0 invoke-direct {p0, p1, p2}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->startScaleDownReturnToStartAnimation(ILandroid/view/animation/Animation$AnimationListener;)V goto :goto_0 :cond_0 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mFrom:I iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAnimateToStartPosition:Landroid/view/animation/Animation; invoke-virtual {p1}, Landroid/view/animation/Animation;->reset()V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAnimateToStartPosition:Landroid/view/animation/Animation; const-wide/16 v0, 0xc8 invoke-virtual {p1, v0, v1}, Landroid/view/animation/Animation;->setDuration(J)V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAnimateToStartPosition:Landroid/view/animation/Animation; iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mDecelerateInterpolator:Landroid/view/animation/DecelerateInterpolator; invoke-virtual {p1, v0}, Landroid/view/animation/Animation;->setInterpolator(Landroid/view/animation/Interpolator;)V if-eqz p2, :cond_1 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1, p2}, Landroidx/swiperefreshlayout/widget/CircleImageView;->setAnimationListener(Landroid/view/animation/Animation$AnimationListener;)V :cond_1 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1}, Landroid/widget/ImageView;->clearAnimation()V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; iget-object p2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAnimateToStartPosition:Landroid/view/animation/Animation; invoke-virtual {p1, p2}, Landroid/widget/ImageView;->startAnimation(Landroid/view/animation/Animation;)V :goto_0 return-void .end method .method private createProgressView()V .locals 3 new-instance v0, Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context; move-result-object v1 const v2, -0x50506 invoke-direct {v0, v1, v2}, Landroidx/swiperefreshlayout/widget/CircleImageView;->(Landroid/content/Context;I)V iput-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; new-instance v0, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context; move-result-object v1 invoke-direct {v0, v1}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->(Landroid/content/Context;)V iput-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; const/4 v1, 0x1 invoke-virtual {v0, v1}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->setStyle(I)V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; iget-object v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; const/16 v1, 0x8 invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setVisibility(I)V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->addView(Landroid/view/View;)V return-void .end method .method private ensureTarget()V .locals 3 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTarget:Landroid/view/View; if-nez v0, :cond_1 const/4 v0, 0x0 :goto_0 invoke-virtual {p0}, Landroid/view/ViewGroup;->getChildCount()I move-result v1 if-ge v0, v1, :cond_1 invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View; move-result-object v1 iget-object v2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v1, v2}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_0 iput-object v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTarget:Landroid/view/View; goto :goto_1 :cond_0 add-int/lit8 v0, v0, 0x1 goto :goto_0 :cond_1 :goto_1 return-void .end method .method private finishSpinner(F)V .locals 2 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalDragDistance:F cmpl-float p1, p1, v0 if-lez p1, :cond_0 const/4 p1, 0x1 invoke-direct {p0, p1, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setRefreshing(ZZ)V goto :goto_0 :cond_0 const/4 p1, 0x0 iput-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshing:Z iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; const/4 v1, 0x0 invoke-virtual {v0, v1, v1}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->setStartEndTrim(FF)V const/4 v0, 0x0 iget-boolean v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScale:Z if-nez v1, :cond_1 new-instance v0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$5; invoke-direct {v0, p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$5;->(Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;)V :cond_1 iget v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCurrentTargetOffsetTop:I invoke-direct {p0, v1, v0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->animateOffsetToStartPosition(ILandroid/view/animation/Animation$AnimationListener;)V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {v0, p1}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->setArrowEnabled(Z)V :goto_0 return-void .end method .method private isAnimationRunning(Landroid/view/animation/Animation;)Z .locals 1 if-eqz p1, :cond_0 invoke-virtual {p1}, Landroid/view/animation/Animation;->hasStarted()Z move-result v0 if-eqz v0, :cond_0 invoke-virtual {p1}, Landroid/view/animation/Animation;->hasEnded()Z move-result p1 if-nez p1, :cond_0 const/4 p1, 0x1 goto :goto_0 :cond_0 const/4 p1, 0x0 :goto_0 return p1 .end method .method private moveSpinner(F)V .locals 11 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; const/4 v1, 0x1 invoke-virtual {v0, v1}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->setArrowEnabled(Z)V iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalDragDistance:F div-float v0, p1, v0 invoke-static {v0}, Ljava/lang/Math;->abs(F)F move-result v0 const/high16 v1, 0x3f800000 # 1.0f invoke-static {v1, v0}, Ljava/lang/Math;->min(FF)F move-result v0 float-to-double v2, v0 const-wide v4, 0x3fd999999999999aL # 0.4 sub-double/2addr v2, v4 const-wide/16 v4, 0x0 invoke-static {v2, v3, v4, v5}, Ljava/lang/Math;->max(DD)D move-result-wide v2 double-to-float v2, v2 const/high16 v3, 0x40a00000 # 5.0f mul-float v2, v2, v3 const/high16 v3, 0x40400000 # 3.0f div-float/2addr v2, v3 invoke-static {p1}, Ljava/lang/Math;->abs(F)F move-result v3 iget v4, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalDragDistance:F sub-float/2addr v3, v4 iget v4, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCustomSlingshotDistance:I if-lez v4, :cond_0 :goto_0 int-to-float v4, v4 goto :goto_1 :cond_0 iget-boolean v4, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mUsingCustomStart:Z if-eqz v4, :cond_1 iget v4, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mSpinnerOffsetEnd:I iget v5, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mOriginalOffsetTop:I sub-int/2addr v4, v5 goto :goto_0 :cond_1 iget v4, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mSpinnerOffsetEnd:I goto :goto_0 :goto_1 const/high16 v5, 0x40000000 # 2.0f mul-float v6, v4, v5 invoke-static {v3, v6}, Ljava/lang/Math;->min(FF)F move-result v3 div-float/2addr v3, v4 const/4 v6, 0x0 invoke-static {v6, v3}, Ljava/lang/Math;->max(FF)F move-result v3 const/high16 v7, 0x40800000 # 4.0f div-float/2addr v3, v7 float-to-double v7, v3 const-wide/high16 v9, 0x4000000000000000L # 2.0 invoke-static {v7, v8, v9, v10}, Ljava/lang/Math;->pow(DD)D move-result-wide v9 sub-double/2addr v7, v9 double-to-float v3, v7 mul-float v3, v3, v5 mul-float v7, v4, v3 mul-float v7, v7, v5 iget v8, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mOriginalOffsetTop:I mul-float v4, v4, v0 add-float/2addr v4, v7 float-to-int v0, v4 add-int/2addr v8, v0 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v0}, Landroid/widget/ImageView;->getVisibility()I move-result v0 if-eqz v0, :cond_2 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; const/4 v4, 0x0 invoke-virtual {v0, v4}, Landroid/widget/ImageView;->setVisibility(I)V :cond_2 iget-boolean v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScale:Z if-nez v0, :cond_3 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setScaleX(F)V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setScaleY(F)V :cond_3 iget-boolean v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScale:Z if-eqz v0, :cond_4 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalDragDistance:F div-float v0, p1, v0 invoke-static {v1, v0}, Ljava/lang/Math;->min(FF)F move-result v0 invoke-virtual {p0, v0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setAnimationProgress(F)V :cond_4 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalDragDistance:F cmpg-float p1, p1, v0 if-gez p1, :cond_5 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {p1}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->getAlpha()I move-result p1 const/16 v0, 0x4c if-le p1, v0, :cond_6 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAlphaStartAnimation:Landroid/view/animation/Animation; invoke-direct {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->isAnimationRunning(Landroid/view/animation/Animation;)Z move-result p1 if-nez p1, :cond_6 invoke-direct {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->startProgressAlphaStartAnimation()V goto :goto_2 :cond_5 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {p1}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->getAlpha()I move-result p1 const/16 v0, 0xff if-ge p1, v0, :cond_6 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAlphaMaxAnimation:Landroid/view/animation/Animation; invoke-direct {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->isAnimationRunning(Landroid/view/animation/Animation;)Z move-result p1 if-nez p1, :cond_6 invoke-direct {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->startProgressAlphaMaxAnimation()V :cond_6 :goto_2 const p1, 0x3f4ccccd # 0.8f mul-float v0, v2, p1 iget-object v4, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-static {p1, v0}, Ljava/lang/Math;->min(FF)F move-result p1 invoke-virtual {v4, v6, p1}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->setStartEndTrim(FF)V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-static {v1, v2}, Ljava/lang/Math;->min(FF)F move-result v0 invoke-virtual {p1, v0}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->setArrowScale(F)V const/high16 p1, -0x41800000 # -0.25f const v0, 0x3ecccccd # 0.4f mul-float v2, v2, v0 add-float/2addr v2, p1 mul-float v3, v3, v5 add-float/2addr v3, v2 const/high16 p1, 0x3f000000 # 0.5f mul-float v3, v3, p1 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {p1, v3}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->setProgressRotation(F)V iget p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCurrentTargetOffsetTop:I sub-int/2addr v8, p1 invoke-virtual {p0, v8}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setTargetOffsetTopAndBottom(I)V return-void .end method .method private onSecondaryPointerUp(Landroid/view/MotionEvent;)V .locals 3 invoke-virtual {p1}, Landroid/view/MotionEvent;->getActionIndex()I move-result v0 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getPointerId(I)I move-result v1 iget v2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mActivePointerId:I if-ne v1, v2, :cond_1 if-nez v0, :cond_0 const/4 v0, 0x1 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getPointerId(I)I move-result p1 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mActivePointerId:I :cond_1 return-void .end method .method private setColorViewAlpha(I)V .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v0}, Landroid/widget/ImageView;->getBackground()Landroid/graphics/drawable/Drawable; move-result-object v0 invoke-virtual {v0, p1}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {v0, p1}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->setAlpha(I)V return-void .end method .method private setRefreshing(ZZ)V .locals 1 iget-boolean v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshing:Z if-eq v0, p1, :cond_1 iput-boolean p2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNotify:Z invoke-direct {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->ensureTarget()V iput-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshing:Z if-eqz p1, :cond_0 iget p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCurrentTargetOffsetTop:I iget-object p2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshListener:Landroid/view/animation/Animation$AnimationListener; invoke-direct {p0, p1, p2}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->animateOffsetToCorrectPosition(ILandroid/view/animation/Animation$AnimationListener;)V goto :goto_0 :cond_0 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshListener:Landroid/view/animation/Animation$AnimationListener; invoke-virtual {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->startScaleDownAnimation(Landroid/view/animation/Animation$AnimationListener;)V :cond_1 :goto_0 return-void .end method .method private startAlphaAnimation(II)Landroid/view/animation/Animation; .locals 1 new-instance v0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$4; invoke-direct {v0, p0, p1, p2}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$4;->(Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;II)V const-wide/16 p1, 0x12c invoke-virtual {v0, p1, p2}, Landroid/view/animation/Animation;->setDuration(J)V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; const/4 p2, 0x0 invoke-virtual {p1, p2}, Landroidx/swiperefreshlayout/widget/CircleImageView;->setAnimationListener(Landroid/view/animation/Animation$AnimationListener;)V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1}, Landroid/widget/ImageView;->clearAnimation()V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1, v0}, Landroid/widget/ImageView;->startAnimation(Landroid/view/animation/Animation;)V return-object v0 .end method .method private startDragging(F)V .locals 3 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mInitialDownY:F sub-float/2addr p1, v0 iget v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTouchSlop:I int-to-float v2, v1 cmpl-float p1, p1, v2 if-lez p1, :cond_0 iget-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mIsBeingDragged:Z if-nez p1, :cond_0 int-to-float p1, v1 add-float/2addr v0, p1 iput v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mInitialMotionY:F const/4 p1, 0x1 iput-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mIsBeingDragged:Z iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; const/16 v0, 0x4c invoke-virtual {p1, v0}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->setAlpha(I)V :cond_0 return-void .end method .method private startProgressAlphaMaxAnimation()V .locals 2 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {v0}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->getAlpha()I move-result v0 const/16 v1, 0xff invoke-direct {p0, v0, v1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->startAlphaAnimation(II)Landroid/view/animation/Animation; move-result-object v0 iput-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAlphaMaxAnimation:Landroid/view/animation/Animation; return-void .end method .method private startProgressAlphaStartAnimation()V .locals 2 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {v0}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->getAlpha()I move-result v0 const/16 v1, 0x4c invoke-direct {p0, v0, v1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->startAlphaAnimation(II)Landroid/view/animation/Animation; move-result-object v0 iput-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mAlphaStartAnimation:Landroid/view/animation/Animation; return-void .end method .method private startScaleDownReturnToStartAnimation(ILandroid/view/animation/Animation$AnimationListener;)V .locals 2 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mFrom:I iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1}, Landroid/widget/ImageView;->getScaleX()F move-result p1 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mStartingScale:F new-instance p1, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$8; invoke-direct {p1, p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$8;->(Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;)V iput-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScaleDownToStartAnimation:Landroid/view/animation/Animation; const-wide/16 v0, 0x96 invoke-virtual {p1, v0, v1}, Landroid/view/animation/Animation;->setDuration(J)V if-eqz p2, :cond_0 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1, p2}, Landroidx/swiperefreshlayout/widget/CircleImageView;->setAnimationListener(Landroid/view/animation/Animation$AnimationListener;)V :cond_0 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1}, Landroid/widget/ImageView;->clearAnimation()V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; iget-object p2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScaleDownToStartAnimation:Landroid/view/animation/Animation; invoke-virtual {p1, p2}, Landroid/widget/ImageView;->startAnimation(Landroid/view/animation/Animation;)V return-void .end method .method private startScaleUpAnimation(Landroid/view/animation/Animation$AnimationListener;)V .locals 3 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; const/4 v1, 0x0 invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setVisibility(I)V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; const/16 v1, 0xff invoke-virtual {v0, v1}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->setAlpha(I)V new-instance v0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$2; invoke-direct {v0, p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$2;->(Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;)V iput-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScaleAnimation:Landroid/view/animation/Animation; iget v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mMediumAnimationDuration:I int-to-long v1, v1 invoke-virtual {v0, v1, v2}, Landroid/view/animation/Animation;->setDuration(J)V if-eqz p1, :cond_0 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v0, p1}, Landroidx/swiperefreshlayout/widget/CircleImageView;->setAnimationListener(Landroid/view/animation/Animation$AnimationListener;)V :cond_0 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1}, Landroid/widget/ImageView;->clearAnimation()V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScaleAnimation:Landroid/view/animation/Animation; invoke-virtual {p1, v0}, Landroid/widget/ImageView;->startAnimation(Landroid/view/animation/Animation;)V return-void .end method # virtual methods .method public canChildScrollUp()Z .locals 3 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mChildScrollUpCallback:Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnChildScrollUpCallback; if-eqz v0, :cond_0 iget-object v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTarget:Landroid/view/View; invoke-interface {v0, p0, v1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnChildScrollUpCallback;->canChildScrollUp(Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;Landroid/view/View;)Z move-result v0 return v0 :cond_0 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTarget:Landroid/view/View; instance-of v1, v0, Landroid/widget/ListView; const/4 v2, -0x1 if-eqz v1, :cond_1 check-cast v0, Landroid/widget/ListView; invoke-static {v0, v2}, Landroidx/core/widget/ListViewCompat;->canScrollList(Landroid/widget/ListView;I)Z move-result v0 return v0 :cond_1 invoke-virtual {v0, v2}, Landroid/view/View;->canScrollVertically(I)Z move-result v0 return v0 .end method .method public dispatchNestedFling(FFZ)Z .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; invoke-virtual {v0, p1, p2, p3}, Landroidx/core/view/NestedScrollingChildHelper;->dispatchNestedFling(FFZ)Z move-result p1 return p1 .end method .method public dispatchNestedPreFling(FF)Z .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; invoke-virtual {v0, p1, p2}, Landroidx/core/view/NestedScrollingChildHelper;->dispatchNestedPreFling(FF)Z move-result p1 return p1 .end method .method public dispatchNestedPreScroll(II[I[I)Z .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; invoke-virtual {v0, p1, p2, p3, p4}, Landroidx/core/view/NestedScrollingChildHelper;->dispatchNestedPreScroll(II[I[I)Z move-result p1 return p1 .end method .method public dispatchNestedScroll(IIII[I)Z .locals 6 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; move v1, p1 move v2, p2 move v3, p3 move v4, p4 move-object v5, p5 invoke-virtual/range {v0 .. v5}, Landroidx/core/view/NestedScrollingChildHelper;->dispatchNestedScroll(IIII[I)Z move-result p1 return p1 .end method .method public getChildDrawingOrder(II)I .locals 1 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleViewIndex:I if-gez v0, :cond_0 return p2 :cond_0 add-int/lit8 p1, p1, -0x1 if-ne p2, p1, :cond_1 return v0 :cond_1 if-lt p2, v0, :cond_2 add-int/lit8 p2, p2, 0x1 :cond_2 return p2 .end method .method public getNestedScrollAxes()I .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingParentHelper:Landroidx/core/view/NestedScrollingParentHelper; invoke-virtual {v0}, Landroidx/core/view/NestedScrollingParentHelper;->getNestedScrollAxes()I move-result v0 return v0 .end method .method public getProgressCircleDiameter()I .locals 1 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleDiameter:I return v0 .end method .method public getProgressViewEndOffset()I .locals 1 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mSpinnerOffsetEnd:I return v0 .end method .method public getProgressViewStartOffset()I .locals 1 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mOriginalOffsetTop:I return v0 .end method .method public hasNestedScrollingParent()Z .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; invoke-virtual {v0}, Landroidx/core/view/NestedScrollingChildHelper;->hasNestedScrollingParent()Z move-result v0 return v0 .end method .method public isNestedScrollingEnabled()Z .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; invoke-virtual {v0}, Landroidx/core/view/NestedScrollingChildHelper;->isNestedScrollingEnabled()Z move-result v0 return v0 .end method .method public isRefreshing()Z .locals 1 iget-boolean v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshing:Z return v0 .end method .method public moveToStart(F)V .locals 2 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mFrom:I iget v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mOriginalOffsetTop:I sub-int/2addr v1, v0 int-to-float v1, v1 mul-float v1, v1, p1 float-to-int p1, v1 add-int/2addr v0, p1 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1}, Landroid/widget/ImageView;->getTop()I move-result p1 sub-int/2addr v0, p1 invoke-virtual {p0, v0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setTargetOffsetTopAndBottom(I)V return-void .end method .method public onDetachedFromWindow()V .locals 0 invoke-super {p0}, Landroid/view/ViewGroup;->onDetachedFromWindow()V invoke-virtual {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->reset()V return-void .end method .method public onInterceptTouchEvent(Landroid/view/MotionEvent;)Z .locals 4 invoke-direct {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->ensureTarget()V invoke-virtual {p1}, Landroid/view/MotionEvent;->getActionMasked()I move-result v0 iget-boolean v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mReturningToStart:Z const/4 v2, 0x0 if-eqz v1, :cond_0 if-nez v0, :cond_0 iput-boolean v2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mReturningToStart:Z :cond_0 invoke-virtual {p0}, Landroid/view/ViewGroup;->isEnabled()Z move-result v1 if-eqz v1, :cond_9 iget-boolean v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mReturningToStart:Z if-nez v1, :cond_9 invoke-virtual {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->canChildScrollUp()Z move-result v1 if-nez v1, :cond_9 iget-boolean v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshing:Z if-nez v1, :cond_9 iget-boolean v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollInProgress:Z if-eqz v1, :cond_1 goto :goto_1 :cond_1 if-eqz v0, :cond_7 const/4 v1, 0x1 const/4 v3, -0x1 if-eq v0, v1, :cond_6 const/4 v1, 0x2 if-eq v0, v1, :cond_3 const/4 v1, 0x3 if-eq v0, v1, :cond_6 const/4 v1, 0x6 if-eq v0, v1, :cond_2 goto :goto_0 :cond_2 invoke-direct {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->onSecondaryPointerUp(Landroid/view/MotionEvent;)V goto :goto_0 :cond_3 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mActivePointerId:I if-ne v0, v3, :cond_4 sget-object p1, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->LOG_TAG:Ljava/lang/String; const-string v0, "Got ACTION_MOVE event but don\'t have an active pointer id." invoke-static {p1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return v2 :cond_4 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->findPointerIndex(I)I move-result v0 if-gez v0, :cond_5 return v2 :cond_5 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getY(I)F move-result p1 invoke-direct {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->startDragging(F)V goto :goto_0 :cond_6 iput-boolean v2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mIsBeingDragged:Z iput v3, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mActivePointerId:I goto :goto_0 :cond_7 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mOriginalOffsetTop:I iget-object v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v1}, Landroid/widget/ImageView;->getTop()I move-result v1 sub-int/2addr v0, v1 invoke-virtual {p0, v0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setTargetOffsetTopAndBottom(I)V invoke-virtual {p1, v2}, Landroid/view/MotionEvent;->getPointerId(I)I move-result v0 iput v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mActivePointerId:I iput-boolean v2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mIsBeingDragged:Z invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->findPointerIndex(I)I move-result v0 if-gez v0, :cond_8 return v2 :cond_8 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getY(I)F move-result p1 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mInitialDownY:F :goto_0 iget-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mIsBeingDragged:Z return p1 :cond_9 :goto_1 return v2 .end method .method public onLayout(ZIIII)V .locals 2 invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I move-result p1 invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I move-result p2 invoke-virtual {p0}, Landroid/view/ViewGroup;->getChildCount()I move-result p3 if-nez p3, :cond_0 return-void :cond_0 iget-object p3, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTarget:Landroid/view/View; if-nez p3, :cond_1 invoke-direct {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->ensureTarget()V :cond_1 iget-object p3, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTarget:Landroid/view/View; if-nez p3, :cond_2 return-void :cond_2 invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I move-result p4 invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I move-result p5 invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I move-result v0 sub-int v0, p1, v0 invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I move-result v1 sub-int/2addr v0, v1 invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I move-result v1 sub-int/2addr p2, v1 invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I move-result v1 sub-int/2addr p2, v1 add-int/2addr v0, p4 add-int/2addr p2, p5 invoke-virtual {p3, p4, p5, v0, p2}, Landroid/view/View;->layout(IIII)V iget-object p2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p2}, Landroid/widget/ImageView;->getMeasuredWidth()I move-result p2 iget-object p3, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p3}, Landroid/widget/ImageView;->getMeasuredHeight()I move-result p3 iget-object p4, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; div-int/lit8 p1, p1, 0x2 div-int/lit8 p2, p2, 0x2 sub-int p5, p1, p2 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCurrentTargetOffsetTop:I add-int/2addr p1, p2 add-int/2addr p3, v0 invoke-virtual {p4, p5, v0, p1, p3}, Landroid/widget/ImageView;->layout(IIII)V return-void .end method .method public onMeasure(II)V .locals 3 invoke-super {p0, p1, p2}, Landroid/view/ViewGroup;->onMeasure(II)V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTarget:Landroid/view/View; if-nez p1, :cond_0 invoke-direct {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->ensureTarget()V :cond_0 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTarget:Landroid/view/View; if-nez p1, :cond_1 return-void :cond_1 invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredWidth()I move-result p2 invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingLeft()I move-result v0 sub-int/2addr p2, v0 invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingRight()I move-result v0 sub-int/2addr p2, v0 const/high16 v0, 0x40000000 # 2.0f invoke-static {p2, v0}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I move-result p2 invoke-virtual {p0}, Landroid/view/ViewGroup;->getMeasuredHeight()I move-result v1 invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingTop()I move-result v2 sub-int/2addr v1, v2 invoke-virtual {p0}, Landroid/view/ViewGroup;->getPaddingBottom()I move-result v2 sub-int/2addr v1, v2 invoke-static {v1, v0}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I move-result v1 invoke-virtual {p1, p2, v1}, Landroid/view/View;->measure(II)V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; iget p2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleDiameter:I invoke-static {p2, v0}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I move-result p2 iget v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleDiameter:I invoke-static {v1, v0}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I move-result v0 invoke-virtual {p1, p2, v0}, Landroid/widget/ImageView;->measure(II)V const/4 p1, -0x1 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleViewIndex:I const/4 p1, 0x0 :goto_0 invoke-virtual {p0}, Landroid/view/ViewGroup;->getChildCount()I move-result p2 if-ge p1, p2, :cond_3 invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View; move-result-object p2 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; if-ne p2, v0, :cond_2 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleViewIndex:I goto :goto_1 :cond_2 add-int/lit8 p1, p1, 0x1 goto :goto_0 :cond_3 :goto_1 return-void .end method .method public onNestedFling(Landroid/view/View;FFZ)Z .locals 0 invoke-virtual {p0, p2, p3, p4}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->dispatchNestedFling(FFZ)Z move-result p1 return p1 .end method .method public onNestedPreFling(Landroid/view/View;FF)Z .locals 0 invoke-virtual {p0, p2, p3}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->dispatchNestedPreFling(FF)Z move-result p1 return p1 .end method .method public onNestedPreScroll(Landroid/view/View;II[I)V .locals 4 const/4 p1, 0x0 const/4 v0, 0x1 if-lez p3, :cond_1 iget v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalUnconsumed:F cmpl-float v2, v1, p1 if-lez v2, :cond_1 int-to-float v2, p3 cmpl-float v3, v2, v1 if-lez v3, :cond_0 float-to-int v1, v1 sub-int v1, p3, v1 aput v1, p4, v0 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalUnconsumed:F goto :goto_0 :cond_0 sub-float/2addr v1, v2 iput v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalUnconsumed:F aput p3, p4, v0 :goto_0 iget v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalUnconsumed:F invoke-direct {p0, v1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->moveSpinner(F)V :cond_1 iget-boolean v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mUsingCustomStart:Z if-eqz v1, :cond_2 if-lez p3, :cond_2 iget v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalUnconsumed:F cmpl-float p1, v1, p1 if-nez p1, :cond_2 aget p1, p4, v0 sub-int p1, p3, p1 invoke-static {p1}, Ljava/lang/Math;->abs(I)I move-result p1 if-lez p1, :cond_2 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; const/16 v1, 0x8 invoke-virtual {p1, v1}, Landroid/widget/ImageView;->setVisibility(I)V :cond_2 iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mParentScrollConsumed:[I const/4 v1, 0x0 aget v2, p4, v1 sub-int/2addr p2, v2 aget v2, p4, v0 sub-int/2addr p3, v2 const/4 v2, 0x0 invoke-virtual {p0, p2, p3, p1, v2}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->dispatchNestedPreScroll(II[I[I)Z move-result p2 if-eqz p2, :cond_3 aget p2, p4, v1 aget p3, p1, v1 add-int/2addr p2, p3 aput p2, p4, v1 aget p2, p4, v0 aget p1, p1, v0 add-int/2addr p2, p1 aput p2, p4, v0 :cond_3 return-void .end method .method public onNestedScroll(Landroid/view/View;IIII)V .locals 6 iget-object v5, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mParentOffsetInWindow:[I move-object v0, p0 move v1, p2 move v2, p3 move v3, p4 move v4, p5 invoke-virtual/range {v0 .. v5}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->dispatchNestedScroll(IIII[I)Z iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mParentOffsetInWindow:[I const/4 p2, 0x1 aget p1, p1, p2 add-int/2addr p5, p1 if-gez p5, :cond_0 invoke-virtual {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->canChildScrollUp()Z move-result p1 if-nez p1, :cond_0 iget p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalUnconsumed:F invoke-static {p5}, Ljava/lang/Math;->abs(I)I move-result p2 int-to-float p2, p2 add-float/2addr p1, p2 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalUnconsumed:F invoke-direct {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->moveSpinner(F)V :cond_0 return-void .end method .method public onNestedScrollAccepted(Landroid/view/View;Landroid/view/View;I)V .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingParentHelper:Landroidx/core/view/NestedScrollingParentHelper; invoke-virtual {v0, p1, p2, p3}, Landroidx/core/view/NestedScrollingParentHelper;->onNestedScrollAccepted(Landroid/view/View;Landroid/view/View;I)V and-int/lit8 p1, p3, 0x2 invoke-virtual {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->startNestedScroll(I)Z const/4 p1, 0x0 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalUnconsumed:F const/4 p1, 0x1 iput-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollInProgress:Z return-void .end method .method public onStartNestedScroll(Landroid/view/View;Landroid/view/View;I)Z .locals 0 invoke-virtual {p0}, Landroid/view/ViewGroup;->isEnabled()Z move-result p1 if-eqz p1, :cond_0 iget-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mReturningToStart:Z if-nez p1, :cond_0 iget-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshing:Z if-nez p1, :cond_0 and-int/lit8 p1, p3, 0x2 if-eqz p1, :cond_0 const/4 p1, 0x1 goto :goto_0 :cond_0 const/4 p1, 0x0 :goto_0 return p1 .end method .method public onStopNestedScroll(Landroid/view/View;)V .locals 2 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingParentHelper:Landroidx/core/view/NestedScrollingParentHelper; invoke-virtual {v0, p1}, Landroidx/core/view/NestedScrollingParentHelper;->onStopNestedScroll(Landroid/view/View;)V const/4 p1, 0x0 iput-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollInProgress:Z iget p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalUnconsumed:F const/4 v0, 0x0 cmpl-float v1, p1, v0 if-lez v1, :cond_0 invoke-direct {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->finishSpinner(F)V iput v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalUnconsumed:F :cond_0 invoke-virtual {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->stopNestedScroll()V return-void .end method .method public onTouchEvent(Landroid/view/MotionEvent;)Z .locals 5 invoke-virtual {p1}, Landroid/view/MotionEvent;->getActionMasked()I move-result v0 iget-boolean v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mReturningToStart:Z const/4 v2, 0x0 if-eqz v1, :cond_0 if-nez v0, :cond_0 iput-boolean v2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mReturningToStart:Z :cond_0 invoke-virtual {p0}, Landroid/view/ViewGroup;->isEnabled()Z move-result v1 if-eqz v1, :cond_e iget-boolean v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mReturningToStart:Z if-nez v1, :cond_e invoke-virtual {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->canChildScrollUp()Z move-result v1 if-nez v1, :cond_e iget-boolean v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshing:Z if-nez v1, :cond_e iget-boolean v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollInProgress:Z if-eqz v1, :cond_1 goto/16 :goto_1 :cond_1 const/4 v1, 0x1 if-eqz v0, :cond_c const/high16 v3, 0x3f000000 # 0.5f if-eq v0, v1, :cond_9 const/4 v4, 0x2 if-eq v0, v4, :cond_6 const/4 v3, 0x3 if-eq v0, v3, :cond_5 const/4 v3, 0x5 if-eq v0, v3, :cond_3 const/4 v2, 0x6 if-eq v0, v2, :cond_2 goto/16 :goto_0 :cond_2 invoke-direct {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->onSecondaryPointerUp(Landroid/view/MotionEvent;)V goto :goto_0 :cond_3 invoke-virtual {p1}, Landroid/view/MotionEvent;->getActionIndex()I move-result v0 if-gez v0, :cond_4 sget-object p1, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->LOG_TAG:Ljava/lang/String; const-string v0, "Got ACTION_POINTER_DOWN event but have an invalid action index." invoke-static {p1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return v2 :cond_4 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getPointerId(I)I move-result p1 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mActivePointerId:I goto :goto_0 :cond_5 return v2 :cond_6 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mActivePointerId:I invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->findPointerIndex(I)I move-result v0 if-gez v0, :cond_7 sget-object p1, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->LOG_TAG:Ljava/lang/String; const-string v0, "Got ACTION_MOVE event but have an invalid active pointer id." invoke-static {p1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return v2 :cond_7 invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getY(I)F move-result p1 invoke-direct {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->startDragging(F)V iget-boolean v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mIsBeingDragged:Z if-eqz v0, :cond_d iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mInitialMotionY:F sub-float/2addr p1, v0 mul-float p1, p1, v3 const/4 v0, 0x0 cmpl-float v0, p1, v0 if-lez v0, :cond_8 invoke-direct {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->moveSpinner(F)V goto :goto_0 :cond_8 return v2 :cond_9 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mActivePointerId:I invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->findPointerIndex(I)I move-result v0 if-gez v0, :cond_a sget-object p1, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->LOG_TAG:Ljava/lang/String; const-string v0, "Got ACTION_UP event but don\'t have an active pointer id." invoke-static {p1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I return v2 :cond_a iget-boolean v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mIsBeingDragged:Z if-eqz v1, :cond_b invoke-virtual {p1, v0}, Landroid/view/MotionEvent;->getY(I)F move-result p1 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mInitialMotionY:F sub-float/2addr p1, v0 mul-float p1, p1, v3 iput-boolean v2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mIsBeingDragged:Z invoke-direct {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->finishSpinner(F)V :cond_b const/4 p1, -0x1 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mActivePointerId:I return v2 :cond_c invoke-virtual {p1, v2}, Landroid/view/MotionEvent;->getPointerId(I)I move-result p1 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mActivePointerId:I iput-boolean v2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mIsBeingDragged:Z :cond_d :goto_0 return v1 :cond_e :goto_1 return v2 .end method .method public requestDisallowInterceptTouchEvent(Z)V .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTarget:Landroid/view/View; if-eqz v0, :cond_0 invoke-static {v0}, Landroidx/core/view/ViewCompat;->isNestedScrollingEnabled(Landroid/view/View;)Z move-result v0 if-nez v0, :cond_0 goto :goto_0 :cond_0 invoke-super {p0, p1}, Landroid/view/ViewGroup;->requestDisallowInterceptTouchEvent(Z)V :goto_0 return-void .end method .method public reset()V .locals 2 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v0}, Landroid/widget/ImageView;->clearAnimation()V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {v0}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->stop()V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; const/16 v1, 0x8 invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setVisibility(I)V const/16 v0, 0xff invoke-direct {p0, v0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setColorViewAlpha(I)V iget-boolean v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScale:Z if-eqz v0, :cond_0 const/4 v0, 0x0 invoke-virtual {p0, v0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setAnimationProgress(F)V goto :goto_0 :cond_0 iget v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mOriginalOffsetTop:I iget v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCurrentTargetOffsetTop:I sub-int/2addr v0, v1 invoke-virtual {p0, v0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setTargetOffsetTopAndBottom(I)V :goto_0 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v0}, Landroid/widget/ImageView;->getTop()I move-result v0 iput v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCurrentTargetOffsetTop:I return-void .end method .method public setAnimationProgress(F)V .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v0, p1}, Landroid/widget/ImageView;->setScaleX(F)V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v0, p1}, Landroid/widget/ImageView;->setScaleY(F)V return-void .end method .method public varargs setColorScheme([I)V .locals 0 .param p1 # [I .annotation build Landroidx/annotation/ColorRes; .end annotation .end param .annotation runtime Ljava/lang/Deprecated; .end annotation invoke-virtual {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setColorSchemeResources([I)V return-void .end method .method public varargs setColorSchemeColors([I)V .locals 1 .param p1 # [I .annotation build Landroidx/annotation/ColorInt; .end annotation .end param invoke-direct {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->ensureTarget()V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {v0, p1}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->setColorSchemeColors([I)V return-void .end method .method public varargs setColorSchemeResources([I)V .locals 4 .param p1 # [I .annotation build Landroidx/annotation/ColorRes; .end annotation .end param invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context; move-result-object v0 array-length v1, p1 new-array v1, v1, [I const/4 v2, 0x0 :goto_0 array-length v3, p1 if-ge v2, v3, :cond_0 aget v3, p1, v2 invoke-static {v0, v3}, Landroidx/core/content/ContextCompat;->getColor(Landroid/content/Context;I)I move-result v3 aput v3, v1, v2 add-int/lit8 v2, v2, 0x1 goto :goto_0 :cond_0 invoke-virtual {p0, v1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setColorSchemeColors([I)V return-void .end method .method public setDistanceToTriggerSync(I)V .locals 0 int-to-float p1, p1 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mTotalDragDistance:F return-void .end method .method public setEnabled(Z)V .locals 0 invoke-super {p0, p1}, Landroid/view/ViewGroup;->setEnabled(Z)V if-nez p1, :cond_0 invoke-virtual {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->reset()V :cond_0 return-void .end method .method public setNestedScrollingEnabled(Z)V .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; invoke-virtual {v0, p1}, Landroidx/core/view/NestedScrollingChildHelper;->setNestedScrollingEnabled(Z)V return-void .end method .method public setOnChildScrollUpCallback(Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnChildScrollUpCallback;)V .locals 0 .param p1 # Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnChildScrollUpCallback; .annotation build Landroidx/annotation/Nullable; .end annotation .end param iput-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mChildScrollUpCallback:Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnChildScrollUpCallback; return-void .end method .method public setOnRefreshListener(Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnRefreshListener;)V .locals 0 .param p1 # Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnRefreshListener; .annotation build Landroidx/annotation/Nullable; .end annotation .end param iput-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mListener:Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$OnRefreshListener; return-void .end method .method public setProgressBackgroundColor(I)V .locals 0 .annotation runtime Ljava/lang/Deprecated; .end annotation invoke-virtual {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setProgressBackgroundColorSchemeResource(I)V return-void .end method .method public setProgressBackgroundColorSchemeColor(I)V .locals 1 .param p1 # I .annotation build Landroidx/annotation/ColorInt; .end annotation .end param iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v0, p1}, Landroidx/swiperefreshlayout/widget/CircleImageView;->setBackgroundColor(I)V return-void .end method .method public setProgressBackgroundColorSchemeResource(I)V .locals 1 .param p1 # I .annotation build Landroidx/annotation/ColorRes; .end annotation .end param invoke-virtual {p0}, Landroid/view/ViewGroup;->getContext()Landroid/content/Context; move-result-object v0 invoke-static {v0, p1}, Landroidx/core/content/ContextCompat;->getColor(Landroid/content/Context;I)I move-result p1 invoke-virtual {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setProgressBackgroundColorSchemeColor(I)V return-void .end method .method public setProgressViewEndTarget(ZI)V .locals 0 iput p2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mSpinnerOffsetEnd:I iput-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScale:Z iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1}, Landroid/widget/ImageView;->invalidate()V return-void .end method .method public setProgressViewOffset(ZII)V .locals 0 iput-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScale:Z iput p2, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mOriginalOffsetTop:I iput p3, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mSpinnerOffsetEnd:I const/4 p1, 0x1 iput-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mUsingCustomStart:Z invoke-virtual {p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->reset()V const/4 p1, 0x0 iput-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshing:Z return-void .end method .method public setRefreshing(Z)V .locals 2 const/4 v0, 0x0 if-eqz p1, :cond_1 iget-boolean v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshing:Z if-eq v1, p1, :cond_1 iput-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshing:Z iget-boolean p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mUsingCustomStart:Z if-nez p1, :cond_0 iget p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mSpinnerOffsetEnd:I iget v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mOriginalOffsetTop:I add-int/2addr p1, v1 goto :goto_0 :cond_0 iget p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mSpinnerOffsetEnd:I :goto_0 iget v1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCurrentTargetOffsetTop:I sub-int/2addr p1, v1 invoke-virtual {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setTargetOffsetTopAndBottom(I)V iput-boolean v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNotify:Z iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mRefreshListener:Landroid/view/animation/Animation$AnimationListener; invoke-direct {p0, p1}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->startScaleUpAnimation(Landroid/view/animation/Animation$AnimationListener;)V goto :goto_1 :cond_1 invoke-direct {p0, p1, v0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->setRefreshing(ZZ)V :goto_1 return-void .end method .method public setSize(I)V .locals 2 if-eqz p1, :cond_0 const/4 v0, 0x1 if-eq p1, v0, :cond_0 return-void :cond_0 invoke-virtual {p0}, Landroid/view/ViewGroup;->getResources()Landroid/content/res/Resources; move-result-object v0 invoke-virtual {v0}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics; move-result-object v0 if-nez p1, :cond_1 const/high16 v1, 0x42600000 # 56.0f iget v0, v0, Landroid/util/DisplayMetrics;->density:F mul-float v0, v0, v1 float-to-int v0, v0 iput v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleDiameter:I goto :goto_0 :cond_1 const/high16 v1, 0x42200000 # 40.0f iget v0, v0, Landroid/util/DisplayMetrics;->density:F mul-float v0, v0, v1 float-to-int v0, v0 iput v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleDiameter:I :goto_0 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; const/4 v1, 0x0 invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {v0, p1}, Landroidx/swiperefreshlayout/widget/CircularProgressDrawable;->setStyle(I)V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mProgress:Landroidx/swiperefreshlayout/widget/CircularProgressDrawable; invoke-virtual {p1, v0}, Landroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V return-void .end method .method public setSlingshotDistance(I)V .locals 0 .param p1 # I .annotation build Landroidx/annotation/Px; .end annotation .end param iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCustomSlingshotDistance:I return-void .end method .method public setTargetOffsetTopAndBottom(I)V .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v0}, Landroid/widget/ImageView;->bringToFront()V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-static {v0, p1}, Landroidx/core/view/ViewCompat;->offsetTopAndBottom(Landroid/view/View;I)V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1}, Landroid/widget/ImageView;->getTop()I move-result p1 iput p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCurrentTargetOffsetTop:I return-void .end method .method public startNestedScroll(I)Z .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; invoke-virtual {v0, p1}, Landroidx/core/view/NestedScrollingChildHelper;->startNestedScroll(I)Z move-result p1 return p1 .end method .method public startScaleDownAnimation(Landroid/view/animation/Animation$AnimationListener;)V .locals 3 new-instance v0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$3; invoke-direct {v0, p0}, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout$3;->(Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;)V iput-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScaleDownAnimation:Landroid/view/animation/Animation; const-wide/16 v1, 0x96 invoke-virtual {v0, v1, v2}, Landroid/view/animation/Animation;->setDuration(J)V iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {v0, p1}, Landroidx/swiperefreshlayout/widget/CircleImageView;->setAnimationListener(Landroid/view/animation/Animation$AnimationListener;)V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; invoke-virtual {p1}, Landroid/widget/ImageView;->clearAnimation()V iget-object p1, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mCircleView:Landroidx/swiperefreshlayout/widget/CircleImageView; iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mScaleDownAnimation:Landroid/view/animation/Animation; invoke-virtual {p1, v0}, Landroid/widget/ImageView;->startAnimation(Landroid/view/animation/Animation;)V return-void .end method .method public stopNestedScroll()V .locals 1 iget-object v0, p0, Landroidx/swiperefreshlayout/widget/SwipeRefreshLayout;->mNestedScrollingChildHelper:Landroidx/core/view/NestedScrollingChildHelper; invoke-virtual {v0}, Landroidx/core/view/NestedScrollingChildHelper;->stopNestedScroll()V return-void .end method