TouchResponse.smali
.class Landroidx/constraintlayout/motion/widget/TouchResponse;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static final COMPLETE_MODE_CONTINUOUS_VELOCITY:I = 0x0
.field public static final COMPLETE_MODE_SPRING:I = 0x1
.field private static final DEBUG:Z = false
.field private static final EPSILON:F = 1.0E-7f
.field static final FLAG_DISABLE_POST_SCROLL:I = 0x1
.field static final FLAG_DISABLE_SCROLL:I = 0x2
.field static final FLAG_SUPPORT_SCROLL_UP:I = 0x4
.field private static final SEC_TO_MILLISECONDS:I = 0x3e8
.field private static final SIDE_BOTTOM:I = 0x3
.field private static final SIDE_END:I = 0x6
.field private static final SIDE_LEFT:I = 0x1
.field private static final SIDE_MIDDLE:I = 0x4
.field private static final SIDE_RIGHT:I = 0x2
.field private static final SIDE_START:I = 0x5
.field private static final SIDE_TOP:I = 0x0
.field private static final TAG:Ljava/lang/String; = "TouchResponse"
.field private static final TOUCH_DIRECTION:[[F
.field private static final TOUCH_DOWN:I = 0x1
.field private static final TOUCH_END:I = 0x5
.field private static final TOUCH_LEFT:I = 0x2
.field private static final TOUCH_RIGHT:I = 0x3
.field private static final TOUCH_SIDES:[[F
.field private static final TOUCH_START:I = 0x4
.field private static final TOUCH_UP:I
# instance fields
.field private mAnchorDpDt:[F
.field private mAutoCompleteMode:I
.field private mDragScale:F
.field private mDragStarted:Z
.field private mDragThreshold:F
.field private mFlags:I
.field mIsRotateMode:Z
.field private mLastTouchX:F
.field private mLastTouchY:F
.field private mLimitBoundsTo:I
.field private mMaxAcceleration:F
.field private mMaxVelocity:F
.field private final mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
.field private mMoveWhenScrollAtTop:Z
.field private mOnTouchUp:I
.field mRotateCenterX:F
.field mRotateCenterY:F
.field private mRotationCenterId:I
.field private mSpringBoundary:I
.field private mSpringDamping:F
.field private mSpringMass:F
.field private mSpringStiffness:F
.field private mSpringStopThreshold:F
.field private mTempLoc:[I
.field private mTouchAnchorId:I
.field private mTouchAnchorSide:I
.field private mTouchAnchorX:F
.field private mTouchAnchorY:F
.field private mTouchDirectionX:F
.field private mTouchDirectionY:F
.field private mTouchRegionId:I
.field private mTouchSide:I
# direct methods
.method static constructor <clinit>()V
.registers 9
const/4 v0, 0x7
new-array v0, v0, [[F
const/4 v1, 0x2
new-array v2, v1, [F
.line 67
fill-array-data v2, :array_6c
const/4 v3, 0x0
aput-object v2, v0, v3
new-array v2, v1, [F
fill-array-data v2, :array_74
const/4 v4, 0x1
aput-object v2, v0, v4
new-array v2, v1, [F
fill-array-data v2, :array_7c
aput-object v2, v0, v1
new-array v2, v1, [F
fill-array-data v2, :array_84
const/4 v5, 0x3
aput-object v2, v0, v5
new-array v2, v1, [F
fill-array-data v2, :array_8c
const/4 v6, 0x4
aput-object v2, v0, v6
new-array v2, v1, [F
fill-array-data v2, :array_94
const/4 v7, 0x5
aput-object v2, v0, v7
new-array v2, v1, [F
fill-array-data v2, :array_9c
const/4 v8, 0x6
aput-object v2, v0, v8
sput-object v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->TOUCH_SIDES:[[F
new-array v0, v8, [[F
new-array v2, v1, [F
.line 76
fill-array-data v2, :array_a4
aput-object v2, v0, v3
new-array v2, v1, [F
fill-array-data v2, :array_ac
aput-object v2, v0, v4
new-array v2, v1, [F
fill-array-data v2, :array_b4
aput-object v2, v0, v1
new-array v2, v1, [F
fill-array-data v2, :array_bc
aput-object v2, v0, v5
new-array v2, v1, [F
fill-array-data v2, :array_c4
aput-object v2, v0, v6
new-array v1, v1, [F
fill-array-data v1, :array_cc
aput-object v1, v0, v7
sput-object v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->TOUCH_DIRECTION:[[F
return-void
:array_6c
.array-data 4
0x3f000000 # 0.5f
0x0
.end array-data
:array_74
.array-data 4
0x0
0x3f000000 # 0.5f
.end array-data
:array_7c
.array-data 4
0x3f800000 # 1.0f
0x3f000000 # 0.5f
.end array-data
:array_84
.array-data 4
0x3f000000 # 0.5f
0x3f800000 # 1.0f
.end array-data
:array_8c
.array-data 4
0x3f000000 # 0.5f
0x3f000000 # 0.5f
.end array-data
:array_94
.array-data 4
0x0
0x3f000000 # 0.5f
.end array-data
:array_9c
.array-data 4
0x3f800000 # 1.0f
0x3f000000 # 0.5f
.end array-data
:array_a4
.array-data 4
0x0
-0x40800000 # -1.0f
.end array-data
:array_ac
.array-data 4
0x0
0x3f800000 # 1.0f
.end array-data
:array_b4
.array-data 4
-0x40800000 # -1.0f
0x0
.end array-data
:array_bc
.array-data 4
0x3f800000 # 1.0f
0x0
.end array-data
:array_c4
.array-data 4
-0x40800000 # -1.0f
0x0
.end array-data
:array_cc
.array-data 4
0x3f800000 # 1.0f
0x0
.end array-data
.end method
.method constructor <init>(Landroid/content/Context;Landroidx/constraintlayout/motion/widget/MotionLayout;Lorg/xmlpull/v1/XmlPullParser;)V
.registers 8
.line 118
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
.line 45
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorSide:I
.line 46
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchSide:I
.line 47
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
const/4 v1, -0x1
.line 48
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
.line 49
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchRegionId:I
.line 50
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLimitBoundsTo:I
const/high16 v2, 0x3f000000 # 0.5f
.line 51
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
.line 52
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
.line 53
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mRotateCenterX:F
.line 54
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mRotateCenterY:F
.line 55
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mRotationCenterId:I
.line 56
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mIsRotateMode:Z
const/4 v1, 0x0
.line 57
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
const/high16 v1, 0x3f800000 # 1.0f
.line 58
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
.line 59
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
const/4 v2, 0x2
new-array v3, v2, [F
.line 60
iput-object v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
new-array v2, v2, [I
.line 61
iput-object v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
const/high16 v2, 0x40800000 # 4.0f
.line 99
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxVelocity:F
const v2, 0x3f99999a # 1.2f
.line 100
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxAcceleration:F
const/4 v2, 0x1
.line 101
iput-boolean v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMoveWhenScrollAtTop:Z
.line 102
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragScale:F
.line 103
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mFlags:I
const/high16 v2, 0x41200000 # 10.0f
.line 108
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragThreshold:F
.line 109
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringDamping:F
.line 110
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringMass:F
const/high16 v1, 0x7fc00000 # Float.NaN
.line 111
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringStiffness:F
.line 112
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringStopThreshold:F
.line 113
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringBoundary:I
.line 114
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAutoCompleteMode:I
.line 119
iput-object p2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
.line 120
invoke-static {p3}, Landroid/util/Xml;->asAttributeSet(Lorg/xmlpull/v1/XmlPullParser;)Landroid/util/AttributeSet;
move-result-object p2
invoke-direct {p0, p1, p2}, Landroidx/constraintlayout/motion/widget/TouchResponse;->fillFromAttributeList(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroidx/constraintlayout/motion/widget/MotionLayout;Landroidx/constraintlayout/motion/widget/OnSwipe;)V
.registers 8
.line 123
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
.line 45
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorSide:I
.line 46
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchSide:I
.line 47
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
const/4 v1, -0x1
.line 48
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
.line 49
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchRegionId:I
.line 50
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLimitBoundsTo:I
const/high16 v2, 0x3f000000 # 0.5f
.line 51
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
.line 52
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
.line 53
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mRotateCenterX:F
.line 54
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mRotateCenterY:F
.line 55
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mRotationCenterId:I
.line 56
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mIsRotateMode:Z
const/4 v2, 0x0
.line 57
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
const/high16 v2, 0x3f800000 # 1.0f
.line 58
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
.line 59
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
const/4 v3, 0x2
new-array v4, v3, [F
.line 60
iput-object v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
new-array v3, v3, [I
.line 61
iput-object v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
const/high16 v3, 0x40800000 # 4.0f
.line 99
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxVelocity:F
const v3, 0x3f99999a # 1.2f
.line 100
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxAcceleration:F
const/4 v3, 0x1
.line 101
iput-boolean v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMoveWhenScrollAtTop:Z
.line 102
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragScale:F
.line 103
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mFlags:I
const/high16 v4, 0x41200000 # 10.0f
.line 108
iput v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragThreshold:F
.line 109
iput v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringDamping:F
.line 110
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringMass:F
const/high16 v2, 0x7fc00000 # Float.NaN
.line 111
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringStiffness:F
.line 112
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringStopThreshold:F
.line 113
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringBoundary:I
.line 114
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAutoCompleteMode:I
.line 124
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
.line 125
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getTouchAnchorId()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
.line 126
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getTouchAnchorSide()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorSide:I
if-eq p1, v1, :cond_71
.line 128
sget-object v1, Landroidx/constraintlayout/motion/widget/TouchResponse;->TOUCH_SIDES:[[F
aget-object v4, v1, p1
aget v4, v4, v0
iput v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
.line 129
aget-object p1, v1, p1
aget p1, p1, v3
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
.line 131
:cond_71
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getDragDirection()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchSide:I
.line 132
sget-object v1, Landroidx/constraintlayout/motion/widget/TouchResponse;->TOUCH_DIRECTION:[[F
array-length v4, v1
if-ge p1, v4, :cond_89
.line 133
aget-object v2, v1, p1
aget v0, v2, v0
iput v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
.line 134
aget-object p1, v1, p1
aget p1, p1, v3
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
goto :goto_8f
.line 136
:cond_89
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
iput v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
.line 137
iput-boolean v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mIsRotateMode:Z
.line 139
:goto_8f
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getMaxVelocity()F
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxVelocity:F
.line 140
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getMaxAcceleration()F
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxAcceleration:F
.line 141
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getMoveWhenScrollAtTop()Z
move-result p1
iput-boolean p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMoveWhenScrollAtTop:Z
.line 142
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getDragScale()F
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragScale:F
.line 143
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getDragThreshold()F
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragThreshold:F
.line 144
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getTouchRegionId()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchRegionId:I
.line 145
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getOnTouchUp()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
.line 146
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getNestedScrollFlags()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mFlags:I
.line 147
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getLimitBoundsTo()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLimitBoundsTo:I
.line 148
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getRotationCenterId()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mRotationCenterId:I
.line 149
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getSpringBoundary()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringBoundary:I
.line 150
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getSpringDamping()F
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringDamping:F
.line 151
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getSpringMass()F
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringMass:F
.line 152
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getSpringStiffness()F
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringStiffness:F
.line 153
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getSpringStopThreshold()F
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringStopThreshold:F
.line 154
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/OnSwipe;->getAutoCompleteMode()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAutoCompleteMode:I
return-void
.end method
.method private fill(Landroid/content/res/TypedArray;)V
.registers 9
.line 186
invoke-virtual {p1}, Landroid/content/res/TypedArray;->getIndexCount()I
move-result v0
const/4 v1, 0x0
const/4 v2, 0x0
:goto_6
if-ge v2, v0, :cond_136
.line 188
invoke-virtual {p1, v2}, Landroid/content/res/TypedArray;->getIndex(I)I
move-result v3
.line 189
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_touchAnchorId:I
if-ne v3, v4, :cond_1a
.line 190
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getResourceId(II)I
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
goto/16 :goto_132
.line 191
:cond_1a
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_touchAnchorSide:I
const/4 v5, 0x1
if-ne v3, v4, :cond_37
.line 192
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorSide:I
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getInt(II)I
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorSide:I
.line 193
sget-object v4, Landroidx/constraintlayout/motion/widget/TouchResponse;->TOUCH_SIDES:[[F
aget-object v6, v4, v3
aget v6, v6, v1
iput v6, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
.line 194
aget-object v3, v4, v3
aget v3, v3, v5
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
goto/16 :goto_132
.line 195
:cond_37
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_dragDirection:I
if-ne v3, v4, :cond_60
.line 196
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchSide:I
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getInt(II)I
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchSide:I
.line 197
sget-object v4, Landroidx/constraintlayout/motion/widget/TouchResponse;->TOUCH_DIRECTION:[[F
array-length v6, v4
if-ge v3, v6, :cond_56
.line 198
aget-object v6, v4, v3
aget v6, v6, v1
iput v6, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
.line 199
aget-object v3, v4, v3
aget v3, v3, v5
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
goto/16 :goto_132
:cond_56
const/high16 v3, 0x7fc00000 # Float.NaN
.line 201
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
.line 202
iput-boolean v5, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mIsRotateMode:Z
goto/16 :goto_132
.line 204
:cond_60
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_maxVelocity:I
if-ne v3, v4, :cond_6e
.line 205
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxVelocity:F
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxVelocity:F
goto/16 :goto_132
.line 206
:cond_6e
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_maxAcceleration:I
if-ne v3, v4, :cond_7c
.line 207
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxAcceleration:F
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxAcceleration:F
goto/16 :goto_132
.line 208
:cond_7c
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_moveWhenScrollAtTop:I
if-ne v3, v4, :cond_8a
.line 209
iget-boolean v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMoveWhenScrollAtTop:Z
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
move-result v3
iput-boolean v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMoveWhenScrollAtTop:Z
goto/16 :goto_132
.line 210
:cond_8a
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_dragScale:I
if-ne v3, v4, :cond_98
.line 211
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragScale:F
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragScale:F
goto/16 :goto_132
.line 212
:cond_98
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_dragThreshold:I
if-ne v3, v4, :cond_a6
.line 213
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragThreshold:F
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragThreshold:F
goto/16 :goto_132
.line 214
:cond_a6
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_touchRegionId:I
if-ne v3, v4, :cond_b4
.line 215
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchRegionId:I
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getResourceId(II)I
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchRegionId:I
goto/16 :goto_132
.line 216
:cond_b4
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_onTouchUp:I
if-ne v3, v4, :cond_c2
.line 217
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getInt(II)I
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
goto/16 :goto_132
.line 218
:cond_c2
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_nestedScrollFlags:I
if-ne v3, v4, :cond_cd
.line 219
invoke-virtual {p1, v3, v1}, Landroid/content/res/TypedArray;->getInteger(II)I
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mFlags:I
goto :goto_132
.line 220
:cond_cd
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_limitBoundsTo:I
if-ne v3, v4, :cond_d8
.line 221
invoke-virtual {p1, v3, v1}, Landroid/content/res/TypedArray;->getResourceId(II)I
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLimitBoundsTo:I
goto :goto_132
.line 222
:cond_d8
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_rotationCenterId:I
if-ne v3, v4, :cond_e5
.line 223
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mRotationCenterId:I
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getResourceId(II)I
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mRotationCenterId:I
goto :goto_132
.line 224
:cond_e5
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_springDamping:I
if-ne v3, v4, :cond_f2
.line 225
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringDamping:F
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringDamping:F
goto :goto_132
.line 226
:cond_f2
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_springMass:I
if-ne v3, v4, :cond_ff
.line 227
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringMass:F
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringMass:F
goto :goto_132
.line 228
:cond_ff
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_springStiffness:I
if-ne v3, v4, :cond_10c
.line 229
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringStiffness:F
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringStiffness:F
goto :goto_132
.line 230
:cond_10c
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_springStopThreshold:I
if-ne v3, v4, :cond_119
.line 231
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringStopThreshold:F
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringStopThreshold:F
goto :goto_132
.line 232
:cond_119
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_springBoundary:I
if-ne v3, v4, :cond_126
.line 233
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringBoundary:I
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getInt(II)I
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringBoundary:I
goto :goto_132
.line 234
:cond_126
sget v4, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe_autoCompleteMode:I
if-ne v3, v4, :cond_132
.line 235
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAutoCompleteMode:I
invoke-virtual {p1, v3, v4}, Landroid/content/res/TypedArray;->getInt(II)I
move-result v3
iput v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAutoCompleteMode:I
:cond_132
:goto_132
add-int/lit8 v2, v2, 0x1
goto/16 :goto_6
:cond_136
return-void
.end method
.method private fillFromAttributeList(Landroid/content/Context;Landroid/util/AttributeSet;)V
.registers 4
.line 180
sget-object v0, Landroidx/constraintlayout/widget/R$styleable;->OnSwipe:[I
invoke-virtual {p1, p2, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;
move-result-object p1
.line 181
invoke-direct {p0, p1}, Landroidx/constraintlayout/motion/widget/TouchResponse;->fill(Landroid/content/res/TypedArray;)V
.line 182
invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V
return-void
.end method
# virtual methods
.method dot(FF)F
.registers 4
.line 821
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
mul-float p1, p1, v0
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
mul-float p2, p2, v0
add-float/2addr p1, p2
return p1
.end method
.method public getAnchorId()I
.registers 2
.line 702
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
return v0
.end method
.method public getAutoCompleteMode()I
.registers 2
.line 760
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAutoCompleteMode:I
return v0
.end method
.method public getFlags()I
.registers 2
.line 834
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mFlags:I
return v0
.end method
.method getLimitBoundsTo(Landroid/view/ViewGroup;Landroid/graphics/RectF;)Landroid/graphics/RectF;
.registers 6
.line 805
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLimitBoundsTo:I
const/4 v1, 0x0
const/4 v2, -0x1
if-ne v0, v2, :cond_7
return-object v1
.line 808
:cond_7
invoke-virtual {p1, v0}, Landroid/view/ViewGroup;->findViewById(I)Landroid/view/View;
move-result-object p1
if-nez p1, :cond_e
return-object v1
.line 812
:cond_e
invoke-virtual {p1}, Landroid/view/View;->getLeft()I
move-result v0
int-to-float v0, v0
invoke-virtual {p1}, Landroid/view/View;->getTop()I
move-result v1
int-to-float v1, v1
invoke-virtual {p1}, Landroid/view/View;->getRight()I
move-result v2
int-to-float v2, v2
invoke-virtual {p1}, Landroid/view/View;->getBottom()I
move-result p1
int-to-float p1, p1
invoke-virtual {p2, v0, v1, v2, p1}, Landroid/graphics/RectF;->set(FFFF)V
return-object p2
.end method
.method getLimitBoundsToId()I
.registers 2
.line 817
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLimitBoundsTo:I
return v0
.end method
.method getMaxAcceleration()F
.registers 2
.line 737
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxAcceleration:F
return v0
.end method
.method public getMaxVelocity()F
.registers 2
.line 747
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxVelocity:F
return v0
.end method
.method getMoveWhenScrollAtTop()Z
.registers 2
.line 751
iget-boolean v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMoveWhenScrollAtTop:Z
return v0
.end method
.method getProgressDirection(FF)F
.registers 10
.line 588
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getProgress()F
move-result v3
.line 589
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
iget v5, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
iget-object v6, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
invoke-virtual/range {v1 .. v6}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getAnchorDpDt(IFFF[F)V
.line 591
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
const v1, 0x33d6bf95 # 1.0E-7f
const/4 v2, 0x0
cmpl-float v3, v0, v2
if-eqz v3, :cond_2e
.line 592
iget-object p2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
const/4 v3, 0x0
aget v4, p2, v3
cmpl-float v2, v4, v2
if-nez v2, :cond_28
.line 593
aput v1, p2, v3
:cond_28
mul-float p1, p1, v0
.line 595
aget p2, p2, v3
div-float/2addr p1, p2
goto :goto_41
.line 597
:cond_2e
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
const/4 v0, 0x1
aget v3, p1, v0
cmpl-float v2, v3, v2
if-nez v2, :cond_39
.line 598
aput v1, p1, v0
.line 600
:cond_39
iget v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
mul-float p2, p2, v1
aget p1, p1, v0
div-float p1, p2, p1
:goto_41
return p1
.end method
.method public getSpringBoundary()I
.registers 2
.line 885
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringBoundary:I
return v0
.end method
.method public getSpringDamping()F
.registers 2
.line 865
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringDamping:F
return v0
.end method
.method public getSpringMass()F
.registers 2
.line 856
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringMass:F
return v0
.end method
.method public getSpringStiffness()F
.registers 2
.line 847
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringStiffness:F
return v0
.end method
.method public getSpringStopThreshold()F
.registers 2
.line 873
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mSpringStopThreshold:F
return v0
.end method
.method getTouchRegion(Landroid/view/ViewGroup;Landroid/graphics/RectF;)Landroid/graphics/RectF;
.registers 6
.line 781
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchRegionId:I
const/4 v1, 0x0
const/4 v2, -0x1
if-ne v0, v2, :cond_7
return-object v1
.line 784
:cond_7
invoke-virtual {p1, v0}, Landroid/view/ViewGroup;->findViewById(I)Landroid/view/View;
move-result-object p1
if-nez p1, :cond_e
return-object v1
.line 788
:cond_e
invoke-virtual {p1}, Landroid/view/View;->getLeft()I
move-result v0
int-to-float v0, v0
invoke-virtual {p1}, Landroid/view/View;->getTop()I
move-result v1
int-to-float v1, v1
invoke-virtual {p1}, Landroid/view/View;->getRight()I
move-result v2
int-to-float v2, v2
invoke-virtual {p1}, Landroid/view/View;->getBottom()I
move-result p1
int-to-float p1, p1
invoke-virtual {p2, v0, v1, v2, p1}, Landroid/graphics/RectF;->set(FFFF)V
return-object p2
.end method
.method getTouchRegionId()I
.registers 2
.line 793
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchRegionId:I
return v0
.end method
.method processTouchEvent(Landroid/view/MotionEvent;Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;ILandroidx/constraintlayout/motion/widget/MotionScene;)V
.registers 25
move-object/from16 v0, p0
move-object/from16 v1, p2
.line 412
iget-boolean v2, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mIsRotateMode:Z
if-eqz v2, :cond_c
.line 413
invoke-virtual/range {p0 .. p4}, Landroidx/constraintlayout/motion/widget/TouchResponse;->processTouchRotateEvent(Landroid/view/MotionEvent;Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;ILandroidx/constraintlayout/motion/widget/MotionScene;)V
return-void
:cond_c
move-object/from16 v2, p1
.line 416
invoke-interface {v1, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->addMovement(Landroid/view/MotionEvent;)V
.line 417
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getAction()I
move-result v3
const/4 v4, 0x0
if-eqz v3, :cond_20c
const/4 v6, 0x6
const/4 v7, -0x1
const/high16 v9, 0x3f800000 # 1.0f
const/4 v10, 0x1
const/4 v11, 0x0
if-eq v3, v10, :cond_142
const/4 v12, 0x2
if-eq v3, v12, :cond_25
goto/16 :goto_21a
.line 424
:cond_25
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawY()F
move-result v3
iget v12, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchY:F
sub-float/2addr v3, v12
.line 425
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawX()F
move-result v12
iget v13, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchX:F
sub-float/2addr v12, v13
.line 426
iget v13, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
mul-float v13, v13, v12
iget v14, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
mul-float v14, v14, v3
add-float/2addr v13, v14
.line 431
invoke-static {v13}, Ljava/lang/Math;->abs(F)F
move-result v13
iget v14, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragThreshold:F
cmpl-float v13, v13, v14
if-gtz v13, :cond_4a
iget-boolean v13, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
if-eqz v13, :cond_21a
.line 435
:cond_4a
iget-object v13, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v13}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getProgress()F
move-result v13
.line 436
iget-boolean v14, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
if-nez v14, :cond_5b
.line 437
iput-boolean v10, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
.line 438
iget-object v14, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v14, v13}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
.line 443
:cond_5b
iget v15, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
if-eq v15, v7, :cond_73
.line 445
iget-object v14, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
iget v8, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
iget-object v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
move/from16 v16, v13
move/from16 v17, v7
move/from16 v18, v8
move-object/from16 v19, v5
invoke-virtual/range {v14 .. v19}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getAnchorDpDt(IFFF[F)V
goto :goto_92
.line 453
:cond_73
iget-object v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v5}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getWidth()I
move-result v5
iget-object v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v7}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getHeight()I
move-result v7
invoke-static {v5, v7}, Ljava/lang/Math;->min(II)I
move-result v5
int-to-float v5, v5
.line 454
iget-object v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
iget v8, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
mul-float v8, v8, v5
aput v8, v7, v10
.line 455
iget v8, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
mul-float v5, v5, v8
aput v5, v7, v4
.line 458
:goto_92
iget v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
iget-object v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget v8, v7, v4
mul-float v5, v5, v8
iget v8, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
aget v7, v7, v10
mul-float v8, v8, v7
add-float/2addr v5, v8
.line 466
iget v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragScale:F
mul-float v5, v5, v7
.line 468
invoke-static {v5}, Ljava/lang/Math;->abs(F)F
move-result v5
float-to-double v7, v5
const-wide v14, 0x3f847ae147ae147bL # 0.01
const v5, 0x3c23d70a # 0.01f
cmpg-double v16, v7, v14
if-gez v16, :cond_bc
.line 469
iget-object v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aput v5, v7, v4
.line 470
aput v5, v7, v10
.line 474
:cond_bc
iget v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
cmpl-float v7, v7, v11
if-eqz v7, :cond_c8
.line 475
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget v3, v3, v4
div-float/2addr v12, v3
goto :goto_ce
.line 477
:cond_c8
iget-object v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget v7, v7, v10
div-float v12, v3, v7
:goto_ce
add-float/2addr v13, v12
.line 483
invoke-static {v13, v9}, Ljava/lang/Math;->min(FF)F
move-result v3
invoke-static {v3, v11}, Ljava/lang/Math;->max(FF)F
move-result v3
.line 485
iget v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
if-ne v7, v6, :cond_df
.line 486
invoke-static {v3, v5}, Ljava/lang/Math;->max(FF)F
move-result v3
.line 488
:cond_df
iget v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
const/4 v6, 0x7
if-ne v5, v6, :cond_eb
const v5, 0x3f7d70a4 # 0.99f
.line 489
invoke-static {v3, v5}, Ljava/lang/Math;->min(FF)F
move-result v3
.line 492
:cond_eb
iget-object v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v5}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getProgress()F
move-result v5
cmpl-float v6, v3, v5
if-eqz v6, :cond_130
cmpl-float v6, v5, v11
if-eqz v6, :cond_fd
cmpl-float v5, v5, v9
if-nez v5, :cond_107
.line 495
:cond_fd
iget-object v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
if-nez v6, :cond_103
const/4 v6, 0x1
goto :goto_104
:cond_103
const/4 v6, 0x0
:goto_104
invoke-virtual {v5, v6}, Landroidx/constraintlayout/motion/widget/MotionLayout;->endTrigger(Z)V
.line 497
:cond_107
iget-object v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v5, v3}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
const/16 v3, 0x3e8
.line 501
invoke-interface {v1, v3}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->computeCurrentVelocity(I)V
.line 502
invoke-interface/range {p2 .. p2}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->getXVelocity()F
move-result v3
.line 503
invoke-interface/range {p2 .. p2}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->getYVelocity()F
move-result v1
.line 504
iget v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
cmpl-float v5, v5, v11
if-eqz v5, :cond_125
iget-object v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget v1, v1, v4
div-float/2addr v3, v1
goto :goto_12b
:cond_125
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget v3, v3, v10
div-float v3, v1, v3
.line 505
:goto_12b
iget-object v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iput v3, v1, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
goto :goto_134
.line 507
:cond_130
iget-object v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iput v11, v1, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
.line 509
:goto_134
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawX()F
move-result v1
iput v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchX:F
.line 510
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawY()F
move-result v1
iput v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchY:F
goto/16 :goto_21a
.line 514
:cond_142
iput-boolean v4, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
const/16 v2, 0x3e8
.line 515
invoke-interface {v1, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->computeCurrentVelocity(I)V
.line 516
invoke-interface/range {p2 .. p2}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->getXVelocity()F
move-result v2
.line 517
invoke-interface/range {p2 .. p2}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->getYVelocity()F
move-result v1
.line 518
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v3}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getProgress()F
move-result v3
.line 524
iget v13, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
if-eq v13, v7, :cond_16c
.line 525
iget-object v12, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget v15, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
iget v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
iget-object v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
move v14, v3
move/from16 v16, v5
move-object/from16 v17, v7
invoke-virtual/range {v12 .. v17}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getAnchorDpDt(IFFF[F)V
goto :goto_18b
.line 527
:cond_16c
iget-object v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v5}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getWidth()I
move-result v5
iget-object v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v7}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getHeight()I
move-result v7
invoke-static {v5, v7}, Ljava/lang/Math;->min(II)I
move-result v5
int-to-float v5, v5
.line 528
iget-object v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
iget v8, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
mul-float v8, v8, v5
aput v8, v7, v10
.line 529
iget v8, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
mul-float v5, v5, v8
aput v5, v7, v4
.line 531
:goto_18b
iget v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
iget-object v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget v8, v7, v4
aget v8, v7, v10
cmpl-float v5, v5, v11
if-eqz v5, :cond_19b
.line 534
aget v1, v7, v4
div-float/2addr v2, v1
goto :goto_19f
.line 536
:cond_19b
aget v2, v7, v10
div-float v2, v1, v2
.line 544
:goto_19f
invoke-static {v2}, Ljava/lang/Float;->isNaN(F)Z
move-result v1
if-nez v1, :cond_1ab
const/high16 v1, 0x40400000 # 3.0f
div-float v1, v2, v1
add-float/2addr v1, v3
goto :goto_1ac
:cond_1ab
move v1, v3
:goto_1ac
cmpl-float v4, v1, v11
if-eqz v4, :cond_1fc
cmpl-float v4, v1, v9
if-eqz v4, :cond_1fc
.line 547
iget v4, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
const/4 v5, 0x3
if-eq v4, v5, :cond_1fc
float-to-double v7, v1
const-wide/high16 v12, 0x3fe0000000000000L # 0.5
cmpg-double v1, v7, v12
if-gez v1, :cond_1c2
const/4 v1, 0x0
goto :goto_1c4
:cond_1c2
const/high16 v1, 0x3f800000 # 1.0f
:goto_1c4
if-ne v4, v6, :cond_1d3
add-float v1, v3, v2
cmpg-float v1, v1, v11
if-gez v1, :cond_1d1
.line 552
invoke-static {v2}, Ljava/lang/Math;->abs(F)F
move-result v1
move v2, v1
:cond_1d1
const/high16 v1, 0x3f800000 # 1.0f
.line 556
:cond_1d3
iget v4, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
const/4 v5, 0x7
if-ne v4, v5, :cond_1e5
add-float v1, v3, v2
cmpl-float v1, v1, v9
if-lez v1, :cond_1e4
.line 558
invoke-static {v2}, Ljava/lang/Math;->abs(F)F
move-result v1
neg-float v1, v1
move v2, v1
:cond_1e4
const/4 v1, 0x0
.line 563
:cond_1e5
iget-object v4, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
invoke-virtual {v4, v5, v1, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->touchAnimateTo(IFF)V
cmpl-float v1, v11, v3
if-gez v1, :cond_1f4
cmpg-float v1, v9, v3
if-gtz v1, :cond_21a
.line 565
:cond_1f4
iget-object v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
sget-object v2, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {v1, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
goto :goto_21a
:cond_1fc
cmpl-float v2, v11, v1
if-gez v2, :cond_204
cmpg-float v1, v9, v1
if-gtz v1, :cond_21a
.line 568
:cond_204
iget-object v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
sget-object v2, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {v1, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
goto :goto_21a
.line 419
:cond_20c
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawX()F
move-result v1
iput v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchX:F
.line 420
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawY()F
move-result v1
iput v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchY:F
.line 421
iput-boolean v4, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
:cond_21a
:goto_21a
return-void
.end method
.method processTouchRotateEvent(Landroid/view/MotionEvent;Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;ILandroidx/constraintlayout/motion/widget/MotionScene;)V
.registers 28
move-object/from16 v0, p0
move-object/from16 v1, p2
move-object/from16 v2, p1
.line 254
invoke-interface {v1, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->addMovement(Landroid/view/MotionEvent;)V
.line 255
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getAction()I
move-result v3
const/4 v4, 0x0
if-eqz v3, :cond_339
const/high16 v5, 0x43b40000 # 360.0f
const/4 v6, -0x1
const/high16 v9, 0x40000000 # 2.0f
const/4 v10, 0x1
if-eq v3, v10, :cond_1c4
const/4 v11, 0x2
if-eq v3, v11, :cond_1d
goto/16 :goto_347
.line 264
:cond_1d
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawY()F
.line 265
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawX()F
.line 269
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v3}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getWidth()I
move-result v3
int-to-float v3, v3
div-float/2addr v3, v9
.line 270
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v11}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getHeight()I
move-result v11
int-to-float v11, v11
div-float/2addr v11, v9
.line 271
iget v12, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mRotationCenterId:I
if-eq v12, v6, :cond_6c
.line 272
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v3, v12}, Landroidx/constraintlayout/motion/widget/MotionLayout;->findViewById(I)Landroid/view/View;
move-result-object v3
.line 273
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget-object v12, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
invoke-virtual {v11, v12}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getLocationOnScreen([I)V
.line 274
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
aget v11, v11, v4
int-to-float v11, v11
invoke-virtual {v3}, Landroid/view/View;->getLeft()I
move-result v12
invoke-virtual {v3}, Landroid/view/View;->getRight()I
move-result v13
add-int/2addr v12, v13
int-to-float v12, v12
div-float/2addr v12, v9
add-float/2addr v11, v12
.line 275
iget-object v12, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
aget v12, v12, v10
int-to-float v12, v12
invoke-virtual {v3}, Landroid/view/View;->getTop()I
move-result v13
invoke-virtual {v3}, Landroid/view/View;->getBottom()I
move-result v3
add-int/2addr v13, v3
int-to-float v3, v13
div-float/2addr v3, v9
add-float/2addr v3, v12
move/from16 v22, v11
move v11, v3
move/from16 v3, v22
goto :goto_b3
.line 276
:cond_6c
iget v12, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
if-eq v12, v6, :cond_b3
.line 277
iget-object v13, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v13, v12}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getMotionController(I)Landroidx/constraintlayout/motion/widget/MotionController;
move-result-object v12
.line 278
iget-object v13, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v12}, Landroidx/constraintlayout/motion/widget/MotionController;->getAnimateRelativeTo()I
move-result v12
invoke-virtual {v13, v12}, Landroidx/constraintlayout/motion/widget/MotionLayout;->findViewById(I)Landroid/view/View;
move-result-object v12
if-nez v12, :cond_8a
const-string v9, "TouchResponse"
const-string v12, "could not find view to animate to"
.line 280
invoke-static {v9, v12}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_b3
.line 282
:cond_8a
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
invoke-virtual {v3, v11}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getLocationOnScreen([I)V
.line 283
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
aget v3, v3, v4
int-to-float v3, v3
invoke-virtual {v12}, Landroid/view/View;->getLeft()I
move-result v11
invoke-virtual {v12}, Landroid/view/View;->getRight()I
move-result v13
add-int/2addr v11, v13
int-to-float v11, v11
div-float/2addr v11, v9
add-float/2addr v3, v11
.line 284
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
aget v11, v11, v10
int-to-float v11, v11
invoke-virtual {v12}, Landroid/view/View;->getTop()I
move-result v13
invoke-virtual {v12}, Landroid/view/View;->getBottom()I
move-result v12
add-int/2addr v13, v12
int-to-float v12, v13
div-float/2addr v12, v9
add-float/2addr v11, v12
.line 287
:cond_b3
:goto_b3
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawX()F
move-result v9
sub-float/2addr v9, v3
.line 288
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawY()F
move-result v12
sub-float/2addr v12, v11
.line 290
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawY()F
move-result v13
sub-float/2addr v13, v11
float-to-double v13, v13
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawX()F
move-result v15
sub-float/2addr v15, v3
move/from16 p4, v9
float-to-double v8, v15
invoke-static {v13, v14, v8, v9}, Ljava/lang/Math;->atan2(DD)D
move-result-wide v8
.line 291
iget v13, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchY:F
sub-float/2addr v13, v11
float-to-double v13, v13
iget v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchX:F
sub-float/2addr v11, v3
float-to-double v6, v11
invoke-static {v13, v14, v6, v7}, Ljava/lang/Math;->atan2(DD)D
move-result-wide v6
sub-double v6, v8, v6
const-wide v13, 0x4066800000000000L # 180.0
mul-double v6, v6, v13
const-wide v13, 0x400921fb54442d18L # Math.PI
div-double/2addr v6, v13
double-to-float v6, v6
const/high16 v7, 0x43a50000 # 330.0f
cmpl-float v7, v6, v7
if-lez v7, :cond_f3
sub-float/2addr v6, v5
goto :goto_fa
:cond_f3
const/high16 v7, -0x3c5b0000 # -330.0f
cmpg-float v7, v6, v7
if-gez v7, :cond_fa
add-float/2addr v6, v5
.line 299
:cond_fa
:goto_fa
invoke-static {v6}, Ljava/lang/Math;->abs(F)F
move-result v7
float-to-double v13, v7
const-wide v16, 0x3f847ae147ae147bL # 0.01
cmpl-double v7, v13, v16
if-gtz v7, :cond_10c
iget-boolean v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
if-eqz v7, :cond_347
.line 300
:cond_10c
iget-object v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v7}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getProgress()F
move-result v7
.line 301
iget-boolean v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
if-nez v11, :cond_11d
.line 302
iput-boolean v10, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
.line 303
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v11, v7}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
.line 305
:cond_11d
iget v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
const/4 v3, -0x1
if-eq v11, v3, :cond_146
.line 306
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
iget v13, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
iget-object v14, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
move-object/from16 v16, v3
move/from16 v17, v11
move/from16 v18, v7
move/from16 v19, v5
move/from16 v20, v13
move-object/from16 v21, v14
invoke-virtual/range {v16 .. v21}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getAnchorDpDt(IFFF[F)V
.line 307
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget v5, v3, v10
float-to-double v13, v5
invoke-static {v13, v14}, Ljava/lang/Math;->toDegrees(D)D
move-result-wide v13
double-to-float v5, v13
aput v5, v3, v10
goto :goto_14a
.line 309
:cond_146
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aput v5, v3, v10
.line 311
:goto_14a
iget v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragScale:F
mul-float v6, v6, v3
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget v3, v3, v10
div-float/2addr v6, v3
add-float/2addr v7, v6
const/high16 v3, 0x3f800000 # 1.0f
.line 313
invoke-static {v7, v3}, Ljava/lang/Math;->min(FF)F
move-result v5
const/4 v6, 0x0
invoke-static {v5, v6}, Ljava/lang/Math;->max(FF)F
move-result v5
.line 314
iget-object v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v7}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getProgress()F
move-result v7
cmpl-float v11, v5, v7
if-eqz v11, :cond_1b1
cmpl-float v6, v7, v6
if-eqz v6, :cond_171
cmpl-float v3, v7, v3
if-nez v3, :cond_179
.line 318
:cond_171
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
if-nez v6, :cond_176
const/4 v4, 0x1
:cond_176
invoke-virtual {v3, v4}, Landroidx/constraintlayout/motion/widget/MotionLayout;->endTrigger(Z)V
.line 320
:cond_179
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v3, v5}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
const/16 v3, 0x3e8
.line 321
invoke-interface {v1, v3}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->computeCurrentVelocity(I)V
.line 322
invoke-interface/range {p2 .. p2}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->getXVelocity()F
move-result v3
.line 323
invoke-interface/range {p2 .. p2}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->getYVelocity()F
move-result v1
float-to-double v4, v1
float-to-double v6, v3
.line 324
invoke-static {v4, v5, v6, v7}, Ljava/lang/Math;->hypot(DD)D
move-result-wide v10
invoke-static {v4, v5, v6, v7}, Ljava/lang/Math;->atan2(DD)D
move-result-wide v3
sub-double/2addr v3, v8
invoke-static {v3, v4}, Ljava/lang/Math;->sin(D)D
move-result-wide v3
mul-double v10, v10, v3
move/from16 v9, p4
float-to-double v3, v9
float-to-double v5, v12
invoke-static {v3, v4, v5, v6}, Ljava/lang/Math;->hypot(DD)D
move-result-wide v3
div-double/2addr v10, v3
double-to-float v1, v10
.line 325
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
float-to-double v4, v1
invoke-static {v4, v5}, Ljava/lang/Math;->toDegrees(D)D
move-result-wide v4
double-to-float v1, v4
iput v1, v3, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
goto :goto_1b6
.line 327
:cond_1b1
iget-object v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
const/4 v3, 0x0
iput v3, v1, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
.line 329
:goto_1b6
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawX()F
move-result v1
iput v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchX:F
.line 330
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawY()F
move-result v1
iput v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchY:F
goto/16 :goto_347
.line 335
:cond_1c4
iput-boolean v4, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
const/16 v6, 0x10
.line 336
invoke-interface {v1, v6}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->computeCurrentVelocity(I)V
.line 338
invoke-interface/range {p2 .. p2}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->getXVelocity()F
move-result v6
.line 339
invoke-interface/range {p2 .. p2}, Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;->getYVelocity()F
move-result v1
.line 340
iget-object v7, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v7}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getProgress()F
move-result v7
.line 342
iget-object v8, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v8}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getWidth()I
move-result v8
int-to-float v8, v8
div-float/2addr v8, v9
.line 343
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v11}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getHeight()I
move-result v11
int-to-float v11, v11
div-float/2addr v11, v9
.line 344
iget v12, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mRotationCenterId:I
const/4 v3, -0x1
if-eq v12, v3, :cond_21f
.line 345
iget-object v8, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v8, v12}, Landroidx/constraintlayout/motion/widget/MotionLayout;->findViewById(I)Landroid/view/View;
move-result-object v8
.line 346
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget-object v12, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
invoke-virtual {v11, v12}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getLocationOnScreen([I)V
.line 347
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
aget v4, v11, v4
int-to-float v4, v4
invoke-virtual {v8}, Landroid/view/View;->getLeft()I
move-result v11
invoke-virtual {v8}, Landroid/view/View;->getRight()I
move-result v12
add-int/2addr v11, v12
int-to-float v11, v11
div-float/2addr v11, v9
add-float/2addr v4, v11
.line 348
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
aget v11, v11, v10
int-to-float v11, v11
invoke-virtual {v8}, Landroid/view/View;->getTop()I
move-result v12
invoke-virtual {v8}, Landroid/view/View;->getBottom()I
move-result v8
:goto_219
add-int/2addr v12, v8
int-to-float v8, v12
div-float/2addr v8, v9
add-float/2addr v11, v8
move v8, v4
goto :goto_25a
.line 349
:cond_21f
iget v12, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
const/4 v3, -0x1
if-eq v12, v3, :cond_25a
.line 350
iget-object v8, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v8, v12}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getMotionController(I)Landroidx/constraintlayout/motion/widget/MotionController;
move-result-object v8
.line 351
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v8}, Landroidx/constraintlayout/motion/widget/MotionController;->getAnimateRelativeTo()I
move-result v8
invoke-virtual {v11, v8}, Landroidx/constraintlayout/motion/widget/MotionLayout;->findViewById(I)Landroid/view/View;
move-result-object v8
.line 352
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget-object v12, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
invoke-virtual {v11, v12}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getLocationOnScreen([I)V
.line 353
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
aget v4, v11, v4
int-to-float v4, v4
invoke-virtual {v8}, Landroid/view/View;->getLeft()I
move-result v11
invoke-virtual {v8}, Landroid/view/View;->getRight()I
move-result v12
add-int/2addr v11, v12
int-to-float v11, v11
div-float/2addr v11, v9
add-float/2addr v4, v11
.line 354
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTempLoc:[I
aget v11, v11, v10
int-to-float v11, v11
invoke-virtual {v8}, Landroid/view/View;->getTop()I
move-result v12
invoke-virtual {v8}, Landroid/view/View;->getBottom()I
move-result v8
goto :goto_219
.line 356
:cond_25a
:goto_25a
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawX()F
move-result v4
sub-float/2addr v4, v8
.line 357
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawY()F
move-result v2
sub-float/2addr v2, v11
float-to-double v8, v2
float-to-double v11, v4
.line 358
invoke-static {v8, v9, v11, v12}, Ljava/lang/Math;->atan2(DD)D
move-result-wide v8
invoke-static {v8, v9}, Ljava/lang/Math;->toDegrees(D)D
move-result-wide v8
.line 360
iget v11, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
const/4 v3, -0x1
if-eq v11, v3, :cond_297
.line 361
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
iget v12, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
iget-object v13, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
move-object/from16 v16, v3
move/from16 v17, v11
move/from16 v18, v7
move/from16 v19, v5
move/from16 v20, v12
move-object/from16 v21, v13
invoke-virtual/range {v16 .. v21}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getAnchorDpDt(IFFF[F)V
.line 362
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget v5, v3, v10
float-to-double v11, v5
invoke-static {v11, v12}, Ljava/lang/Math;->toDegrees(D)D
move-result-wide v11
double-to-float v5, v11
aput v5, v3, v10
goto :goto_29b
.line 364
:cond_297
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aput v5, v3, v10
:goto_29b
add-float/2addr v1, v2
float-to-double v1, v1
add-float/2addr v6, v4
float-to-double v3, v6
.line 366
invoke-static {v1, v2, v3, v4}, Ljava/lang/Math;->atan2(DD)D
move-result-wide v1
invoke-static {v1, v2}, Ljava/lang/Math;->toDegrees(D)D
move-result-wide v1
sub-double/2addr v1, v8
double-to-float v1, v1
const/high16 v2, 0x427a0000 # 62.5f
mul-float v1, v1, v2
.line 370
invoke-static {v1}, Ljava/lang/Float;->isNaN(F)Z
move-result v2
const/high16 v3, 0x40400000 # 3.0f
if-nez v2, :cond_2c2
mul-float v2, v1, v3
.line 371
iget v4, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragScale:F
mul-float v2, v2, v4
iget-object v4, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget v4, v4, v10
div-float/2addr v2, v4
add-float/2addr v2, v7
goto :goto_2c3
:cond_2c2
move v2, v7
:goto_2c3
const/4 v4, 0x0
cmpl-float v5, v2, v4
if-eqz v5, :cond_326
const/high16 v4, 0x3f800000 # 1.0f
cmpl-float v5, v2, v4
if-eqz v5, :cond_326
.line 373
iget v4, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
const/4 v5, 0x3
if-eq v4, v5, :cond_326
.line 374
iget v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragScale:F
mul-float v1, v1, v5
iget-object v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget v5, v5, v10
div-float/2addr v1, v5
float-to-double v5, v2
const-wide/high16 v8, 0x3fe0000000000000L # 0.5
cmpg-double v2, v5, v8
if-gez v2, :cond_2e5
const/4 v2, 0x0
goto :goto_2e7
:cond_2e5
const/high16 v2, 0x3f800000 # 1.0f
:goto_2e7
const/4 v5, 0x6
if-ne v4, v5, :cond_2f7
add-float v2, v7, v1
const/4 v4, 0x0
cmpg-float v2, v2, v4
if-gez v2, :cond_2f5
.line 379
invoke-static {v1}, Ljava/lang/Math;->abs(F)F
move-result v1
:cond_2f5
const/high16 v2, 0x3f800000 # 1.0f
.line 383
:cond_2f7
iget v4, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
const/4 v5, 0x7
if-ne v4, v5, :cond_30a
add-float v2, v7, v1
const/high16 v4, 0x3f800000 # 1.0f
cmpl-float v2, v2, v4
if-lez v2, :cond_309
.line 385
invoke-static {v1}, Ljava/lang/Math;->abs(F)F
move-result v1
neg-float v1, v1
:cond_309
const/4 v2, 0x0
.line 389
:cond_30a
iget-object v4, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget v5, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
mul-float v1, v1, v3
invoke-virtual {v4, v5, v2, v1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->touchAnimateTo(IFF)V
const/4 v1, 0x0
cmpl-float v1, v1, v7
if-gez v1, :cond_31e
const/high16 v1, 0x3f800000 # 1.0f
cmpg-float v1, v1, v7
if-gtz v1, :cond_347
.line 391
:cond_31e
iget-object v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
sget-object v2, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {v1, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
goto :goto_347
:cond_326
const/4 v1, 0x0
cmpl-float v1, v1, v2
if-gez v1, :cond_331
const/high16 v1, 0x3f800000 # 1.0f
cmpg-float v1, v1, v2
if-gtz v1, :cond_347
.line 394
:cond_331
iget-object v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
sget-object v2, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {v1, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
goto :goto_347
.line 258
:cond_339
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawX()F
move-result v1
iput v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchX:F
.line 259
invoke-virtual/range {p1 .. p1}, Landroid/view/MotionEvent;->getRawY()F
move-result v1
iput v1, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchY:F
.line 261
iput-boolean v4, v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
:cond_347
:goto_347
return-void
.end method
.method scrollMove(FF)V
.registers 11
.line 629
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getProgress()F
move-result v0
.line 630
iget-boolean v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
const/4 v7, 0x1
if-nez v1, :cond_12
.line 631
iput-boolean v7, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
.line 632
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v1, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
.line 634
:cond_12
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
iget v5, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
iget-object v6, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
move v3, v0
invoke-virtual/range {v1 .. v6}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getAnchorDpDt(IFFF[F)V
.line 635
iget v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
const/4 v3, 0x0
aget v4, v2, v3
mul-float v1, v1, v4
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
aget v2, v2, v7
mul-float v4, v4, v2
add-float/2addr v1, v4
.line 637
invoke-static {v1}, Ljava/lang/Math;->abs(F)F
move-result v1
float-to-double v1, v1
const-wide v4, 0x3f847ae147ae147bL # 0.01
cmpg-double v6, v1, v4
if-gez v6, :cond_47
.line 638
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
const v2, 0x3c23d70a # 0.01f
aput v2, v1, v3
.line 639
aput v2, v1, v7
.line 643
:cond_47
iget v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
const/4 v2, 0x0
cmpl-float v4, v1, v2
if-eqz v4, :cond_56
mul-float p1, p1, v1
.line 644
iget-object p2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget p2, p2, v3
div-float/2addr p1, p2
goto :goto_60
.line 646
:cond_56
iget p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
mul-float p2, p2, p1
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget p1, p1, v7
div-float p1, p2, p1
:goto_60
add-float/2addr v0, p1
const/high16 p1, 0x3f800000 # 1.0f
.line 648
invoke-static {v0, p1}, Ljava/lang/Math;->min(FF)F
move-result p1
invoke-static {p1, v2}, Ljava/lang/Math;->max(FF)F
move-result p1
.line 650
iget-object p2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {p2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getProgress()F
move-result p2
cmpl-float p2, p1, p2
if-eqz p2, :cond_7a
.line 651
iget-object p2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {p2, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
:cond_7a
return-void
.end method
.method scrollUp(FF)V
.registers 11
const/4 v0, 0x0
.line 606
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
.line 608
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getProgress()F
move-result v1
.line 609
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
iget v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
iget v5, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
iget v6, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
iget-object v7, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
move v4, v1
invoke-virtual/range {v2 .. v7}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getAnchorDpDt(IFFF[F)V
.line 610
iget v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAnchorDpDt:[F
aget v4, v3, v0
iget v4, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
const/4 v5, 0x1
aget v6, v3, v5
const/4 v6, 0x0
cmpl-float v7, v2, v6
if-eqz v7, :cond_2d
mul-float p1, p1, v2
.line 613
aget p2, v3, v0
div-float/2addr p1, p2
goto :goto_33
:cond_2d
mul-float p2, p2, v4
.line 615
aget p1, v3, v5
div-float p1, p2, p1
.line 617
:goto_33
invoke-static {p1}, Ljava/lang/Float;->isNaN(F)Z
move-result p2
if-nez p2, :cond_3e
const/high16 p2, 0x40400000 # 3.0f
div-float p2, p1, p2
add-float/2addr v1, p2
:cond_3e
cmpl-float p2, v1, v6
if-eqz p2, :cond_63
const/high16 p2, 0x3f800000 # 1.0f
cmpl-float v2, v1, p2
if-eqz v2, :cond_4a
const/4 v2, 0x1
goto :goto_4b
:cond_4a
const/4 v2, 0x0
.line 620
:goto_4b
iget v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
const/4 v4, 0x3
if-eq v3, v4, :cond_51
const/4 v0, 0x1
:cond_51
and-int/2addr v0, v2
if-eqz v0, :cond_63
.line 621
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
float-to-double v1, v1
const-wide/high16 v4, 0x3fe0000000000000L # 0.5
cmpg-double v7, v1, v4
if-gez v7, :cond_5e
goto :goto_60
:cond_5e
const/high16 v6, 0x3f800000 # 1.0f
:goto_60
invoke-virtual {v0, v3, v6, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->touchAnimateTo(IFF)V
:cond_63
return-void
.end method
.method public setAnchorId(I)V
.registers 2
.line 693
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
return-void
.end method
.method setAutoCompleteMode(I)V
.registers 2
.line 769
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mAutoCompleteMode:I
return-void
.end method
.method setDown(FF)V
.registers 3
.line 576
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchX:F
.line 577
iput p2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchY:F
return-void
.end method
.method public setMaxAcceleration(F)V
.registers 2
.line 733
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxAcceleration:F
return-void
.end method
.method public setMaxVelocity(F)V
.registers 2
.line 723
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMaxVelocity:F
return-void
.end method
.method public setRTL(Z)V
.registers 9
const/4 v0, 0x6
const/4 v1, 0x3
const/4 v2, 0x4
const/4 v3, 0x1
const/4 v4, 0x5
const/4 v5, 0x2
if-eqz p1, :cond_1d
.line 159
sget-object p1, Landroidx/constraintlayout/motion/widget/TouchResponse;->TOUCH_DIRECTION:[[F
aget-object v1, p1, v1
aput-object v1, p1, v2
.line 160
aget-object v1, p1, v5
aput-object v1, p1, v4
.line 161
sget-object p1, Landroidx/constraintlayout/motion/widget/TouchResponse;->TOUCH_SIDES:[[F
aget-object v1, p1, v5
aput-object v1, p1, v4
.line 162
aget-object v1, p1, v3
aput-object v1, p1, v0
goto :goto_31
.line 164
:cond_1d
sget-object p1, Landroidx/constraintlayout/motion/widget/TouchResponse;->TOUCH_DIRECTION:[[F
aget-object v6, p1, v5
aput-object v6, p1, v2
.line 165
aget-object v1, p1, v1
aput-object v1, p1, v4
.line 166
sget-object p1, Landroidx/constraintlayout/motion/widget/TouchResponse;->TOUCH_SIDES:[[F
aget-object v1, p1, v3
aput-object v1, p1, v4
.line 167
aget-object v1, p1, v5
aput-object v1, p1, v0
.line 170
:goto_31
sget-object p1, Landroidx/constraintlayout/motion/widget/TouchResponse;->TOUCH_SIDES:[[F
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorSide:I
aget-object v1, p1, v0
const/4 v2, 0x0
aget v1, v1, v2
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
.line 171
aget-object p1, p1, v0
aget p1, p1, v3
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
.line 172
iget p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchSide:I
sget-object v0, Landroidx/constraintlayout/motion/widget/TouchResponse;->TOUCH_DIRECTION:[[F
array-length v1, v0
if-lt p1, v1, :cond_4a
return-void
.line 175
:cond_4a
aget-object v1, v0, p1
aget v1, v1, v2
iput v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
.line 176
aget-object p1, v0, p1
aget p1, p1, v3
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
return-void
.end method
.method public setTouchAnchorLocation(FF)V
.registers 3
.line 712
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorX:F
.line 713
iput p2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorY:F
return-void
.end method
.method public setTouchUpMode(I)V
.registers 2
.line 838
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mOnTouchUp:I
return-void
.end method
.method setUpTouchEvent(FF)V
.registers 3
.line 242
iput p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchX:F
.line 243
iput p2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mLastTouchY:F
const/4 p1, 0x0
.line 244
iput-boolean p1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mDragStarted:Z
return-void
.end method
.method setupTouch()V
.registers 5
.line 663
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
const/4 v1, -0x1
if-eq v0, v1, :cond_30
.line 664
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v1, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->findViewById(I)Landroid/view/View;
move-result-object v0
if-nez v0, :cond_31
.line 666
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "cannot find TouchAnchorId @id/"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mMotionLayout:Landroidx/constraintlayout/motion/widget/MotionLayout;
invoke-virtual {v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getContext()Landroid/content/Context;
move-result-object v2
iget v3, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchAnchorId:I
invoke-static {v2, v3}, Landroidx/constraintlayout/motion/widget/Debug;->getName(Landroid/content/Context;I)Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
const-string v2, "TouchResponse"
invoke-static {v2, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_31
:cond_30
const/4 v0, 0x0
.line 669
:cond_31
:goto_31
instance-of v1, v0, Landroidx/core/widget/NestedScrollView;
if-eqz v1, :cond_47
.line 670
check-cast v0, Landroidx/core/widget/NestedScrollView;
.line 671
new-instance v1, Landroidx/constraintlayout/motion/widget/TouchResponse$1;
invoke-direct {v1, p0}, Landroidx/constraintlayout/motion/widget/TouchResponse$1;-><init>(Landroidx/constraintlayout/motion/widget/TouchResponse;)V
invoke-virtual {v0, v1}, Landroidx/core/widget/NestedScrollView;->setOnTouchListener(Landroid/view/View$OnTouchListener;)V
.line 677
new-instance v1, Landroidx/constraintlayout/motion/widget/TouchResponse$2;
invoke-direct {v1, p0}, Landroidx/constraintlayout/motion/widget/TouchResponse$2;-><init>(Landroidx/constraintlayout/motion/widget/TouchResponse;)V
invoke-virtual {v0, v1}, Landroidx/core/widget/NestedScrollView;->setOnScrollChangeListener(Landroidx/core/widget/NestedScrollView$OnScrollChangeListener;)V
:cond_47
return-void
.end method
.method public toString()Ljava/lang/String;
.registers 3
.line 825
iget v0, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
invoke-static {v0}, Ljava/lang/Float;->isNaN(F)Z
move-result v0
if-eqz v0, :cond_b
const-string v0, "rotation"
goto :goto_23
:cond_b
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
iget v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionX:F
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;
const-string v1, " , "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Landroidx/constraintlayout/motion/widget/TouchResponse;->mTouchDirectionY:F
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
:goto_23
return-object v0
.end method