.class Lcom/google/android/material/behavior/SwipeDismissBehavior$1; .super Landroidx/customview/widget/ViewDragHelper$Callback; .source "SwipeDismissBehavior.java" # annotations .annotation system Ldalvik/annotation/EnclosingClass; value = Lcom/google/android/material/behavior/SwipeDismissBehavior; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x0 name = null .end annotation # static fields .field private static final INVALID_POINTER_ID:I = -0x1 # instance fields .field private activePointerId:I .field private originalCapturedViewLeft:I .field final synthetic this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; # direct methods .method constructor (Lcom/google/android/material/behavior/SwipeDismissBehavior;)V .registers 2 .line 208 iput-object p1, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; invoke-direct {p0}, Landroidx/customview/widget/ViewDragHelper$Callback;->()V const/4 p1, -0x1 .line 212 iput p1, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->activePointerId:I return-void .end method .method private shouldDismiss(Landroid/view/View;F)Z .registers 9 const/4 v0, 0x0 cmpl-float v1, p2, v0 const/4 v2, 0x0 const/4 v3, 0x1 if-eqz v1, :cond_3a .line 270 invoke-static {p1}, Landroidx/core/view/ViewCompat;->getLayoutDirection(Landroid/view/View;)I move-result p1 if-ne p1, v3, :cond_f move p1, v3 goto :goto_10 :cond_f move p1, v2 .line 272 :goto_10 iget-object v4, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget v4, v4, Lcom/google/android/material/behavior/SwipeDismissBehavior;->swipeDirection:I const/4 v5, 0x2 if-ne v4, v5, :cond_18 return v3 .line 275 :cond_18 iget-object v4, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget v4, v4, Lcom/google/android/material/behavior/SwipeDismissBehavior;->swipeDirection:I if-nez v4, :cond_29 if-eqz p1, :cond_25 cmpg-float p1, p2, v0 if-gez p1, :cond_28 goto :goto_27 :cond_25 if-lez v1, :cond_28 :goto_27 move v2, v3 :cond_28 return v2 .line 279 :cond_29 iget-object v4, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget v4, v4, Lcom/google/android/material/behavior/SwipeDismissBehavior;->swipeDirection:I if-ne v4, v3, :cond_39 if-eqz p1, :cond_34 if-lez v1, :cond_39 goto :goto_38 :cond_34 cmpg-float p1, p2, v0 if-gez p1, :cond_39 :goto_38 move v2, v3 :cond_39 return v2 .line 285 :cond_3a invoke-virtual {p1}, Landroid/view/View;->getLeft()I move-result p2 iget v0, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I sub-int/2addr p2, v0 .line 286 invoke-virtual {p1}, Landroid/view/View;->getWidth()I move-result p1 int-to-float p1, p1 iget-object v0, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget v0, v0, Lcom/google/android/material/behavior/SwipeDismissBehavior;->dragDismissThreshold:F mul-float/2addr p1, v0 invoke-static {p1}, Ljava/lang/Math;->round(F)I move-result p1 .line 287 invoke-static {p2}, Ljava/lang/Math;->abs(I)I move-result p2 if-lt p2, p1, :cond_56 move v2, v3 :cond_56 return v2 .end method # virtual methods .method public clampViewPositionHorizontal(Landroid/view/View;II)I .registers 6 .line 301 invoke-static {p1}, Landroidx/core/view/ViewCompat;->getLayoutDirection(Landroid/view/View;)I move-result p3 const/4 v0, 0x1 if-ne p3, v0, :cond_9 move p3, v0 goto :goto_a :cond_9 const/4 p3, 0x0 .line 305 :goto_a iget-object v1, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget v1, v1, Lcom/google/android/material/behavior/SwipeDismissBehavior;->swipeDirection:I if-nez v1, :cond_24 if-eqz p3, :cond_1c .line 307 iget p3, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I invoke-virtual {p1}, Landroid/view/View;->getWidth()I move-result p1 sub-int/2addr p3, p1 .line 308 iget p1, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I goto :goto_4b .line 310 :cond_1c iget p3, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I .line 311 invoke-virtual {p1}, Landroid/view/View;->getWidth()I move-result p1 :goto_22 add-int/2addr p1, p3 goto :goto_4b .line 313 :cond_24 iget-object v1, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget v1, v1, Lcom/google/android/material/behavior/SwipeDismissBehavior;->swipeDirection:I if-ne v1, v0, :cond_3d if-eqz p3, :cond_33 .line 315 iget p3, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I .line 316 invoke-virtual {p1}, Landroid/view/View;->getWidth()I move-result p1 goto :goto_22 .line 318 :cond_33 iget p3, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I invoke-virtual {p1}, Landroid/view/View;->getWidth()I move-result p1 sub-int/2addr p3, p1 .line 319 iget p1, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I goto :goto_4b .line 322 :cond_3d iget p3, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I invoke-virtual {p1}, Landroid/view/View;->getWidth()I move-result v0 sub-int/2addr p3, v0 .line 323 iget v0, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I invoke-virtual {p1}, Landroid/view/View;->getWidth()I move-result p1 add-int/2addr p1, v0 .line 326 :goto_4b invoke-static {p3, p2, p1}, Lcom/google/android/material/behavior/SwipeDismissBehavior;->clamp(III)I move-result p1 return p1 .end method .method public clampViewPositionVertical(Landroid/view/View;II)I .registers 4 .line 331 invoke-virtual {p1}, Landroid/view/View;->getTop()I move-result p1 return p1 .end method .method public getViewHorizontalDragRange(Landroid/view/View;)I .registers 2 .line 295 invoke-virtual {p1}, Landroid/view/View;->getWidth()I move-result p1 return p1 .end method .method public onViewCaptured(Landroid/view/View;I)V .registers 3 .line 222 iput p2, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->activePointerId:I .line 223 invoke-virtual {p1}, Landroid/view/View;->getLeft()I move-result p2 iput p2, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I .line 227 invoke-virtual {p1}, Landroid/view/View;->getParent()Landroid/view/ViewParent; move-result-object p1 if-eqz p1, :cond_12 const/4 p2, 0x1 .line 229 invoke-interface {p1, p2}, Landroid/view/ViewParent;->requestDisallowInterceptTouchEvent(Z)V :cond_12 return-void .end method .method public onViewDragStateChanged(I)V .registers 3 .line 235 iget-object v0, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget-object v0, v0, Lcom/google/android/material/behavior/SwipeDismissBehavior;->listener:Lcom/google/android/material/behavior/SwipeDismissBehavior$OnDismissListener; if-eqz v0, :cond_d .line 236 iget-object v0, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget-object v0, v0, Lcom/google/android/material/behavior/SwipeDismissBehavior;->listener:Lcom/google/android/material/behavior/SwipeDismissBehavior$OnDismissListener; invoke-interface {v0, p1}, Lcom/google/android/material/behavior/SwipeDismissBehavior$OnDismissListener;->onDragStateChanged(I)V :cond_d return-void .end method .method public onViewPositionChanged(Landroid/view/View;IIII)V .registers 8 .line 336 iget p3, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I int-to-float p3, p3 .line 337 invoke-virtual {p1}, Landroid/view/View;->getWidth()I move-result p4 int-to-float p4, p4 iget-object p5, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget p5, p5, Lcom/google/android/material/behavior/SwipeDismissBehavior;->alphaStartSwipeDistance:F mul-float/2addr p4, p5 add-float/2addr p3, p4 .line 338 iget p4, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I int-to-float p4, p4 .line 339 invoke-virtual {p1}, Landroid/view/View;->getWidth()I move-result p5 int-to-float p5, p5 iget-object v0, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget v0, v0, Lcom/google/android/material/behavior/SwipeDismissBehavior;->alphaEndSwipeDistance:F mul-float/2addr p5, v0 add-float/2addr p4, p5 int-to-float p2, p2 cmpg-float p5, p2, p3 const/high16 v0, 0x3f800000 # 1.0f if-gtz p5, :cond_27 .line 342 invoke-virtual {p1, v0}, Landroid/view/View;->setAlpha(F)V goto :goto_3d :cond_27 cmpl-float p5, p2, p4 const/4 v1, 0x0 if-ltz p5, :cond_30 .line 344 invoke-virtual {p1, v1}, Landroid/view/View;->setAlpha(F)V goto :goto_3d .line 347 :cond_30 invoke-static {p3, p4, p2}, Lcom/google/android/material/behavior/SwipeDismissBehavior;->fraction(FFF)F move-result p2 sub-float p2, v0, p2 .line 348 invoke-static {v1, p2, v0}, Lcom/google/android/material/behavior/SwipeDismissBehavior;->clamp(FFF)F move-result p2 invoke-virtual {p1, p2}, Landroid/view/View;->setAlpha(F)V :goto_3d return-void .end method .method public onViewReleased(Landroid/view/View;FF)V .registers 6 const/4 p3, -0x1 .line 243 iput p3, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->activePointerId:I .line 245 invoke-virtual {p1}, Landroid/view/View;->getWidth()I move-result p3 .line 249 invoke-direct {p0, p1, p2}, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->shouldDismiss(Landroid/view/View;F)Z move-result p2 if-eqz p2, :cond_1a .line 251 invoke-virtual {p1}, Landroid/view/View;->getLeft()I move-result p2 iget v0, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I if-ge p2, v0, :cond_17 sub-int/2addr v0, p3 goto :goto_18 :cond_17 add-int/2addr v0, p3 :goto_18 const/4 p2, 0x1 goto :goto_1d .line 257 :cond_1a iget v0, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->originalCapturedViewLeft:I const/4 p2, 0x0 .line 260 :goto_1d iget-object p3, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget-object p3, p3, Lcom/google/android/material/behavior/SwipeDismissBehavior;->viewDragHelper:Landroidx/customview/widget/ViewDragHelper; invoke-virtual {p1}, Landroid/view/View;->getTop()I move-result v1 invoke-virtual {p3, v0, v1}, Landroidx/customview/widget/ViewDragHelper;->settleCapturedViewAt(II)Z move-result p3 if-eqz p3, :cond_36 .line 261 new-instance p3, Lcom/google/android/material/behavior/SwipeDismissBehavior$SettleRunnable; iget-object v0, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; invoke-direct {p3, v0, p1, p2}, Lcom/google/android/material/behavior/SwipeDismissBehavior$SettleRunnable;->(Lcom/google/android/material/behavior/SwipeDismissBehavior;Landroid/view/View;Z)V invoke-static {p1, p3}, Landroidx/core/view/ViewCompat;->postOnAnimation(Landroid/view/View;Ljava/lang/Runnable;)V goto :goto_45 :cond_36 if-eqz p2, :cond_45 .line 262 iget-object p2, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget-object p2, p2, Lcom/google/android/material/behavior/SwipeDismissBehavior;->listener:Lcom/google/android/material/behavior/SwipeDismissBehavior$OnDismissListener; if-eqz p2, :cond_45 .line 263 iget-object p2, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; iget-object p2, p2, Lcom/google/android/material/behavior/SwipeDismissBehavior;->listener:Lcom/google/android/material/behavior/SwipeDismissBehavior$OnDismissListener; invoke-interface {p2, p1}, Lcom/google/android/material/behavior/SwipeDismissBehavior$OnDismissListener;->onDismiss(Landroid/view/View;)V :cond_45 :goto_45 return-void .end method .method public tryCaptureView(Landroid/view/View;I)Z .registers 4 .line 217 iget p2, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->activePointerId:I const/4 v0, -0x1 if-ne p2, v0, :cond_f iget-object p2, p0, Lcom/google/android/material/behavior/SwipeDismissBehavior$1;->this$0:Lcom/google/android/material/behavior/SwipeDismissBehavior; invoke-virtual {p2, p1}, Lcom/google/android/material/behavior/SwipeDismissBehavior;->canSwipeDismissView(Landroid/view/View;)Z move-result p1 if-eqz p1, :cond_f const/4 p1, 0x1 goto :goto_10 :cond_f const/4 p1, 0x0 :goto_10 return p1 .end method