MotionLayout.smali
.class public Landroidx/constraintlayout/motion/widget/MotionLayout;
.super Landroidx/constraintlayout/widget/ConstraintLayout;
.source "SourceFile"
# interfaces
.implements Landroidx/core/view/NestedScrollingParent3;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;,
Landroidx/constraintlayout/motion/widget/MotionLayout$DevModeDraw;,
Landroidx/constraintlayout/motion/widget/MotionLayout$Model;,
Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;,
Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;,
Landroidx/constraintlayout/motion/widget/MotionLayout$MyTracker;,
Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;,
Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
}
.end annotation
# static fields
.field private static final DEBUG:Z = false
.field public static final DEBUG_SHOW_NONE:I = 0x0
.field public static final DEBUG_SHOW_PATH:I = 0x2
.field public static final DEBUG_SHOW_PROGRESS:I = 0x1
.field private static final EPSILON:F = 1.0E-5f
.field public static IS_IN_EDIT_MODE:Z = false
.field static final MAX_KEY_FRAMES:I = 0x32
.field static final TAG:Ljava/lang/String; = "MotionLayout"
.field public static final TOUCH_UP_COMPLETE:I = 0x0
.field public static final TOUCH_UP_COMPLETE_TO_END:I = 0x2
.field public static final TOUCH_UP_COMPLETE_TO_START:I = 0x1
.field public static final TOUCH_UP_DECELERATE:I = 0x4
.field public static final TOUCH_UP_DECELERATE_AND_COMPLETE:I = 0x5
.field public static final TOUCH_UP_NEVER_TO_END:I = 0x7
.field public static final TOUCH_UP_NEVER_TO_START:I = 0x6
.field public static final TOUCH_UP_STOP:I = 0x3
.field public static final VELOCITY_LAYOUT:I = 0x1
.field public static final VELOCITY_POST_LAYOUT:I = 0x0
.field public static final VELOCITY_STATIC_LAYOUT:I = 0x3
.field public static final VELOCITY_STATIC_POST_LAYOUT:I = 0x2
# instance fields
.field firstDown:Z
.field private lastPos:F
.field private lastY:F
.field private mAnimationStartTime:J
.field private mBeginState:I
.field private mBoundsCheck:Landroid/graphics/RectF;
.field mCurrentState:I
.field mDebugPath:I
.field private mDecelerateLogic:Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;
.field private mDecoratorsHelpers:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Landroidx/constraintlayout/motion/widget/MotionHelper;",
">;"
}
.end annotation
.end field
.field private mDelayedApply:Z
.field private mDesignTool:Landroidx/constraintlayout/motion/widget/DesignTool;
.field mDevModeDraw:Landroidx/constraintlayout/motion/widget/MotionLayout$DevModeDraw;
.field private mEndState:I
.field mEndWrapHeight:I
.field mEndWrapWidth:I
.field mFrameArrayList:Ljava/util/HashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/HashMap<",
"Landroid/view/View;",
"Landroidx/constraintlayout/motion/widget/MotionController;",
">;"
}
.end annotation
.end field
.field private mFrames:I
.field mHeightMeasureMode:I
.field private mInLayout:Z
.field private mInRotation:Z
.field mInTransition:Z
.field mIndirectTransition:Z
.field private mInteractionEnabled:Z
.field mInterpolator:Landroid/view/animation/Interpolator;
.field private mInverseMatrix:Landroid/graphics/Matrix;
.field mIsAnimating:Z
.field private mKeepAnimating:Z
.field private mKeyCache:Landroidx/constraintlayout/core/motion/utils/KeyCache;
.field private mLastDrawTime:J
.field private mLastFps:F
.field private mLastHeightMeasureSpec:I
.field mLastLayoutHeight:I
.field mLastLayoutWidth:I
.field mLastVelocity:F
.field private mLastWidthMeasureSpec:I
.field private mListenerPosition:F
.field private mListenerState:I
.field protected mMeasureDuringTransition:Z
.field mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
.field private mNeedsFireTransitionCompleted:Z
.field mOldHeight:I
.field mOldWidth:I
.field private mOnComplete:Ljava/lang/Runnable;
.field private mOnHideHelpers:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Landroidx/constraintlayout/motion/widget/MotionHelper;",
">;"
}
.end annotation
.end field
.field private mOnShowHelpers:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Landroidx/constraintlayout/motion/widget/MotionHelper;",
">;"
}
.end annotation
.end field
.field mPostInterpolationPosition:F
.field mPreRotate:Ljava/util/HashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/HashMap<",
"Landroid/view/View;",
"Landroidx/constraintlayout/motion/utils/ViewState;",
">;"
}
.end annotation
.end field
.field private mPreRotateHeight:I
.field private mPreRotateWidth:I
.field private mPreviouseRotation:I
.field mProgressInterpolator:Landroid/view/animation/Interpolator;
.field private mRegionView:Landroid/view/View;
.field mRotatMode:I
.field mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
.field private mScheduledTransitionTo:[I
.field mScheduledTransitions:I
.field mScrollTargetDT:F
.field mScrollTargetDX:F
.field mScrollTargetDY:F
.field mScrollTargetTime:J
.field mStartWrapHeight:I
.field mStartWrapWidth:I
.field private mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
.field private mStopLogic:Landroidx/constraintlayout/motion/utils/StopLogic;
.field mTempRect:Landroid/graphics/Rect;
.field private mTemporalInterpolator:Z
.field mTransitionCompleted:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
.field private mTransitionDuration:F
.field mTransitionGoalPosition:F
.field private mTransitionInstantly:Z
.field mTransitionLastPosition:F
.field private mTransitionLastTime:J
.field private mTransitionListener:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
.field private mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/CopyOnWriteArrayList<",
"Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;",
">;"
}
.end annotation
.end field
.field mTransitionPosition:F
.field mTransitionState:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
.field mUndergoingMotion:Z
.field mWidthMeasureMode:I
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 7
.line 1117
invoke-direct {p0, p1}, Landroidx/constraintlayout/widget/ConstraintLayout;-><init>(Landroid/content/Context;)V
const/4 p1, 0x0
.line 1013
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mProgressInterpolator:Landroid/view/animation/Interpolator;
const/4 v0, 0x0
.line 1014
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
const/4 v1, -0x1
.line 1015
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 1016
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 1017
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
const/4 v1, 0x0
.line 1018
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastWidthMeasureSpec:I
.line 1019
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastHeightMeasureSpec:I
const/4 v2, 0x1
.line 1020
iput-boolean v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInteractionEnabled:Z
.line 1022
new-instance v3, Ljava/util/HashMap;
invoke-direct {v3}, Ljava/util/HashMap;-><init>()V
iput-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
const-wide/16 v3, 0x0
.line 1024
iput-wide v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mAnimationStartTime:J
const/high16 v3, 0x3f800000 # 1.0f
.line 1025
iput v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
.line 1026
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
.line 1027
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 1029
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 1031
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
.line 1032
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mIndirectTransition:Z
.line 1039
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDebugPath:I
.line 1043
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTemporalInterpolator:Z
.line 1044
new-instance v3, Landroidx/constraintlayout/motion/utils/StopLogic;
invoke-direct {v3}, Landroidx/constraintlayout/motion/utils/StopLogic;-><init>()V
iput-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStopLogic:Landroidx/constraintlayout/motion/utils/StopLogic;
.line 1045
new-instance v3, Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;
invoke-direct {v3, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecelerateLogic:Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;
.line 1049
iput-boolean v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->firstDown:Z
.line 1056
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mUndergoingMotion:Z
.line 1061
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeepAnimating:Z
.line 1063
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnShowHelpers:Ljava/util/ArrayList;
.line 1064
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnHideHelpers:Ljava/util/ArrayList;
.line 1065
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
.line 1066
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
.line 1067
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrames:I
const-wide/16 v2, -0x1
.line 1068
iput-wide v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastDrawTime:J
.line 1069
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastFps:F
.line 1070
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mListenerState:I
.line 1071
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mListenerPosition:F
.line 1072
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mIsAnimating:Z
.line 1079
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mMeasureDuringTransition:Z
.line 1087
new-instance v0, Landroidx/constraintlayout/core/motion/utils/KeyCache;
invoke-direct {v0}, Landroidx/constraintlayout/core/motion/utils/KeyCache;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeyCache:Landroidx/constraintlayout/core/motion/utils/KeyCache;
.line 1088
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInLayout:Z
.line 1090
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnComplete:Ljava/lang/Runnable;
.line 1091
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitionTo:[I
.line 1092
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitions:I
.line 1093
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInRotation:Z
.line 1094
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRotatMode:I
.line 1095
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreRotate:Ljava/util/HashMap;
.line 1099
new-instance v0, Landroid/graphics/Rect;
invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTempRect:Landroid/graphics/Rect;
.line 1100
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDelayedApply:Z
.line 1113
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->UNDEFINED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionState:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
.line 2871
new-instance v0, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
invoke-direct {v0, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
.line 3770
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mNeedsFireTransitionCompleted:Z
.line 3989
new-instance v0, Landroid/graphics/RectF;
invoke-direct {v0}, Landroid/graphics/RectF;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBoundsCheck:Landroid/graphics/RectF;
.line 3990
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRegionView:Landroid/view/View;
.line 3991
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInverseMatrix:Landroid/graphics/Matrix;
.line 4396
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionCompleted:Ljava/util/ArrayList;
.line 1118
invoke-direct {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->init(Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.registers 8
.line 1122
invoke-direct {p0, p1, p2}, Landroidx/constraintlayout/widget/ConstraintLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
const/4 p1, 0x0
.line 1013
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mProgressInterpolator:Landroid/view/animation/Interpolator;
const/4 v0, 0x0
.line 1014
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
const/4 v1, -0x1
.line 1015
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 1016
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 1017
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
const/4 v1, 0x0
.line 1018
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastWidthMeasureSpec:I
.line 1019
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastHeightMeasureSpec:I
const/4 v2, 0x1
.line 1020
iput-boolean v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInteractionEnabled:Z
.line 1022
new-instance v3, Ljava/util/HashMap;
invoke-direct {v3}, Ljava/util/HashMap;-><init>()V
iput-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
const-wide/16 v3, 0x0
.line 1024
iput-wide v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mAnimationStartTime:J
const/high16 v3, 0x3f800000 # 1.0f
.line 1025
iput v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
.line 1026
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
.line 1027
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 1029
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 1031
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
.line 1032
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mIndirectTransition:Z
.line 1039
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDebugPath:I
.line 1043
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTemporalInterpolator:Z
.line 1044
new-instance v3, Landroidx/constraintlayout/motion/utils/StopLogic;
invoke-direct {v3}, Landroidx/constraintlayout/motion/utils/StopLogic;-><init>()V
iput-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStopLogic:Landroidx/constraintlayout/motion/utils/StopLogic;
.line 1045
new-instance v3, Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;
invoke-direct {v3, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecelerateLogic:Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;
.line 1049
iput-boolean v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->firstDown:Z
.line 1056
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mUndergoingMotion:Z
.line 1061
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeepAnimating:Z
.line 1063
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnShowHelpers:Ljava/util/ArrayList;
.line 1064
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnHideHelpers:Ljava/util/ArrayList;
.line 1065
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
.line 1066
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
.line 1067
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrames:I
const-wide/16 v2, -0x1
.line 1068
iput-wide v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastDrawTime:J
.line 1069
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastFps:F
.line 1070
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mListenerState:I
.line 1071
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mListenerPosition:F
.line 1072
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mIsAnimating:Z
.line 1079
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mMeasureDuringTransition:Z
.line 1087
new-instance v0, Landroidx/constraintlayout/core/motion/utils/KeyCache;
invoke-direct {v0}, Landroidx/constraintlayout/core/motion/utils/KeyCache;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeyCache:Landroidx/constraintlayout/core/motion/utils/KeyCache;
.line 1088
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInLayout:Z
.line 1090
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnComplete:Ljava/lang/Runnable;
.line 1091
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitionTo:[I
.line 1092
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitions:I
.line 1093
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInRotation:Z
.line 1094
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRotatMode:I
.line 1095
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreRotate:Ljava/util/HashMap;
.line 1099
new-instance v0, Landroid/graphics/Rect;
invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTempRect:Landroid/graphics/Rect;
.line 1100
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDelayedApply:Z
.line 1113
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->UNDEFINED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionState:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
.line 2871
new-instance v0, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
invoke-direct {v0, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
.line 3770
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mNeedsFireTransitionCompleted:Z
.line 3989
new-instance v0, Landroid/graphics/RectF;
invoke-direct {v0}, Landroid/graphics/RectF;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBoundsCheck:Landroid/graphics/RectF;
.line 3990
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRegionView:Landroid/view/View;
.line 3991
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInverseMatrix:Landroid/graphics/Matrix;
.line 4396
new-instance p1, Ljava/util/ArrayList;
invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionCompleted:Ljava/util/ArrayList;
.line 1123
invoke-direct {p0, p2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->init(Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.registers 8
.line 1127
invoke-direct {p0, p1, p2, p3}, Landroidx/constraintlayout/widget/ConstraintLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
const/4 p1, 0x0
.line 1013
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mProgressInterpolator:Landroid/view/animation/Interpolator;
const/4 p3, 0x0
.line 1014
iput p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
const/4 v0, -0x1
.line 1015
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 1016
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 1017
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
const/4 v0, 0x0
.line 1018
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastWidthMeasureSpec:I
.line 1019
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastHeightMeasureSpec:I
const/4 v1, 0x1
.line 1020
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInteractionEnabled:Z
.line 1022
new-instance v2, Ljava/util/HashMap;
invoke-direct {v2}, Ljava/util/HashMap;-><init>()V
iput-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
const-wide/16 v2, 0x0
.line 1024
iput-wide v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mAnimationStartTime:J
const/high16 v2, 0x3f800000 # 1.0f
.line 1025
iput v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
.line 1026
iput p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
.line 1027
iput p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 1029
iput p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 1031
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
.line 1032
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mIndirectTransition:Z
.line 1039
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDebugPath:I
.line 1043
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTemporalInterpolator:Z
.line 1044
new-instance v2, Landroidx/constraintlayout/motion/utils/StopLogic;
invoke-direct {v2}, Landroidx/constraintlayout/motion/utils/StopLogic;-><init>()V
iput-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStopLogic:Landroidx/constraintlayout/motion/utils/StopLogic;
.line 1045
new-instance v2, Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;
invoke-direct {v2, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecelerateLogic:Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;
.line 1049
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->firstDown:Z
.line 1056
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mUndergoingMotion:Z
.line 1061
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeepAnimating:Z
.line 1063
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnShowHelpers:Ljava/util/ArrayList;
.line 1064
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnHideHelpers:Ljava/util/ArrayList;
.line 1065
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
.line 1066
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
.line 1067
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrames:I
const-wide/16 v1, -0x1
.line 1068
iput-wide v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastDrawTime:J
.line 1069
iput p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastFps:F
.line 1070
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mListenerState:I
.line 1071
iput p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mListenerPosition:F
.line 1072
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mIsAnimating:Z
.line 1079
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mMeasureDuringTransition:Z
.line 1087
new-instance p3, Landroidx/constraintlayout/core/motion/utils/KeyCache;
invoke-direct {p3}, Landroidx/constraintlayout/core/motion/utils/KeyCache;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeyCache:Landroidx/constraintlayout/core/motion/utils/KeyCache;
.line 1088
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInLayout:Z
.line 1090
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnComplete:Ljava/lang/Runnable;
.line 1091
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitionTo:[I
.line 1092
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitions:I
.line 1093
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInRotation:Z
.line 1094
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRotatMode:I
.line 1095
new-instance p3, Ljava/util/HashMap;
invoke-direct {p3}, Ljava/util/HashMap;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreRotate:Ljava/util/HashMap;
.line 1099
new-instance p3, Landroid/graphics/Rect;
invoke-direct {p3}, Landroid/graphics/Rect;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTempRect:Landroid/graphics/Rect;
.line 1100
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDelayedApply:Z
.line 1113
sget-object p3, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->UNDEFINED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
iput-object p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionState:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
.line 2871
new-instance p3, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
invoke-direct {p3, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
.line 3770
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mNeedsFireTransitionCompleted:Z
.line 3989
new-instance p3, Landroid/graphics/RectF;
invoke-direct {p3}, Landroid/graphics/RectF;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBoundsCheck:Landroid/graphics/RectF;
.line 3990
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRegionView:Landroid/view/View;
.line 3991
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInverseMatrix:Landroid/graphics/Matrix;
.line 4396
new-instance p1, Ljava/util/ArrayList;
invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionCompleted:Ljava/util/ArrayList;
.line 1128
invoke-direct {p0, p2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->init(Landroid/util/AttributeSet;)V
return-void
.end method
.method static synthetic access$000(Landroidx/constraintlayout/motion/widget/MotionLayout;)Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
.registers 1
.line 994
iget-object p0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
return-object p0
.end method
.method static synthetic access$100(Landroidx/constraintlayout/motion/widget/MotionLayout;)I
.registers 1
.line 994
iget p0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
return p0
.end method
.method static synthetic access$1000(Landroidx/constraintlayout/motion/widget/MotionLayout;Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;III)V
.registers 5
.line 994
invoke-virtual {p0, p1, p2, p3, p4}, Landroidx/constraintlayout/motion/widget/MotionLayout;->resolveSystem(Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;III)V
return-void
.end method
.method static synthetic access$1100(Landroidx/constraintlayout/motion/widget/MotionLayout;ZLandroid/view/View;Landroidx/constraintlayout/core/widgets/ConstraintWidget;Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;Landroid/util/SparseArray;)V
.registers 6
.line 994
invoke-virtual/range {p0 .. p5}, Landroidx/constraintlayout/motion/widget/MotionLayout;->applyConstraintsFromLayoutParams(ZLandroid/view/View;Landroidx/constraintlayout/core/widgets/ConstraintWidget;Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;Landroid/util/SparseArray;)V
return-void
.end method
.method static synthetic access$1200(Landroidx/constraintlayout/motion/widget/MotionLayout;)I
.registers 1
.line 994
iget p0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastWidthMeasureSpec:I
return p0
.end method
.method static synthetic access$1300(Landroidx/constraintlayout/motion/widget/MotionLayout;)I
.registers 1
.line 994
iget p0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastHeightMeasureSpec:I
return p0
.end method
.method static synthetic access$1400(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
.registers 1
.line 994
invoke-direct {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setupMotionViews()V
return-void
.end method
.method static synthetic access$1500(Landroidx/constraintlayout/motion/widget/MotionLayout;IIIIZZ)V
.registers 7
.line 994
invoke-virtual/range {p0 .. p6}, Landroidx/constraintlayout/motion/widget/MotionLayout;->resolveMeasuredDimension(IIIIZZ)V
return-void
.end method
.method static synthetic access$1600(Landroidx/constraintlayout/motion/widget/MotionLayout;Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;III)V
.registers 5
.line 994
invoke-virtual {p0, p1, p2, p3, p4}, Landroidx/constraintlayout/motion/widget/MotionLayout;->resolveSystem(Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;III)V
return-void
.end method
.method static synthetic access$1700(Landroidx/constraintlayout/motion/widget/MotionLayout;Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;III)V
.registers 5
.line 994
invoke-virtual {p0, p1, p2, p3, p4}, Landroidx/constraintlayout/motion/widget/MotionLayout;->resolveSystem(Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;III)V
return-void
.end method
.method static synthetic access$1800(Landroidx/constraintlayout/motion/widget/MotionLayout;Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;III)V
.registers 5
.line 994
invoke-virtual {p0, p1, p2, p3, p4}, Landroidx/constraintlayout/motion/widget/MotionLayout;->resolveSystem(Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;III)V
return-void
.end method
.method static synthetic access$1900(Landroidx/constraintlayout/motion/widget/MotionLayout;Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;III)V
.registers 5
.line 994
invoke-virtual {p0, p1, p2, p3, p4}, Landroidx/constraintlayout/motion/widget/MotionLayout;->resolveSystem(Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;III)V
return-void
.end method
.method static synthetic access$200(Landroidx/constraintlayout/motion/widget/MotionLayout;)I
.registers 1
.line 994
iget p0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
return p0
.end method
.method static synthetic access$2000(Landroidx/constraintlayout/motion/widget/MotionLayout;Landroidx/constraintlayout/core/widgets/ConstraintWidget;)Landroid/graphics/Rect;
.registers 2
.line 994
invoke-direct {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->toRect(Landroidx/constraintlayout/core/widgets/ConstraintWidget;)Landroid/graphics/Rect;
move-result-object p0
return-object p0
.end method
.method static synthetic access$2100(Landroidx/constraintlayout/motion/widget/MotionLayout;)I
.registers 1
.line 994
iget p0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreRotateWidth:I
return p0
.end method
.method static synthetic access$2200(Landroidx/constraintlayout/motion/widget/MotionLayout;)I
.registers 1
.line 994
iget p0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreRotateHeight:I
return p0
.end method
.method static synthetic access$300(Landroidx/constraintlayout/motion/widget/MotionLayout;)Z
.registers 1
.line 994
iget-boolean p0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInRotation:Z
return p0
.end method
.method static synthetic access$302(Landroidx/constraintlayout/motion/widget/MotionLayout;Z)Z
.registers 2
.line 994
iput-boolean p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInRotation:Z
return p1
.end method
.method static synthetic access$400(Landroidx/constraintlayout/motion/widget/MotionLayout;)Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
.registers 1
.line 994
iget-object p0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
return-object p0
.end method
.method static synthetic access$500(Landroidx/constraintlayout/motion/widget/MotionLayout;)Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
.registers 1
.line 994
iget-object p0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
return-object p0
.end method
.method static synthetic access$600(Landroidx/constraintlayout/motion/widget/MotionLayout;)Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
.registers 1
.line 994
iget-object p0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
return-object p0
.end method
.method static synthetic access$700(Landroidx/constraintlayout/motion/widget/MotionLayout;)Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
.registers 1
.line 994
iget-object p0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
return-object p0
.end method
.method static synthetic access$800(Landroidx/constraintlayout/motion/widget/MotionLayout;)Z
.registers 1
.line 994
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isRtl()Z
move-result p0
return p0
.end method
.method static synthetic access$900(Landroidx/constraintlayout/motion/widget/MotionLayout;)Z
.registers 1
.line 994
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isRtl()Z
move-result p0
return p0
.end method
.method private callTransformedTouchEvent(Landroid/view/View;Landroid/view/MotionEvent;FF)Z
.registers 7
.line 3994
invoke-virtual {p1}, Landroid/view/View;->getMatrix()Landroid/graphics/Matrix;
move-result-object v0
.line 3996
invoke-virtual {v0}, Landroid/graphics/Matrix;->isIdentity()Z
move-result v1
if-eqz v1, :cond_17
.line 3997
invoke-virtual {p2, p3, p4}, Landroid/view/MotionEvent;->offsetLocation(FF)V
.line 3998
invoke-virtual {p1, p2}, Landroid/view/View;->onTouchEvent(Landroid/view/MotionEvent;)Z
move-result p1
neg-float p3, p3
neg-float p4, p4
.line 3999
invoke-virtual {p2, p3, p4}, Landroid/view/MotionEvent;->offsetLocation(FF)V
return p1
.line 4004
:cond_17
invoke-static {p2}, Landroid/view/MotionEvent;->obtain(Landroid/view/MotionEvent;)Landroid/view/MotionEvent;
move-result-object p2
.line 4006
invoke-virtual {p2, p3, p4}, Landroid/view/MotionEvent;->offsetLocation(FF)V
.line 4008
iget-object p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInverseMatrix:Landroid/graphics/Matrix;
if-nez p3, :cond_29
.line 4009
new-instance p3, Landroid/graphics/Matrix;
invoke-direct {p3}, Landroid/graphics/Matrix;-><init>()V
iput-object p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInverseMatrix:Landroid/graphics/Matrix;
.line 4011
:cond_29
iget-object p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInverseMatrix:Landroid/graphics/Matrix;
invoke-virtual {v0, p3}, Landroid/graphics/Matrix;->invert(Landroid/graphics/Matrix;)Z
.line 4012
iget-object p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInverseMatrix:Landroid/graphics/Matrix;
invoke-virtual {p2, p3}, Landroid/view/MotionEvent;->transform(Landroid/graphics/Matrix;)V
.line 4014
invoke-virtual {p1, p2}, Landroid/view/View;->onTouchEvent(Landroid/view/MotionEvent;)Z
move-result p1
.line 4016
invoke-virtual {p2}, Landroid/view/MotionEvent;->recycle()V
return p1
.end method
.method private checkStructure()V
.registers 12
.line 3885
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
const-string v1, "MotionLayout"
if-nez v0, :cond_c
const-string v0, "CHECK: motion scene not set! set \"app:layoutDescription=\"@xml/file\""
.line 3886
invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
return-void
.line 3890
:cond_c
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getStartId()I
move-result v0
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v2}, Landroidx/constraintlayout/motion/widget/MotionScene;->getStartId()I
move-result v3
invoke-virtual {v2, v3}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v2
invoke-direct {p0, v0, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->checkStructure(ILandroidx/constraintlayout/widget/ConstraintSet;)V
.line 3891
new-instance v0, Landroid/util/SparseIntArray;
invoke-direct {v0}, Landroid/util/SparseIntArray;-><init>()V
.line 3892
new-instance v2, Landroid/util/SparseIntArray;
invoke-direct {v2}, Landroid/util/SparseIntArray;-><init>()V
.line 3893
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v3}, Landroidx/constraintlayout/motion/widget/MotionScene;->getDefinedTransitions()Ljava/util/ArrayList;
move-result-object v3
invoke-virtual {v3}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v3
:cond_31
:goto_31
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v4
if-eqz v4, :cond_e5
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v4
check-cast v4, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
.line 3894
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget-object v5, v5, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
if-ne v4, v5, :cond_48
const-string v5, "CHECK: CURRENT"
.line 3895
invoke-static {v1, v5}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 3897
:cond_48
invoke-direct {p0, v4}, Landroidx/constraintlayout/motion/widget/MotionLayout;->checkStructure(Landroidx/constraintlayout/motion/widget/MotionScene$Transition;)V
.line 3898
invoke-virtual {v4}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getStartConstraintSetId()I
move-result v5
.line 3899
invoke-virtual {v4}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getEndConstraintSetId()I
move-result v4
.line 3900
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getContext()Landroid/content/Context;
move-result-object v6
invoke-static {v6, v5}, Landroidx/constraintlayout/motion/widget/Debug;->getName(Landroid/content/Context;I)Ljava/lang/String;
move-result-object v6
.line 3901
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getContext()Landroid/content/Context;
move-result-object v7
invoke-static {v7, v4}, Landroidx/constraintlayout/motion/widget/Debug;->getName(Landroid/content/Context;I)Ljava/lang/String;
move-result-object v7
.line 3902
invoke-virtual {v0, v5}, Landroid/util/SparseIntArray;->get(I)I
move-result v8
const-string v9, "->"
if-ne v8, v4, :cond_85
.line 3904
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
const-string v10, "CHECK: two transitions with the same start and end "
invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v8
invoke-static {v1, v8}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 3907
:cond_85
invoke-virtual {v2, v4}, Landroid/util/SparseIntArray;->get(I)I
move-result v8
if-ne v8, v5, :cond_a5
.line 3909
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
const-string v10, "CHECK: you can\'t have reverse transitions"
invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v7
invoke-static {v1, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 3912
:cond_a5
invoke-virtual {v0, v5, v4}, Landroid/util/SparseIntArray;->put(II)V
.line 3913
invoke-virtual {v2, v4, v5}, Landroid/util/SparseIntArray;->put(II)V
.line 3914
iget-object v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v7, v5}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v5
if-nez v5, :cond_c7
.line 3915
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
const-string v7, " no such constraintSetStart "
invoke-virtual {v5, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
invoke-static {v1, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 3918
:cond_c7
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v5, v4}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v4
if-nez v4, :cond_31
.line 3919
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, " no such constraintSetEnd "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
goto/16 :goto_31
:cond_e5
return-void
.end method
.method private checkStructure(ILandroidx/constraintlayout/widget/ConstraintSet;)V
.registers 13
.line 3925
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getContext()Landroid/content/Context;
move-result-object v0
invoke-static {v0, p1}, Landroidx/constraintlayout/motion/widget/Debug;->getName(Landroid/content/Context;I)Ljava/lang/String;
move-result-object p1
.line 3926
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildCount()I
move-result v0
const/4 v1, 0x0
const/4 v2, 0x0
:goto_e
const/4 v3, -0x1
const-string v4, "CHECK: "
const-string v5, "MotionLayout"
if-ge v2, v0, :cond_6d
.line 3928
invoke-virtual {p0, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v6
.line 3929
invoke-virtual {v6}, Landroid/view/View;->getId()I
move-result v7
if-ne v7, v3, :cond_46
.line 3931
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v8, " ALL VIEWS SHOULD HAVE ID\'s "
invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 3932
invoke-virtual {v6}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v8
invoke-virtual {v8}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v8
invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v8, " does not!"
invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
.line 3931
invoke-static {v5, v3}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
.line 3934
:cond_46
invoke-virtual {p2, v7}, Landroidx/constraintlayout/widget/ConstraintSet;->getConstraint(I)Landroidx/constraintlayout/widget/ConstraintSet$Constraint;
move-result-object v3
if-nez v3, :cond_6a
.line 3936
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v4, " NO CONSTRAINTS for "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-static {v6}, Landroidx/constraintlayout/motion/widget/Debug;->getName(Landroid/view/View;)Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v5, v3}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
:cond_6a
add-int/lit8 v2, v2, 0x1
goto :goto_e
.line 3939
:cond_6d
invoke-virtual {p2}, Landroidx/constraintlayout/widget/ConstraintSet;->getKnownIds()[I
move-result-object v0
.line 3940
:goto_71
array-length v2, v0
if-ge v1, v2, :cond_e9
.line 3941
aget v2, v0, v1
.line 3942
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getContext()Landroid/content/Context;
move-result-object v6
invoke-static {v6, v2}, Landroidx/constraintlayout/motion/widget/Debug;->getName(Landroid/content/Context;I)Ljava/lang/String;
move-result-object v6
.line 3943
aget v7, v0, v1
invoke-virtual {p0, v7}, Landroidx/constraintlayout/motion/widget/MotionLayout;->findViewById(I)Landroid/view/View;
move-result-object v7
if-nez v7, :cond_a0
.line 3944
new-instance v7, Ljava/lang/StringBuilder;
invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v7, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v8, " NO View matches id "
invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v7
invoke-static {v5, v7}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
.line 3946
:cond_a0
invoke-virtual {p2, v2}, Landroidx/constraintlayout/widget/ConstraintSet;->getHeight(I)I
move-result v7
const-string v8, ") no LAYOUT_HEIGHT"
const-string v9, "("
if-ne v7, v3, :cond_c5
.line 3947
new-instance v7, Ljava/lang/StringBuilder;
invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v7, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v7
invoke-static {v5, v7}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
.line 3949
:cond_c5
invoke-virtual {p2, v2}, Landroidx/constraintlayout/widget/ConstraintSet;->getWidth(I)I
move-result v2
if-ne v2, v3, :cond_e6
.line 3950
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v5, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
:cond_e6
add-int/lit8 v1, v1, 0x1
goto :goto_71
:cond_e9
return-void
.end method
.method private checkStructure(Landroidx/constraintlayout/motion/widget/MotionScene$Transition;)V
.registers 3
.line 3960
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getStartConstraintSetId()I
move-result v0
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getEndConstraintSetId()I
move-result p1
if-ne v0, p1, :cond_11
const-string p1, "MotionLayout"
const-string v0, "CHECK: start and end constraint set should not be the same!"
.line 3961
invoke-static {p1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
:cond_11
return-void
.end method
.method private computeCurrentPositions()V
.registers 5
.line 2113
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildCount()I
move-result v0
const/4 v1, 0x0
:goto_5
if-ge v1, v0, :cond_1c
.line 2115
invoke-virtual {p0, v1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v2
.line 2116
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v3, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/constraintlayout/motion/widget/MotionController;
if-nez v3, :cond_16
goto :goto_19
.line 2120
:cond_16
invoke-virtual {v3, v2}, Landroidx/constraintlayout/motion/widget/MotionController;->setStartCurrentState(Landroid/view/View;)V
:goto_19
add-int/lit8 v1, v1, 0x1
goto :goto_5
:cond_1c
return-void
.end method
.method private debugPos()V
.registers 7
const/4 v0, 0x0
.line 3432
:goto_1
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildCount()I
move-result v1
if-ge v0, v1, :cond_5d
.line 3433
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v1
.line 3434
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, " "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-static {}, Landroidx/constraintlayout/motion/widget/Debug;->getLocation()Ljava/lang/String;
move-result-object v4
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-static {p0}, Landroidx/constraintlayout/motion/widget/Debug;->getName(Landroid/view/View;)Ljava/lang/String;
move-result-object v4
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 3435
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getContext()Landroid/content/Context;
move-result-object v4
iget v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
invoke-static {v4, v5}, Landroidx/constraintlayout/motion/widget/Debug;->getName(Landroid/content/Context;I)Ljava/lang/String;
move-result-object v4
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-static {v1}, Landroidx/constraintlayout/motion/widget/Debug;->getName(Landroid/view/View;)Ljava/lang/String;
move-result-object v4
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 3436
invoke-virtual {v1}, Landroid/view/View;->getLeft()I
move-result v4
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 3437
invoke-virtual {v1}, Landroid/view/View;->getTop()I
move-result v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
const-string v2, "MotionLayout"
.line 3434
invoke-static {v2, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
add-int/lit8 v0, v0, 0x1
goto :goto_1
:cond_5d
return-void
.end method
.method private evaluateLayout()V
.registers 15
.line 3517
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
sub-float/2addr v0, v1
invoke-static {v0}, Ljava/lang/Math;->signum(F)F
move-result v0
.line 3518
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v1
.line 3521
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
instance-of v4, v3, Landroidx/constraintlayout/motion/utils/StopLogic;
const v5, 0x3089705f # 1.0E-9f
const/4 v6, 0x0
if-nez v4, :cond_24
.line 3522
iget-wide v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastTime:J
sub-long v7, v1, v7
long-to-float v4, v7
mul-float v4, v4, v0
mul-float v4, v4, v5
iget v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
div-float/2addr v4, v7
goto :goto_25
:cond_24
const/4 v4, 0x0
.line 3524
:goto_25
iget v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
add-float/2addr v7, v4
.line 3527
iget-boolean v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionInstantly:Z
if-eqz v4, :cond_2e
.line 3528
iget v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
:cond_2e
const/4 v4, 0x0
cmpl-float v8, v0, v6
if-lez v8, :cond_39
.line 3531
iget v9, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
cmpl-float v9, v7, v9
if-gez v9, :cond_43
:cond_39
cmpg-float v9, v0, v6
if-gtz v9, :cond_47
iget v9, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
cmpg-float v9, v7, v9
if-gtz v9, :cond_47
.line 3533
:cond_43
iget v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
const/4 v9, 0x1
goto :goto_48
:cond_47
const/4 v9, 0x0
:goto_48
if-eqz v3, :cond_5f
if-nez v9, :cond_5f
.line 3537
iget-boolean v9, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTemporalInterpolator:Z
if-eqz v9, :cond_5b
.line 3538
iget-wide v9, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mAnimationStartTime:J
sub-long/2addr v1, v9
long-to-float v1, v1
mul-float v1, v1, v5
.line 3539
invoke-interface {v3, v1}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v7
goto :goto_5f
.line 3541
:cond_5b
invoke-interface {v3, v7}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v7
:cond_5f
:goto_5f
if-lez v8, :cond_67
.line 3544
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
cmpl-float v1, v7, v1
if-gez v1, :cond_71
:cond_67
cmpg-float v0, v0, v6
if-gtz v0, :cond_73
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
cmpg-float v0, v7, v0
if-gtz v0, :cond_73
.line 3546
:cond_71
iget v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 3548
:cond_73
iput v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPostInterpolationPosition:F
.line 3549
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildCount()I
move-result v0
.line 3550
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v1
.line 3551
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mProgressInterpolator:Landroid/view/animation/Interpolator;
if-nez v3, :cond_82
goto :goto_86
:cond_82
invoke-interface {v3, v7}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v7
:goto_86
if-ge v4, v0, :cond_a1
.line 3553
invoke-virtual {p0, v4}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v9
.line 3554
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v3, v9}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v3
move-object v8, v3
check-cast v8, Landroidx/constraintlayout/motion/widget/MotionController;
if-eqz v8, :cond_9e
.line 3556
iget-object v13, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeyCache:Landroidx/constraintlayout/core/motion/utils/KeyCache;
move v10, v7
move-wide v11, v1
invoke-virtual/range {v8 .. v13}, Landroidx/constraintlayout/motion/widget/MotionController;->interpolate(Landroid/view/View;FJLandroidx/constraintlayout/core/motion/utils/KeyCache;)Z
:cond_9e
add-int/lit8 v4, v4, 0x1
goto :goto_86
.line 3559
:cond_a1
iget-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mMeasureDuringTransition:Z
if-eqz v0, :cond_a8
.line 3560
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->requestLayout()V
:cond_a8
return-void
.end method
.method private fireTransitionChange()V
.registers 7
.line 4368
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListener:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
if-nez v0, :cond_e
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
if-eqz v0, :cond_76
invoke-virtual {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;->isEmpty()Z
move-result v0
if-nez v0, :cond_76
.line 4369
:cond_e
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mListenerPosition:F
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
cmpl-float v0, v0, v1
if-eqz v0, :cond_76
.line 4370
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mListenerState:I
const/4 v1, 0x1
const/4 v2, -0x1
if-eq v0, v2, :cond_45
.line 4371
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListener:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
if-eqz v0, :cond_27
.line 4372
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
iget v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
invoke-interface {v0, p0, v3, v4}, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;->onTransitionStarted(Landroidx/constraintlayout/motion/widget/MotionLayout;II)V
.line 4374
:cond_27
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
if-eqz v0, :cond_43
.line 4375
invoke-virtual {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_2f
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_43
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
.line 4376
iget v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
iget v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
invoke-interface {v3, p0, v4, v5}, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;->onTransitionStarted(Landroidx/constraintlayout/motion/widget/MotionLayout;II)V
goto :goto_2f
.line 4379
:cond_43
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mIsAnimating:Z
.line 4381
:cond_45
iput v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mListenerState:I
.line 4382
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mListenerPosition:F
.line 4383
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListener:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
if-eqz v2, :cond_56
.line 4384
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
iget v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
invoke-interface {v2, p0, v3, v4, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;->onTransitionChange(Landroidx/constraintlayout/motion/widget/MotionLayout;IIF)V
.line 4386
:cond_56
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
if-eqz v0, :cond_74
.line 4387
invoke-virtual {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_5e
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_74
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
.line 4388
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
iget v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
iget v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
invoke-interface {v2, p0, v3, v4, v5}, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;->onTransitionChange(Landroidx/constraintlayout/motion/widget/MotionLayout;IIF)V
goto :goto_5e
.line 4391
:cond_74
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mIsAnimating:Z
:cond_76
return-void
.end method
.method private fireTransitionStarted(Landroidx/constraintlayout/motion/widget/MotionLayout;II)V
.registers 6
.line 4782
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListener:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
if-eqz v0, :cond_7
.line 4783
invoke-interface {v0, p0, p2, p3}, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;->onTransitionStarted(Landroidx/constraintlayout/motion/widget/MotionLayout;II)V
.line 4785
:cond_7
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
if-eqz v0, :cond_1f
.line 4786
invoke-virtual {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_f
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_1f
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
.line 4787
invoke-interface {v1, p1, p2, p3}, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;->onTransitionStarted(Landroidx/constraintlayout/motion/widget/MotionLayout;II)V
goto :goto_f
:cond_1f
return-void
.end method
.method private handlesTouchEvent(FFLandroid/view/View;Landroid/view/MotionEvent;)Z
.registers 12
.line 4032
instance-of v0, p3, Landroid/view/ViewGroup;
const/4 v1, 0x1
if-eqz v0, :cond_36
.line 4033
move-object v0, p3
check-cast v0, Landroid/view/ViewGroup;
.line 4034
invoke-virtual {v0}, Landroid/view/ViewGroup;->getChildCount()I
move-result v2
sub-int/2addr v2, v1
:goto_d
if-ltz v2, :cond_36
.line 4036
invoke-virtual {v0, v2}, Landroid/view/ViewGroup;->getChildAt(I)Landroid/view/View;
move-result-object v3
.line 4037
invoke-virtual {v3}, Landroid/view/View;->getLeft()I
move-result v4
int-to-float v4, v4
add-float/2addr v4, p1
invoke-virtual {p3}, Landroid/view/View;->getScrollX()I
move-result v5
int-to-float v5, v5
sub-float/2addr v4, v5
invoke-virtual {v3}, Landroid/view/View;->getTop()I
move-result v5
int-to-float v5, v5
add-float/2addr v5, p2
invoke-virtual {p3}, Landroid/view/View;->getScrollY()I
move-result v6
int-to-float v6, v6
sub-float/2addr v5, v6
invoke-direct {p0, v4, v5, v3, p4}, Landroidx/constraintlayout/motion/widget/MotionLayout;->handlesTouchEvent(FFLandroid/view/View;Landroid/view/MotionEvent;)Z
move-result v3
if-eqz v3, :cond_33
const/4 v0, 0x1
goto :goto_37
:cond_33
add-int/lit8 v2, v2, -0x1
goto :goto_d
:cond_36
const/4 v0, 0x0
:goto_37
if-nez v0, :cond_75
.line 4045
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBoundsCheck:Landroid/graphics/RectF;
invoke-virtual {p3}, Landroid/view/View;->getRight()I
move-result v3
int-to-float v3, v3
add-float/2addr v3, p1
invoke-virtual {p3}, Landroid/view/View;->getLeft()I
move-result v4
int-to-float v4, v4
sub-float/2addr v3, v4
invoke-virtual {p3}, Landroid/view/View;->getBottom()I
move-result v4
int-to-float v4, v4
add-float/2addr v4, p2
invoke-virtual {p3}, Landroid/view/View;->getTop()I
move-result v5
int-to-float v5, v5
sub-float/2addr v4, v5
invoke-virtual {v2, p1, p2, v3, v4}, Landroid/graphics/RectF;->set(FFFF)V
.line 4047
invoke-virtual {p4}, Landroid/view/MotionEvent;->getAction()I
move-result v2
if-nez v2, :cond_6c
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBoundsCheck:Landroid/graphics/RectF;
invoke-virtual {p4}, Landroid/view/MotionEvent;->getX()F
move-result v3
invoke-virtual {p4}, Landroid/view/MotionEvent;->getY()F
move-result v4
invoke-virtual {v2, v3, v4}, Landroid/graphics/RectF;->contains(FF)Z
move-result v2
if-eqz v2, :cond_75
:cond_6c
neg-float p1, p1
neg-float p2, p2
.line 4048
invoke-direct {p0, p3, p4, p1, p2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->callTransformedTouchEvent(Landroid/view/View;Landroid/view/MotionEvent;FF)Z
move-result p1
if-eqz p1, :cond_75
goto :goto_76
:cond_75
move v1, v0
:goto_76
return v1
.end method
.method private init(Landroid/util/AttributeSet;)V
.registers 11
.line 3813
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isInEditMode()Z
move-result v0
sput-boolean v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->IS_IN_EDIT_MODE:Z
const/4 v0, -0x1
if-eqz p1, :cond_8b
.line 3815
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getContext()Landroid/content/Context;
move-result-object v1
sget-object v2, Landroidx/constraintlayout/widget/R$styleable;->MotionLayout:[I
.line 3816
invoke-virtual {v1, p1, v2}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;
move-result-object p1
.line 3817
invoke-virtual {p1}, Landroid/content/res/TypedArray;->getIndexCount()I
move-result v1
const/4 v2, 0x1
const/4 v3, 0x0
const/4 v4, 0x0
const/4 v5, 0x1
:goto_1b
if-ge v4, v1, :cond_78
.line 3821
invoke-virtual {p1, v4}, Landroid/content/res/TypedArray;->getIndex(I)I
move-result v6
.line 3822
sget v7, Landroidx/constraintlayout/widget/R$styleable;->MotionLayout_layoutDescription:I
if-ne v6, v7, :cond_35
.line 3823
invoke-virtual {p1, v6, v0}, Landroid/content/res/TypedArray;->getResourceId(II)I
move-result v6
.line 3824
new-instance v7, Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getContext()Landroid/content/Context;
move-result-object v8
invoke-direct {v7, v8, p0, v6}, Landroidx/constraintlayout/motion/widget/MotionScene;-><init>(Landroid/content/Context;Landroidx/constraintlayout/motion/widget/MotionLayout;I)V
iput-object v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
goto :goto_75
.line 3825
:cond_35
sget v7, Landroidx/constraintlayout/widget/R$styleable;->MotionLayout_currentState:I
if-ne v6, v7, :cond_40
.line 3826
invoke-virtual {p1, v6, v0}, Landroid/content/res/TypedArray;->getResourceId(II)I
move-result v6
iput v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
goto :goto_75
.line 3827
:cond_40
sget v7, Landroidx/constraintlayout/widget/R$styleable;->MotionLayout_motionProgress:I
if-ne v6, v7, :cond_4e
const/4 v7, 0x0
.line 3828
invoke-virtual {p1, v6, v7}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v6
iput v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 3829
iput-boolean v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
goto :goto_75
.line 3830
:cond_4e
sget v7, Landroidx/constraintlayout/widget/R$styleable;->MotionLayout_applyMotionScene:I
if-ne v6, v7, :cond_57
.line 3831
invoke-virtual {p1, v6, v5}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
move-result v5
goto :goto_75
.line 3832
:cond_57
sget v7, Landroidx/constraintlayout/widget/R$styleable;->MotionLayout_showPaths:I
if-ne v6, v7, :cond_6b
.line 3833
iget v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDebugPath:I
if-nez v7, :cond_75
.line 3834
invoke-virtual {p1, v6, v3}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z
move-result v6
if-eqz v6, :cond_67
const/4 v6, 0x2
goto :goto_68
:cond_67
const/4 v6, 0x0
:goto_68
iput v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDebugPath:I
goto :goto_75
.line 3836
:cond_6b
sget v7, Landroidx/constraintlayout/widget/R$styleable;->MotionLayout_motionDebug:I
if-ne v6, v7, :cond_75
.line 3837
invoke-virtual {p1, v6, v3}, Landroid/content/res/TypedArray;->getInt(II)I
move-result v6
iput v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDebugPath:I
:cond_75
:goto_75
add-int/lit8 v4, v4, 0x1
goto :goto_1b
.line 3840
:cond_78
invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V
.line 3841
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez p1, :cond_86
const-string p1, "MotionLayout"
const-string v1, "WARNING NO app:layoutDescription tag"
.line 3842
invoke-static {p1, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
:cond_86
if-nez v5, :cond_8b
const/4 p1, 0x0
.line 3845
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
.line 3848
:cond_8b
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDebugPath:I
if-eqz p1, :cond_92
.line 3849
invoke-direct {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->checkStructure()V
.line 3851
:cond_92
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
if-ne p1, v0, :cond_b0
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz p1, :cond_b0
.line 3853
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getStartId()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 3854
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getStartId()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 3858
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getEndId()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
:cond_b0
return-void
.end method
.method private processTransitionCompleted()V
.registers 6
.line 4427
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListener:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
if-nez v0, :cond_f
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
if-eqz v0, :cond_e
invoke-virtual {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;->isEmpty()Z
move-result v0
if-eqz v0, :cond_f
:cond_e
return-void
:cond_f
const/4 v0, 0x0
.line 4430
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mIsAnimating:Z
.line 4431
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionCompleted:Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:cond_18
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_4b
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/Integer;
.line 4432
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListener:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
if-eqz v2, :cond_2f
.line 4433
invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
move-result v3
invoke-interface {v2, p0, v3}, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;->onTransitionCompleted(Landroidx/constraintlayout/motion/widget/MotionLayout;I)V
.line 4435
:cond_2f
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
if-eqz v2, :cond_18
.line 4436
invoke-virtual {v2}, Ljava/util/concurrent/CopyOnWriteArrayList;->iterator()Ljava/util/Iterator;
move-result-object v2
:goto_37
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_18
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
.line 4437
invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
move-result v4
invoke-interface {v3, p0, v4}, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;->onTransitionCompleted(Landroidx/constraintlayout/motion/widget/MotionLayout;I)V
goto :goto_37
.line 4441
:cond_4b
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionCompleted:Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->clear()V
return-void
.end method
.method private setupMotionViews()V
.registers 16
.line 1760
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildCount()I
move-result v0
.line 1762
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
invoke-virtual {v1}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->build()V
const/4 v1, 0x1
.line 1763
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
.line 1764
new-instance v2, Landroid/util/SparseArray;
invoke-direct {v2}, Landroid/util/SparseArray;-><init>()V
const/4 v3, 0x0
const/4 v4, 0x0
:goto_13
if-ge v4, v0, :cond_29
.line 1766
invoke-virtual {p0, v4}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v5
.line 1767
invoke-virtual {v5}, Landroid/view/View;->getId()I
move-result v6
iget-object v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v7, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v5
invoke-virtual {v2, v6, v5}, Landroid/util/SparseArray;->put(ILjava/lang/Object;)V
add-int/lit8 v4, v4, 0x1
goto :goto_13
.line 1769
:cond_29
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getWidth()I
move-result v2
.line 1770
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getHeight()I
move-result v4
.line 1771
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v5}, Landroidx/constraintlayout/motion/widget/MotionScene;->gatPathMotionArc()I
move-result v5
const/4 v6, -0x1
if-eq v5, v6, :cond_51
const/4 v7, 0x0
:goto_3b
if-ge v7, v0, :cond_51
.line 1774
iget-object v8, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {p0, v7}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v9
invoke-virtual {v8, v9}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v8
check-cast v8, Landroidx/constraintlayout/motion/widget/MotionController;
if-eqz v8, :cond_4e
.line 1776
invoke-virtual {v8, v5}, Landroidx/constraintlayout/motion/widget/MotionController;->setPathMotionArc(I)V
:cond_4e
add-int/lit8 v7, v7, 0x1
goto :goto_3b
.line 1781
:cond_51
new-instance v11, Landroid/util/SparseBooleanArray;
invoke-direct {v11}, Landroid/util/SparseBooleanArray;-><init>()V
.line 1782
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v5}, Ljava/util/HashMap;->size()I
move-result v5
new-array v12, v5, [I
const/4 v5, 0x0
const/4 v13, 0x0
:goto_60
if-ge v5, v0, :cond_87
.line 1785
invoke-virtual {p0, v5}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v7
.line 1786
iget-object v8, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v8, v7}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v7
check-cast v7, Landroidx/constraintlayout/motion/widget/MotionController;
.line 1787
invoke-virtual {v7}, Landroidx/constraintlayout/motion/widget/MotionController;->getAnimateRelativeTo()I
move-result v8
if-eq v8, v6, :cond_84
.line 1788
invoke-virtual {v7}, Landroidx/constraintlayout/motion/widget/MotionController;->getAnimateRelativeTo()I
move-result v8
invoke-virtual {v11, v8, v1}, Landroid/util/SparseBooleanArray;->put(IZ)V
add-int/lit8 v8, v13, 0x1
.line 1789
invoke-virtual {v7}, Landroidx/constraintlayout/motion/widget/MotionController;->getAnimateRelativeTo()I
move-result v7
aput v7, v12, v13
move v13, v8
:cond_84
add-int/lit8 v5, v5, 0x1
goto :goto_60
.line 1792
:cond_87
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
if-eqz v5, :cond_e1
const/4 v5, 0x0
:goto_8c
if-ge v5, v13, :cond_a7
.line 1794
iget-object v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
aget v7, v12, v5
invoke-virtual {p0, v7}, Landroidx/constraintlayout/motion/widget/MotionLayout;->findViewById(I)Landroid/view/View;
move-result-object v7
invoke-virtual {v6, v7}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v6
check-cast v6, Landroidx/constraintlayout/motion/widget/MotionController;
if-nez v6, :cond_9f
goto :goto_a4
.line 1798
:cond_9f
iget-object v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v7, v6}, Landroidx/constraintlayout/motion/widget/MotionScene;->getKeyFrames(Landroidx/constraintlayout/motion/widget/MotionController;)V
:goto_a4
add-int/lit8 v5, v5, 0x1
goto :goto_8c
.line 1801
:cond_a7
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
invoke-virtual {v5}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v5
:goto_ad
invoke-interface {v5}, Ljava/util/Iterator;->hasNext()Z
move-result v6
if-eqz v6, :cond_bf
invoke-interface {v5}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v6
check-cast v6, Landroidx/constraintlayout/motion/widget/MotionHelper;
.line 1802
iget-object v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v6, p0, v7}, Landroidx/constraintlayout/motion/widget/MotionHelper;->onPreSetup(Landroidx/constraintlayout/motion/widget/MotionLayout;Ljava/util/HashMap;)V
goto :goto_ad
:cond_bf
const/4 v14, 0x0
:goto_c0
if-ge v14, v13, :cond_108
.line 1805
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
aget v6, v12, v14
invoke-virtual {p0, v6}, Landroidx/constraintlayout/motion/widget/MotionLayout;->findViewById(I)Landroid/view/View;
move-result-object v6
invoke-virtual {v5, v6}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v5
check-cast v5, Landroidx/constraintlayout/motion/widget/MotionController;
if-nez v5, :cond_d3
goto :goto_de
.line 1809
:cond_d3
iget v8, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v9
move v6, v2
move v7, v4
invoke-virtual/range {v5 .. v10}, Landroidx/constraintlayout/motion/widget/MotionController;->setup(IIFJ)V
:goto_de
add-int/lit8 v14, v14, 0x1
goto :goto_c0
:cond_e1
const/4 v14, 0x0
:goto_e2
if-ge v14, v13, :cond_108
.line 1814
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
aget v6, v12, v14
invoke-virtual {p0, v6}, Landroidx/constraintlayout/motion/widget/MotionLayout;->findViewById(I)Landroid/view/View;
move-result-object v6
invoke-virtual {v5, v6}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v5
check-cast v5, Landroidx/constraintlayout/motion/widget/MotionController;
if-nez v5, :cond_f5
goto :goto_105
.line 1818
:cond_f5
iget-object v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v6, v5}, Landroidx/constraintlayout/motion/widget/MotionScene;->getKeyFrames(Landroidx/constraintlayout/motion/widget/MotionController;)V
.line 1819
iget v8, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v9
move v6, v2
move v7, v4
invoke-virtual/range {v5 .. v10}, Landroidx/constraintlayout/motion/widget/MotionController;->setup(IIFJ)V
:goto_105
add-int/lit8 v14, v14, 0x1
goto :goto_e2
:cond_108
const/4 v12, 0x0
:goto_109
if-ge v12, v0, :cond_138
.line 1825
invoke-virtual {p0, v12}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v5
.line 1826
iget-object v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v6, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v6
check-cast v6, Landroidx/constraintlayout/motion/widget/MotionController;
.line 1827
invoke-virtual {v5}, Landroid/view/View;->getId()I
move-result v5
invoke-virtual {v11, v5}, Landroid/util/SparseBooleanArray;->get(I)Z
move-result v5
if-eqz v5, :cond_122
goto :goto_135
:cond_122
if-eqz v6, :cond_135
.line 1832
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v5, v6}, Landroidx/constraintlayout/motion/widget/MotionScene;->getKeyFrames(Landroidx/constraintlayout/motion/widget/MotionController;)V
.line 1833
iget v8, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v9
move-object v5, v6
move v6, v2
move v7, v4
invoke-virtual/range {v5 .. v10}, Landroidx/constraintlayout/motion/widget/MotionController;->setup(IIFJ)V
:cond_135
:goto_135
add-int/lit8 v12, v12, 0x1
goto :goto_109
.line 1837
:cond_138
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v2}, Landroidx/constraintlayout/motion/widget/MotionScene;->getStaggered()F
move-result v2
const/4 v4, 0x0
cmpl-float v4, v2, v4
if-eqz v4, :cond_221
float-to-double v4, v2
const-wide/16 v6, 0x0
cmpg-double v8, v4, v6
if-gez v8, :cond_14c
const/4 v4, 0x1
goto :goto_14d
:cond_14c
const/4 v4, 0x0
.line 1841
:goto_14d
invoke-static {v2}, Ljava/lang/Math;->abs(F)F
move-result v2
const v5, -0x800001
const v6, 0x7f7fffff # Float.MAX_VALUE
const/4 v7, 0x0
const v8, 0x7f7fffff # Float.MAX_VALUE
const v9, -0x800001
:goto_15e
if-ge v7, v0, :cond_18d
.line 1844
iget-object v10, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {p0, v7}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v11
invoke-virtual {v10, v11}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v10
check-cast v10, Landroidx/constraintlayout/motion/widget/MotionController;
.line 1845
iget v11, v10, Landroidx/constraintlayout/motion/widget/MotionController;->mMotionStagger:F
invoke-static {v11}, Ljava/lang/Float;->isNaN(F)Z
move-result v11
if-nez v11, :cond_175
goto :goto_18e
.line 1849
:cond_175
invoke-virtual {v10}, Landroidx/constraintlayout/motion/widget/MotionController;->getFinalX()F
move-result v11
.line 1850
invoke-virtual {v10}, Landroidx/constraintlayout/motion/widget/MotionController;->getFinalY()F
move-result v10
if-eqz v4, :cond_181
sub-float/2addr v10, v11
goto :goto_182
:cond_181
add-float/2addr v10, v11
.line 1852
:goto_182
invoke-static {v8, v10}, Ljava/lang/Math;->min(FF)F
move-result v8
.line 1853
invoke-static {v9, v10}, Ljava/lang/Math;->max(FF)F
move-result v9
add-int/lit8 v7, v7, 0x1
goto :goto_15e
:cond_18d
const/4 v1, 0x0
:goto_18e
const/high16 v7, 0x3f800000 # 1.0f
if-eqz v1, :cond_1f3
const/4 v1, 0x0
:goto_193
if-ge v1, v0, :cond_1b8
.line 1860
iget-object v8, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {p0, v1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v9
invoke-virtual {v8, v9}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v8
check-cast v8, Landroidx/constraintlayout/motion/widget/MotionController;
.line 1861
iget v9, v8, Landroidx/constraintlayout/motion/widget/MotionController;->mMotionStagger:F
invoke-static {v9}, Ljava/lang/Float;->isNaN(F)Z
move-result v9
if-nez v9, :cond_1b5
.line 1862
iget v9, v8, Landroidx/constraintlayout/motion/widget/MotionController;->mMotionStagger:F
invoke-static {v6, v9}, Ljava/lang/Math;->min(FF)F
move-result v6
.line 1863
iget v8, v8, Landroidx/constraintlayout/motion/widget/MotionController;->mMotionStagger:F
invoke-static {v5, v8}, Ljava/lang/Math;->max(FF)F
move-result v5
:cond_1b5
add-int/lit8 v1, v1, 0x1
goto :goto_193
:cond_1b8
:goto_1b8
if-ge v3, v0, :cond_221
.line 1867
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {p0, v3}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v8
invoke-virtual {v1, v8}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/constraintlayout/motion/widget/MotionController;
.line 1868
iget v8, v1, Landroidx/constraintlayout/motion/widget/MotionController;->mMotionStagger:F
invoke-static {v8}, Ljava/lang/Float;->isNaN(F)Z
move-result v8
if-nez v8, :cond_1f0
sub-float v8, v7, v2
div-float v8, v7, v8
.line 1870
iput v8, v1, Landroidx/constraintlayout/motion/widget/MotionController;->mStaggerScale:F
if-eqz v4, :cond_1e4
.line 1872
iget v8, v1, Landroidx/constraintlayout/motion/widget/MotionController;->mMotionStagger:F
sub-float v8, v5, v8
sub-float v9, v5, v6
div-float/2addr v8, v9
mul-float v8, v8, v2
sub-float v8, v2, v8
iput v8, v1, Landroidx/constraintlayout/motion/widget/MotionController;->mStaggerOffset:F
goto :goto_1f0
.line 1874
:cond_1e4
iget v8, v1, Landroidx/constraintlayout/motion/widget/MotionController;->mMotionStagger:F
sub-float/2addr v8, v6
mul-float v8, v8, v2
sub-float v9, v5, v6
div-float/2addr v8, v9
sub-float v8, v2, v8
iput v8, v1, Landroidx/constraintlayout/motion/widget/MotionController;->mStaggerOffset:F
:cond_1f0
:goto_1f0
add-int/lit8 v3, v3, 0x1
goto :goto_1b8
:cond_1f3
:goto_1f3
if-ge v3, v0, :cond_221
.line 1880
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {p0, v3}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v5
invoke-virtual {v1, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/constraintlayout/motion/widget/MotionController;
.line 1881
invoke-virtual {v1}, Landroidx/constraintlayout/motion/widget/MotionController;->getFinalX()F
move-result v5
.line 1882
invoke-virtual {v1}, Landroidx/constraintlayout/motion/widget/MotionController;->getFinalY()F
move-result v6
if-eqz v4, :cond_20d
sub-float/2addr v6, v5
goto :goto_20e
:cond_20d
add-float/2addr v6, v5
:goto_20e
sub-float v5, v7, v2
div-float v5, v7, v5
.line 1884
iput v5, v1, Landroidx/constraintlayout/motion/widget/MotionController;->mStaggerScale:F
sub-float/2addr v6, v8
mul-float v6, v6, v2
sub-float v5, v9, v8
div-float/2addr v6, v5
sub-float v5, v2, v6
.line 1885
iput v5, v1, Landroidx/constraintlayout/motion/widget/MotionController;->mStaggerOffset:F
add-int/lit8 v3, v3, 0x1
goto :goto_1f3
:cond_221
return-void
.end method
.method private toRect(Landroidx/constraintlayout/core/widgets/ConstraintWidget;)Landroid/graphics/Rect;
.registers 5
.line 2864
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTempRect:Landroid/graphics/Rect;
invoke-virtual {p1}, Landroidx/constraintlayout/core/widgets/ConstraintWidget;->getY()I
move-result v1
iput v1, v0, Landroid/graphics/Rect;->top:I
.line 2865
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTempRect:Landroid/graphics/Rect;
invoke-virtual {p1}, Landroidx/constraintlayout/core/widgets/ConstraintWidget;->getX()I
move-result v1
iput v1, v0, Landroid/graphics/Rect;->left:I
.line 2866
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTempRect:Landroid/graphics/Rect;
invoke-virtual {p1}, Landroidx/constraintlayout/core/widgets/ConstraintWidget;->getWidth()I
move-result v1
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTempRect:Landroid/graphics/Rect;
iget v2, v2, Landroid/graphics/Rect;->left:I
add-int/2addr v1, v2
iput v1, v0, Landroid/graphics/Rect;->right:I
.line 2867
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTempRect:Landroid/graphics/Rect;
invoke-virtual {p1}, Landroidx/constraintlayout/core/widgets/ConstraintWidget;->getHeight()I
move-result p1
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTempRect:Landroid/graphics/Rect;
iget v1, v1, Landroid/graphics/Rect;->top:I
add-int/2addr p1, v1
iput p1, v0, Landroid/graphics/Rect;->bottom:I
.line 2868
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTempRect:Landroid/graphics/Rect;
return-object p1
.end method
.method private static willJump(FFF)Z
.registers 8
const/4 v0, 0x1
const/4 v1, 0x0
const/high16 v2, 0x40000000 # 2.0f
const/4 v3, 0x0
cmpl-float v4, p0, v3
if-lez v4, :cond_1d
div-float v3, p0, p2
mul-float p0, p0, v3
mul-float p2, p2, v3
mul-float p2, p2, v3
div-float/2addr p2, v2
sub-float/2addr p0, p2
add-float/2addr p1, p0
const/high16 p0, 0x3f800000 # 1.0f
cmpl-float p0, p1, p0
if-lez p0, :cond_1b
goto :goto_1c
:cond_1b
const/4 v0, 0x0
:goto_1c
return v0
:cond_1d
neg-float v4, p0
div-float/2addr v4, p2
mul-float p0, p0, v4
mul-float p2, p2, v4
mul-float p2, p2, v4
div-float/2addr p2, v2
add-float/2addr p0, p2
add-float/2addr p1, p0
cmpg-float p0, p1, v3
if-gez p0, :cond_2d
goto :goto_2e
:cond_2d
const/4 v0, 0x0
:goto_2e
return v0
.end method
# virtual methods
.method public addTransitionListener(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;)V
.registers 3
.line 4281
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
if-nez v0, :cond_b
.line 4282
new-instance v0, Ljava/util/concurrent/CopyOnWriteArrayList;
invoke-direct {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
.line 4284
:cond_b
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
invoke-virtual {v0, p1}, Ljava/util/concurrent/CopyOnWriteArrayList;->add(Ljava/lang/Object;)Z
return-void
.end method
.method animateTo(F)V
.registers 6
.line 2081
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_5
return-void
.line 2085
:cond_5
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
cmpl-float v1, v1, v2
if-eqz v1, :cond_13
iget-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionInstantly:Z
if-eqz v1, :cond_13
.line 2088
iput v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 2091
:cond_13
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
cmpl-float v2, v1, p1
if-nez v2, :cond_1a
return-void
:cond_1a
const/4 v2, 0x0
.line 2094
iput-boolean v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTemporalInterpolator:Z
.line 2096
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 2097
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getDuration()I
move-result p1
int-to-float p1, p1
const/high16 v0, 0x447a0000 # 1000.0f
div-float/2addr p1, v0
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
.line 2098
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
const/4 p1, 0x0
.line 2099
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
.line 2100
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getInterpolator()Landroid/view/animation/Interpolator;
move-result-object p1
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mProgressInterpolator:Landroid/view/animation/Interpolator;
.line 2101
iput-boolean v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionInstantly:Z
.line 2102
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v2
iput-wide v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mAnimationStartTime:J
const/4 p1, 0x1
.line 2103
iput-boolean p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
.line 2104
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
.line 2108
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 2109
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->invalidate()V
return-void
.end method
.method public applyViewTransition(ILandroidx/constraintlayout/motion/widget/MotionController;)Z
.registers 4
.line 4841
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v0, :cond_9
.line 4842
invoke-virtual {v0, p1, p2}, Landroidx/constraintlayout/motion/widget/MotionScene;->applyViewTransition(ILandroidx/constraintlayout/motion/widget/MotionController;)Z
move-result p1
return p1
:cond_9
const/4 p1, 0x0
return p1
.end method
.method public cloneConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
.registers 3
.line 4560
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_6
const/4 p1, 0x0
return-object p1
.line 4563
:cond_6
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object p1
.line 4564
new-instance v0, Landroidx/constraintlayout/widget/ConstraintSet;
invoke-direct {v0}, Landroidx/constraintlayout/widget/ConstraintSet;-><init>()V
.line 4565
invoke-virtual {v0, p1}, Landroidx/constraintlayout/widget/ConstraintSet;->clone(Landroidx/constraintlayout/widget/ConstraintSet;)V
return-object v0
.end method
.method disableAutoTransition(Z)V
.registers 3
.line 4753
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_5
return-void
.line 4756
:cond_5
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->disableAutoTransition(Z)V
return-void
.end method
.method protected dispatchDraw(Landroid/graphics/Canvas;)V
.registers 11
.line 3451
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
if-eqz v0, :cond_18
.line 3452
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_8
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_18
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/constraintlayout/motion/widget/MotionHelper;
.line 3453
invoke-virtual {v1, p1}, Landroidx/constraintlayout/motion/widget/MotionHelper;->onPreDraw(Landroid/graphics/Canvas;)V
goto :goto_8
:cond_18
const/4 v0, 0x0
.line 3456
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->evaluate(Z)V
.line 3457
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v1, :cond_2b
iget-object v1, v1, Landroidx/constraintlayout/motion/widget/MotionScene;->mViewTransitionController:Landroidx/constraintlayout/motion/widget/ViewTransitionController;
if-eqz v1, :cond_2b
.line 3458
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget-object v1, v1, Landroidx/constraintlayout/motion/widget/MotionScene;->mViewTransitionController:Landroidx/constraintlayout/motion/widget/ViewTransitionController;
invoke-virtual {v1}, Landroidx/constraintlayout/motion/widget/ViewTransitionController;->animate()V
.line 3465
:cond_2b
invoke-super {p0, p1}, Landroidx/constraintlayout/widget/ConstraintLayout;->dispatchDraw(Landroid/graphics/Canvas;)V
.line 3466
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v1, :cond_33
return-void
.line 3472
:cond_33
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDebugPath:I
const/4 v2, 0x1
and-int/2addr v1, v2
if-ne v1, v2, :cond_fd
.line 3473
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isInEditMode()Z
move-result v1
if-nez v1, :cond_fd
.line 3474
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrames:I
add-int/2addr v1, v2
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrames:I
.line 3475
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v3
.line 3476
iget-wide v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastDrawTime:J
const-wide/16 v7, -0x1
cmp-long v1, v5, v7
if-eqz v1, :cond_71
sub-long v5, v3, v5
const-wide/32 v7, 0xbebc200
cmp-long v1, v5, v7
if-lez v1, :cond_73
.line 3479
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrames:I
int-to-float v1, v1
long-to-float v5, v5
const v6, 0x3089705f # 1.0E-9f
mul-float v5, v5, v6
div-float/2addr v1, v5
const/high16 v5, 0x42c80000 # 100.0f
mul-float v1, v1, v5
float-to-int v1, v1
int-to-float v1, v1
div-float/2addr v1, v5
.line 3480
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastFps:F
.line 3481
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrames:I
.line 3482
iput-wide v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastDrawTime:J
goto :goto_73
.line 3485
:cond_71
iput-wide v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastDrawTime:J
.line 3487
:cond_73
:goto_73
new-instance v0, Landroid/graphics/Paint;
invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V
const/high16 v1, 0x42280000 # 42.0f
.line 3488
invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setTextSize(F)V
.line 3489
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getProgress()F
move-result v1
const/high16 v3, 0x447a0000 # 1000.0f
mul-float v1, v1, v3
float-to-int v1, v1
int-to-float v1, v1
const/high16 v3, 0x41200000 # 10.0f
div-float/2addr v1, v3
.line 3490
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
iget v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastFps:F
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;
const-string v5, " fps "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
invoke-static {p0, v5}, Landroidx/constraintlayout/motion/widget/Debug;->getState(Landroidx/constraintlayout/motion/widget/MotionLayout;I)Ljava/lang/String;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v5, " -> "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
.line 3491
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v5, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
invoke-static {p0, v4}, Landroidx/constraintlayout/motion/widget/Debug;->getState(Landroidx/constraintlayout/motion/widget/MotionLayout;I)Ljava/lang/String;
move-result-object v4
invoke-virtual {v5, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v4, " (progress: "
invoke-virtual {v5, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;
const-string v1, " ) state="
invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
const/4 v4, -0x1
if-ne v1, v4, :cond_d1
const-string v1, "undefined"
goto :goto_d5
.line 3492
:cond_d1
invoke-static {p0, v1}, Landroidx/constraintlayout/motion/widget/Debug;->getState(Landroidx/constraintlayout/motion/widget/MotionLayout;I)Ljava/lang/String;
move-result-object v1
:goto_d5
invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
const/high16 v4, -0x1000000
.line 3493
invoke-virtual {v0, v4}, Landroid/graphics/Paint;->setColor(I)V
const/high16 v4, 0x41300000 # 11.0f
.line 3494
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getHeight()I
move-result v5
add-int/lit8 v5, v5, -0x1d
int-to-float v5, v5
invoke-virtual {p1, v1, v4, v5, v0}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V
const v4, -0x77ff78
.line 3495
invoke-virtual {v0, v4}, Landroid/graphics/Paint;->setColor(I)V
.line 3496
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getHeight()I
move-result v4
add-int/lit8 v4, v4, -0x1e
int-to-float v4, v4
invoke-virtual {p1, v1, v3, v4, v0}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V
.line 3500
:cond_fd
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDebugPath:I
if-le v0, v2, :cond_11b
.line 3501
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDevModeDraw:Landroidx/constraintlayout/motion/widget/MotionLayout$DevModeDraw;
if-nez v0, :cond_10c
.line 3502
new-instance v0, Landroidx/constraintlayout/motion/widget/MotionLayout$DevModeDraw;
invoke-direct {v0, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$DevModeDraw;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDevModeDraw:Landroidx/constraintlayout/motion/widget/MotionLayout$DevModeDraw;
.line 3504
:cond_10c
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDevModeDraw:Landroidx/constraintlayout/motion/widget/MotionLayout$DevModeDraw;
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v2}, Landroidx/constraintlayout/motion/widget/MotionScene;->getDuration()I
move-result v2
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDebugPath:I
invoke-virtual {v0, p1, v1, v2, v3}, Landroidx/constraintlayout/motion/widget/MotionLayout$DevModeDraw;->draw(Landroid/graphics/Canvas;Ljava/util/HashMap;II)V
.line 3506
:cond_11b
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
if-eqz v0, :cond_133
.line 3507
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_123
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_133
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/constraintlayout/motion/widget/MotionHelper;
.line 3508
invoke-virtual {v1, p1}, Landroidx/constraintlayout/motion/widget/MotionHelper;->onPostDraw(Landroid/graphics/Canvas;)V
goto :goto_123
:cond_133
return-void
.end method
.method public enableTransition(IZ)V
.registers 5
.line 1150
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getTransition(I)Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
move-result-object p1
if-eqz p2, :cond_b
const/4 p2, 0x1
.line 1152
invoke-virtual {p1, p2}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->setEnabled(Z)V
return-void
.line 1155
:cond_b
iget-object p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget-object p2, p2, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
if-ne p1, p2, :cond_33
.line 1156
iget-object p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
invoke-virtual {p2, v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getTransitionsWithState(I)Ljava/util/List;
move-result-object p2
.line 1157
invoke-interface {p2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p2
:cond_1d
invoke-interface {p2}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_33
invoke-interface {p2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
.line 1158
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->isEnabled()Z
move-result v1
if-eqz v1, :cond_1d
.line 1159
iget-object p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iput-object v0, p2, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
:cond_33
const/4 p2, 0x0
.line 1164
invoke-virtual {p1, p2}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->setEnabled(Z)V
return-void
.end method
.method public enableViewTransition(IZ)V
.registers 4
.line 4814
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v0, :cond_7
.line 4815
invoke-virtual {v0, p1, p2}, Landroidx/constraintlayout/motion/widget/MotionScene;->enableViewTransition(IZ)V
:cond_7
return-void
.end method
.method endTrigger(Z)V
.registers 6
.line 3565
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildCount()I
move-result v0
const/4 v1, 0x0
:goto_5
if-ge v1, v0, :cond_1b
.line 3567
invoke-virtual {p0, v1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v2
.line 3568
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v3, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/constraintlayout/motion/widget/MotionController;
if-eqz v2, :cond_18
.line 3570
invoke-virtual {v2, p1}, Landroidx/constraintlayout/motion/widget/MotionController;->endTrigger(Z)V
:cond_18
add-int/lit8 v1, v1, 0x1
goto :goto_5
:cond_1b
return-void
.end method
.method evaluate(Z)V
.registers 25
move-object/from16 v0, p0
.line 3577
iget-wide v1, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastTime:J
const-wide/16 v3, -0x1
cmp-long v5, v1, v3
if-nez v5, :cond_10
.line 3578
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v1
iput-wide v1, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastTime:J
.line 3580
:cond_10
iget v1, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
const/4 v2, -0x1
const/high16 v3, 0x3f800000 # 1.0f
const/4 v4, 0x0
cmpl-float v5, v1, v4
if-lez v5, :cond_20
cmpg-float v5, v1, v3
if-gez v5, :cond_20
.line 3581
iput v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 3585
:cond_20
iget-boolean v5, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeepAnimating:Z
const/4 v6, 0x1
const/4 v7, 0x0
if-nez v5, :cond_32
iget-boolean v5, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
if-eqz v5, :cond_244
if-nez p1, :cond_32
iget v5, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
cmpl-float v5, v5, v1
if-eqz v5, :cond_244
.line 3586
:cond_32
iget v5, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
sub-float/2addr v5, v1
invoke-static {v5}, Ljava/lang/Math;->signum(F)F
move-result v1
.line 3587
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v8
.line 3590
iget-object v5, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
instance-of v10, v5, Landroidx/constraintlayout/motion/widget/MotionInterpolator;
const v11, 0x3089705f # 1.0E-9f
if-nez v10, :cond_53
.line 3591
iget-wide v12, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastTime:J
sub-long v12, v8, v12
long-to-float v10, v12
mul-float v10, v10, v1
mul-float v10, v10, v11
iget v12, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
div-float/2addr v10, v12
goto :goto_54
:cond_53
const/4 v10, 0x0
.line 3593
:goto_54
iget v12, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
add-float/2addr v12, v10
.line 3596
iget-boolean v13, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionInstantly:Z
if-eqz v13, :cond_5d
.line 3597
iget v12, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
:cond_5d
cmpl-float v13, v1, v4
if-lez v13, :cond_67
.line 3600
iget v14, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
cmpl-float v14, v12, v14
if-gez v14, :cond_71
:cond_67
cmpg-float v14, v1, v4
if-gtz v14, :cond_77
iget v14, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
cmpg-float v14, v12, v14
if-gtz v14, :cond_77
.line 3602
:cond_71
iget v12, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 3603
iput-boolean v7, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
const/4 v14, 0x1
goto :goto_78
:cond_77
const/4 v14, 0x0
.line 3609
:goto_78
iput v12, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 3610
iput v12, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
.line 3611
iput-wide v8, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastTime:J
const/4 v15, 0x2
const v16, 0x3727c5ac # 1.0E-5f
if-eqz v5, :cond_108
if-nez v14, :cond_108
.line 3617
iget-boolean v14, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTemporalInterpolator:Z
if-eqz v14, :cond_e8
.line 3618
iget-wide v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mAnimationStartTime:J
sub-long v2, v8, v2
long-to-float v2, v2
mul-float v2, v2, v11
.line 3619
invoke-interface {v5, v2}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v2
.line 3620
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
iget-object v5, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStopLogic:Landroidx/constraintlayout/motion/utils/StopLogic;
if-ne v3, v5, :cond_a5
.line 3621
invoke-virtual {v5}, Landroidx/constraintlayout/motion/utils/StopLogic;->isStopped()Z
move-result v3
if-eqz v3, :cond_a3
const/4 v3, 0x2
goto :goto_a6
:cond_a3
const/4 v3, 0x1
goto :goto_a6
:cond_a5
const/4 v3, 0x0
.line 3628
:goto_a6
iput v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 3630
iput-wide v8, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastTime:J
.line 3631
iget-object v5, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
instance-of v8, v5, Landroidx/constraintlayout/motion/widget/MotionInterpolator;
if-eqz v8, :cond_e6
.line 3632
check-cast v5, Landroidx/constraintlayout/motion/widget/MotionInterpolator;
invoke-virtual {v5}, Landroidx/constraintlayout/motion/widget/MotionInterpolator;->getVelocity()F
move-result v5
.line 3633
iput v5, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
.line 3634
invoke-static {v5}, Ljava/lang/Math;->abs(F)F
move-result v8
iget v9, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
mul-float v8, v8, v9
cmpg-float v8, v8, v16
if-gtz v8, :cond_c8
if-ne v3, v15, :cond_c8
.line 3635
iput-boolean v7, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
:cond_c8
cmpl-float v8, v5, v4
if-lez v8, :cond_d8
const/high16 v8, 0x3f800000 # 1.0f
cmpl-float v9, v2, v8
if-ltz v9, :cond_d8
.line 3638
iput v8, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 3639
iput-boolean v7, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
const/high16 v2, 0x3f800000 # 1.0f
:cond_d8
cmpg-float v5, v5, v4
if-gez v5, :cond_e6
cmpg-float v5, v2, v4
if-gtz v5, :cond_e6
.line 3642
iput v4, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 3643
iput-boolean v7, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
const/4 v12, 0x0
goto :goto_10b
:cond_e6
move v12, v2
goto :goto_10b
.line 3650
:cond_e8
invoke-interface {v5, v12}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v2
.line 3651
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
instance-of v5, v3, Landroidx/constraintlayout/motion/widget/MotionInterpolator;
if-eqz v5, :cond_fb
.line 3652
check-cast v3, Landroidx/constraintlayout/motion/widget/MotionInterpolator;
invoke-virtual {v3}, Landroidx/constraintlayout/motion/widget/MotionInterpolator;->getVelocity()F
move-result v3
iput v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
goto :goto_106
:cond_fb
add-float/2addr v12, v10
.line 3654
invoke-interface {v3, v12}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v3
sub-float/2addr v3, v2
mul-float v3, v3, v1
div-float/2addr v3, v10
.line 3655
iput v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
:goto_106
move v12, v2
goto :goto_10a
.line 3660
:cond_108
iput v10, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
:goto_10a
const/4 v3, 0x0
.line 3662
:goto_10b
iget v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
invoke-static {v2}, Ljava/lang/Math;->abs(F)F
move-result v2
cmpl-float v2, v2, v16
if-lez v2, :cond_11a
.line 3663
sget-object v2, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->MOVING:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {v0, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
:cond_11a
if-eq v3, v6, :cond_143
if-lez v13, :cond_124
.line 3667
iget v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
cmpl-float v2, v12, v2
if-gez v2, :cond_12e
:cond_124
cmpg-float v2, v1, v4
if-gtz v2, :cond_132
iget v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
cmpg-float v2, v12, v2
if-gtz v2, :cond_132
.line 3669
:cond_12e
iget v12, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 3670
iput-boolean v7, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
:cond_132
const/high16 v2, 0x3f800000 # 1.0f
cmpl-float v3, v12, v2
if-gez v3, :cond_13c
cmpg-float v2, v12, v4
if-gtz v2, :cond_143
.line 3674
:cond_13c
iput-boolean v7, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
.line 3675
sget-object v2, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {v0, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
.line 3679
:cond_143
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildCount()I
move-result v2
.line 3680
iput-boolean v7, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeepAnimating:Z
.line 3681
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v8
.line 3685
iput v12, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPostInterpolationPosition:F
.line 3686
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mProgressInterpolator:Landroid/view/animation/Interpolator;
if-nez v3, :cond_155
move v3, v12
goto :goto_159
:cond_155
invoke-interface {v3, v12}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v3
.line 3687
:goto_159
iget-object v5, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mProgressInterpolator:Landroid/view/animation/Interpolator;
if-eqz v5, :cond_171
.line 3688
iget v10, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
div-float v10, v1, v10
add-float/2addr v10, v12
invoke-interface {v5, v10}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v5
iput v5, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
.line 3689
iget-object v10, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mProgressInterpolator:Landroid/view/animation/Interpolator;
invoke-interface {v10, v12}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v10
sub-float/2addr v5, v10
iput v5, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
:cond_171
const/4 v5, 0x0
:goto_172
if-ge v5, v2, :cond_19a
.line 3692
invoke-virtual {v0, v5}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v10
.line 3693
iget-object v11, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v11, v10}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v11
move-object/from16 v17, v11
check-cast v17, Landroidx/constraintlayout/motion/widget/MotionController;
if-eqz v17, :cond_197
.line 3695
iget-boolean v11, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeepAnimating:Z
iget-object v15, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeyCache:Landroidx/constraintlayout/core/motion/utils/KeyCache;
move-object/from16 v18, v10
move/from16 v19, v3
move-wide/from16 v20, v8
move-object/from16 v22, v15
invoke-virtual/range {v17 .. v22}, Landroidx/constraintlayout/motion/widget/MotionController;->interpolate(Landroid/view/View;FJLandroidx/constraintlayout/core/motion/utils/KeyCache;)Z
move-result v10
or-int/2addr v10, v11
iput-boolean v10, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeepAnimating:Z
:cond_197
add-int/lit8 v5, v5, 0x1
goto :goto_172
:cond_19a
if-lez v13, :cond_1a2
.line 3703
iget v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
cmpl-float v2, v12, v2
if-gez v2, :cond_1ac
:cond_1a2
cmpg-float v2, v1, v4
if-gtz v2, :cond_1ae
iget v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
cmpg-float v2, v12, v2
if-gtz v2, :cond_1ae
:cond_1ac
const/4 v2, 0x1
goto :goto_1af
:cond_1ae
const/4 v2, 0x0
.line 3705
:goto_1af
iget-boolean v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeepAnimating:Z
if-nez v3, :cond_1be
iget-boolean v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
if-nez v3, :cond_1be
if-eqz v2, :cond_1be
.line 3706
sget-object v3, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {v0, v3}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
.line 3708
:cond_1be
iget-boolean v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mMeasureDuringTransition:Z
if-eqz v3, :cond_1c5
.line 3709
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->requestLayout()V
.line 3712
:cond_1c5
iget-boolean v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeepAnimating:Z
xor-int/2addr v2, v6
or-int/2addr v2, v3
iput-boolean v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeepAnimating:Z
cmpg-float v2, v12, v4
if-gtz v2, :cond_1e9
.line 3715
iget v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
const/4 v3, -0x1
if-eq v2, v3, :cond_1e9
.line 3716
iget v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
if-eq v3, v2, :cond_1e9
.line 3718
iput v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 3719
iget-object v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v3, v2}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v2
.line 3720
invoke-virtual {v2, v0}, Landroidx/constraintlayout/widget/ConstraintSet;->applyCustomAttributes(Landroidx/constraintlayout/widget/ConstraintLayout;)V
.line 3721
sget-object v2, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {v0, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
const/4 v7, 0x1
:cond_1e9
float-to-double v2, v12
const-wide/high16 v8, 0x3ff0000000000000L # 1.0
cmpl-double v5, v2, v8
if-ltz v5, :cond_207
.line 3729
iget v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
iget v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
if-eq v2, v3, :cond_207
.line 3731
iput v3, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 3732
iget-object v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v2, v3}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v2
.line 3733
invoke-virtual {v2, v0}, Landroidx/constraintlayout/widget/ConstraintSet;->applyCustomAttributes(Landroidx/constraintlayout/widget/ConstraintLayout;)V
.line 3734
sget-object v2, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {v0, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
const/4 v7, 0x1
.line 3738
:cond_207
iget-boolean v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeepAnimating:Z
if-nez v2, :cond_226
iget-boolean v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
if-eqz v2, :cond_210
goto :goto_226
:cond_210
if-lez v13, :cond_218
const/high16 v2, 0x3f800000 # 1.0f
cmpl-float v3, v12, v2
if-eqz v3, :cond_220
:cond_218
cmpg-float v2, v1, v4
if-gez v2, :cond_229
cmpl-float v2, v12, v4
if-nez v2, :cond_229
.line 3742
:cond_220
sget-object v2, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {v0, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
goto :goto_229
.line 3739
:cond_226
:goto_226
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->invalidate()V
.line 3745
:cond_229
:goto_229
iget-boolean v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mKeepAnimating:Z
if-nez v2, :cond_244
iget-boolean v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
if-nez v2, :cond_244
if-lez v13, :cond_239
const/high16 v2, 0x3f800000 # 1.0f
cmpl-float v3, v12, v2
if-eqz v3, :cond_241
:cond_239
cmpg-float v1, v1, v4
if-gez v1, :cond_244
cmpl-float v1, v12, v4
if-nez v1, :cond_244
.line 3746
:cond_241
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->onNewStateAttachHandlers()V
.line 3749
:cond_244
iget v1, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
const/high16 v2, 0x3f800000 # 1.0f
cmpl-float v2, v1, v2
if-ltz v2, :cond_258
.line 3750
iget v1, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
iget v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
if-eq v1, v2, :cond_253
goto :goto_254
:cond_253
move v6, v7
.line 3753
:goto_254
iput v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
:goto_256
move v7, v6
goto :goto_267
:cond_258
cmpg-float v1, v1, v4
if-gtz v1, :cond_267
.line 3755
iget v1, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
iget v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
if-eq v1, v2, :cond_263
goto :goto_264
:cond_263
move v6, v7
.line 3758
:goto_264
iput v2, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
goto :goto_256
.line 3761
:cond_267
:goto_267
iget-boolean v1, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mNeedsFireTransitionCompleted:Z
or-int/2addr v1, v7
iput-boolean v1, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mNeedsFireTransitionCompleted:Z
if-eqz v7, :cond_275
.line 3763
iget-boolean v1, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInLayout:Z
if-nez v1, :cond_275
.line 3764
invoke-virtual/range {p0 .. p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->requestLayout()V
.line 3767
:cond_275
iget v1, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
iput v1, v0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
return-void
.end method
.method protected fireTransitionCompleted()V
.registers 5
.line 4402
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListener:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
const/4 v1, 0x1
if-nez v0, :cond_f
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
if-eqz v0, :cond_42
invoke-virtual {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;->isEmpty()Z
move-result v0
if-nez v0, :cond_42
.line 4403
:cond_f
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mListenerState:I
const/4 v2, -0x1
if-ne v0, v2, :cond_42
.line 4404
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mListenerState:I
.line 4406
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionCompleted:Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->isEmpty()Z
move-result v0
if-nez v0, :cond_32
.line 4407
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionCompleted:Ljava/util/ArrayList;
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
move-result v3
sub-int/2addr v3, v1
invoke-virtual {v0, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Integer;
invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
move-result v0
goto :goto_33
:cond_32
const/4 v0, -0x1
.line 4409
:goto_33
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
if-eq v0, v3, :cond_42
if-eq v3, v2, :cond_42
.line 4410
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionCompleted:Ljava/util/ArrayList;
invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 4414
:cond_42
invoke-direct {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->processTransitionCompleted()V
.line 4415
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnComplete:Ljava/lang/Runnable;
if-eqz v0, :cond_4c
.line 4416
invoke-interface {v0}, Ljava/lang/Runnable;->run()V
.line 4419
:cond_4c
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitionTo:[I
if-eqz v0, :cond_66
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitions:I
if-lez v2, :cond_66
const/4 v2, 0x0
.line 4420
aget v0, v0, v2
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->transitionToState(I)V
.line 4421
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitionTo:[I
array-length v3, v0
sub-int/2addr v3, v1
invoke-static {v0, v1, v0, v2, v3}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 4422
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitions:I
sub-int/2addr v0, v1
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitions:I
:cond_66
return-void
.end method
.method public fireTrigger(IZF)V
.registers 6
.line 4357
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListener:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
if-eqz v0, :cond_7
.line 4358
invoke-interface {v0, p0, p1, p2, p3}, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;->onTransitionTrigger(Landroidx/constraintlayout/motion/widget/MotionLayout;IZF)V
.line 4360
:cond_7
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
if-eqz v0, :cond_1f
.line 4361
invoke-virtual {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_f
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_1f
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
.line 4362
invoke-interface {v1, p0, p1, p2, p3}, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;->onTransitionTrigger(Landroidx/constraintlayout/motion/widget/MotionLayout;IZF)V
goto :goto_f
:cond_1f
return-void
.end method
.method getAnchorDpDt(IFFF[F)V
.registers 8
.line 4229
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getViewById(I)Landroid/view/View;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/constraintlayout/motion/widget/MotionController;
if-eqz v0, :cond_21
.line 4234
invoke-virtual {v0, p2, p3, p4, p5}, Landroidx/constraintlayout/motion/widget/MotionController;->getDpDt(FFF[F)V
.line 4235
invoke-virtual {v1}, Landroid/view/View;->getY()F
move-result p1
.line 4236
iget p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->lastPos:F
sub-float p3, p2, p3
const/4 p4, 0x0
cmpl-float p3, p3, p4
.line 4243
iput p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->lastPos:F
.line 4244
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->lastY:F
goto :goto_57
:cond_21
if-nez v1, :cond_35
.line 4246
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string p3, ""
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
goto :goto_41
.line 4247
:cond_35
invoke-virtual {v1}, Landroid/view/View;->getContext()Landroid/content/Context;
move-result-object p2
invoke-virtual {p2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object p2
invoke-virtual {p2, p1}, Landroid/content/res/Resources;->getResourceName(I)Ljava/lang/String;
move-result-object p1
.line 4248
:goto_41
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
const-string p3, "WARNING could not find view id "
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const-string p2, "MotionLayout"
invoke-static {p2, p1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
:goto_57
return-void
.end method
.method public getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
.registers 3
.line 4545
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_6
const/4 p1, 0x0
return-object p1
.line 4548
:cond_6
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object p1
return-object p1
.end method
.method public getConstraintSetIds()[I
.registers 2
.line 4528
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_6
const/4 v0, 0x0
return-object v0
.line 4531
:cond_6
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSetIds()[I
move-result-object v0
return-object v0
.end method
.method getConstraintSetNames(I)Ljava/lang/String;
.registers 3
.line 4741
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_6
const/4 p1, 0x0
return-object p1
.line 4744
:cond_6
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->lookUpConstraintName(I)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public getCurrentState()I
.registers 2
.line 4202
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
return v0
.end method
.method public getDebugMode(Z)V
.registers 2
if-eqz p1, :cond_4
const/4 p1, 0x2
goto :goto_5
:cond_4
const/4 p1, 0x1
.line 3985
:goto_5
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDebugPath:I
.line 3986
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->invalidate()V
return-void
.end method
.method public getDefinedTransitions()Ljava/util/ArrayList;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/ArrayList<",
"Landroidx/constraintlayout/motion/widget/MotionScene$Transition;",
">;"
}
.end annotation
.line 4662
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_6
const/4 v0, 0x0
return-object v0
.line 4665
:cond_6
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getDefinedTransitions()Ljava/util/ArrayList;
move-result-object v0
return-object v0
.end method
.method public getDesignTool()Landroidx/constraintlayout/motion/widget/DesignTool;
.registers 2
.line 4448
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDesignTool:Landroidx/constraintlayout/motion/widget/DesignTool;
if-nez v0, :cond_b
.line 4449
new-instance v0, Landroidx/constraintlayout/motion/widget/DesignTool;
invoke-direct {v0, p0}, Landroidx/constraintlayout/motion/widget/DesignTool;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDesignTool:Landroidx/constraintlayout/motion/widget/DesignTool;
.line 4451
:cond_b
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDesignTool:Landroidx/constraintlayout/motion/widget/DesignTool;
return-object v0
.end method
.method public getEndState()I
.registers 2
.line 4684
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
return v0
.end method
.method getMotionController(I)Landroidx/constraintlayout/motion/widget/MotionController;
.registers 3
.line 1103
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->findViewById(I)Landroid/view/View;
move-result-object p1
invoke-virtual {v0, p1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Landroidx/constraintlayout/motion/widget/MotionController;
return-object p1
.end method
.method protected getNanoTime()J
.registers 3
.line 1137
invoke-static {}, Ljava/lang/System;->nanoTime()J
move-result-wide v0
return-wide v0
.end method
.method public getProgress()F
.registers 2
.line 4211
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
return v0
.end method
.method public getScene()Landroidx/constraintlayout/motion/widget/MotionScene;
.registers 2
.line 3881
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
return-object v0
.end method
.method public getStartState()I
.registers 2
.line 4675
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
return v0
.end method
.method public getTargetPosition()F
.registers 2
.line 4694
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
return v0
.end method
.method public getTransition(I)Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
.registers 3
.line 4717
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getTransitionById(I)Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
move-result-object p1
return-object p1
.end method
.method public getTransitionState()Landroid/os/Bundle;
.registers 2
.line 1688
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
if-nez v0, :cond_b
.line 1689
new-instance v0, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-direct {v0, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
.line 1691
:cond_b
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->recordState()V
.line 1692
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->getTransitionState()Landroid/os/Bundle;
move-result-object v0
return-object v0
.end method
.method public getTransitionTimeMs()J
.registers 3
.line 4258
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
const/high16 v1, 0x447a0000 # 1000.0f
if-eqz v0, :cond_e
.line 4259
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getDuration()I
move-result v0
int-to-float v0, v0
div-float/2addr v0, v1
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
.line 4261
:cond_e
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
mul-float v0, v0, v1
float-to-long v0, v0
return-wide v0
.end method
.method public getVelocity()F
.registers 2
.line 2447
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
return v0
.end method
.method public getViewVelocity(Landroid/view/View;FF[FI)V
.registers 14
.line 2460
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
.line 2461
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 2462
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
if-eqz v2, :cond_2d
const v0, 0x3727c5ac # 1.0E-5f
.line 2464
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
sub-float/2addr v2, v1
invoke-static {v2}, Ljava/lang/Math;->signum(F)F
move-result v1
.line 2465
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
add-float/2addr v3, v0
invoke-interface {v2, v3}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v2
.line 2466
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
iget v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
invoke-interface {v3, v4}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v3
sub-float/2addr v2, v3
div-float/2addr v2, v0
mul-float v1, v1, v2
.line 2469
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
div-float v0, v1, v0
move v2, v3
goto :goto_2e
:cond_2d
move v2, v1
.line 2472
:goto_2e
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
instance-of v3, v1, Landroidx/constraintlayout/motion/widget/MotionInterpolator;
if-eqz v3, :cond_3a
.line 2473
check-cast v1, Landroidx/constraintlayout/motion/widget/MotionInterpolator;
invoke-virtual {v1}, Landroidx/constraintlayout/motion/widget/MotionInterpolator;->getVelocity()F
move-result v0
.line 2477
:cond_3a
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v1, p1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/constraintlayout/motion/widget/MotionController;
and-int/lit8 v3, p5, 0x1
if-nez v3, :cond_55
.line 2480
invoke-virtual {p1}, Landroid/view/View;->getWidth()I
move-result v3
invoke-virtual {p1}, Landroid/view/View;->getHeight()I
move-result v4
move v5, p2
move v6, p3
move-object v7, p4
.line 2479
invoke-virtual/range {v1 .. v7}, Landroidx/constraintlayout/motion/widget/MotionController;->getPostLayoutDvDp(FIIFF[F)V
goto :goto_58
.line 2483
:cond_55
invoke-virtual {v1, v2, p2, p3, p4}, Landroidx/constraintlayout/motion/widget/MotionController;->getDpDt(FFF[F)V
:goto_58
const/4 p1, 0x2
if-ge p5, p1, :cond_69
const/4 p1, 0x0
.line 2486
aget p2, p4, p1
mul-float p2, p2, v0
aput p2, p4, p1
const/4 p1, 0x1
.line 2487
aget p2, p4, p1
mul-float p2, p2, v0
aput p2, p4, p1
:cond_69
return-void
.end method
.method public isAttachedToWindow()Z
.registers 3
.line 1530
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x13
if-lt v0, v1, :cond_b
.line 1531
invoke-super {p0}, Landroidx/constraintlayout/widget/ConstraintLayout;->isAttachedToWindow()Z
move-result v0
return v0
.line 1533
:cond_b
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getWindowToken()Landroid/os/IBinder;
move-result-object v0
if-eqz v0, :cond_13
const/4 v0, 0x1
goto :goto_14
:cond_13
const/4 v0, 0x0
:goto_14
return v0
.end method
.method public isDelayedApplicationOfInitialState()Z
.registers 2
.line 4852
iget-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDelayedApply:Z
return v0
.end method
.method public isInRotation()Z
.registers 2
.line 2245
iget-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInRotation:Z
return v0
.end method
.method public isInteractionEnabled()Z
.registers 2
.line 4778
iget-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInteractionEnabled:Z
return v0
.end method
.method public isViewTransitionEnabled(I)Z
.registers 3
.line 4826
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v0, :cond_9
.line 4827
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->isViewTransitionEnabled(I)Z
move-result p1
return p1
:cond_9
const/4 p1, 0x0
return p1
.end method
.method public jumpToState(I)V
.registers 3
.line 2258
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isAttachedToWindow()Z
move-result v0
if-nez v0, :cond_8
.line 2259
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 2261
:cond_8
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
if-ne v0, p1, :cond_11
const/4 p1, 0x0
.line 2262
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
goto :goto_1e
.line 2263
:cond_11
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
if-ne v0, p1, :cond_1b
const/high16 p1, 0x3f800000 # 1.0f
.line 2264
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
goto :goto_1e
.line 2266
:cond_1b
invoke-virtual {p0, p1, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setTransition(II)V
:goto_1e
return-void
.end method
.method public loadLayoutDescription(I)V
.registers 6
const-string v0, "unable to parse MotionScene file"
const/4 v1, 0x0
if-eqz p1, :cond_c9
.line 1462
:try_start_5
new-instance v2, Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getContext()Landroid/content/Context;
move-result-object v3
invoke-direct {v2, v3, p0, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;-><init>(Landroid/content/Context;Landroidx/constraintlayout/motion/widget/MotionLayout;I)V
iput-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
.line 1463
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
const/4 v3, -0x1
if-ne p1, v3, :cond_2d
if-eqz v2, :cond_2d
.line 1464
invoke-virtual {v2}, Landroidx/constraintlayout/motion/widget/MotionScene;->getStartId()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 1465
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getStartId()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 1466
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getEndId()I
move-result p1
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
.line 1468
:cond_2d
sget p1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v2, 0x13
if-lt p1, v2, :cond_3e
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isAttachedToWindow()Z
move-result p1
if-eqz p1, :cond_3a
goto :goto_3e
.line 1514
:cond_3a
iput-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
:try_end_3c
.catch Ljava/lang/Exception; {:try_start_5 .. :try_end_3c} :catch_c2
goto/16 :goto_cb
.line 1470
:cond_3e
:goto_3e
:try_start_3e
sget p1, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x11
if-lt p1, v1, :cond_52
.line 1471
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getDisplay()Landroid/view/Display;
move-result-object p1
if-nez p1, :cond_4c
const/4 p1, 0x0
goto :goto_50
.line 1472
:cond_4c
invoke-virtual {p1}, Landroid/view/Display;->getRotation()I
move-result p1
:goto_50
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreviouseRotation:I
.line 1475
:cond_52
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz p1, :cond_82
.line 1476
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
invoke-virtual {p1, v1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object p1
.line 1477
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v1, p0}, Landroidx/constraintlayout/motion/widget/MotionScene;->readFallback(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
.line 1478
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
if-eqz v1, :cond_79
.line 1479
invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_69
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_79
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/constraintlayout/motion/widget/MotionHelper;
.line 1480
invoke-virtual {v2, p0}, Landroidx/constraintlayout/motion/widget/MotionHelper;->onFinishedMotionScene(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
goto :goto_69
:cond_79
if-eqz p1, :cond_7e
.line 1484
invoke-virtual {p1, p0}, Landroidx/constraintlayout/widget/ConstraintSet;->applyTo(Landroidx/constraintlayout/widget/ConstraintLayout;)V
.line 1486
:cond_7e
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 1488
:cond_82
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->onNewStateAttachHandlers()V
.line 1489
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
if-eqz p1, :cond_9a
.line 1490
iget-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDelayedApply:Z
if-eqz v1, :cond_96
.line 1491
new-instance p1, Landroidx/constraintlayout/motion/widget/MotionLayout$1;
invoke-direct {p1, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$1;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->post(Ljava/lang/Runnable;)Z
goto :goto_cb
.line 1498
:cond_96
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->apply()V
goto :goto_cb
.line 1501
:cond_9a
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz p1, :cond_cb
iget-object p1, p1, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
if-eqz p1, :cond_cb
.line 1502
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget-object p1, p1, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getAutoTransition()I
move-result p1
const/4 v1, 0x4
if-ne p1, v1, :cond_cb
.line 1503
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->transitionToEnd()V
.line 1504
sget-object p1, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->SETUP:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
.line 1505
sget-object p1, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->MOVING:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
:try_end_ba
.catch Ljava/lang/Exception; {:try_start_3e .. :try_end_ba} :catch_bb
goto :goto_cb
:catch_bb
move-exception p1
.line 1511
:try_start_bc
new-instance v1, Ljava/lang/IllegalArgumentException;
invoke-direct {v1, v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
:try_end_c2
.catch Ljava/lang/Exception; {:try_start_bc .. :try_end_c2} :catch_c2
:catch_c2
move-exception p1
.line 1518
new-instance v1, Ljava/lang/IllegalArgumentException;
invoke-direct {v1, v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.line 1521
:cond_c9
iput-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
:cond_cb
:goto_cb
return-void
.end method
.method lookUpConstraintId(Ljava/lang/String;)I
.registers 3
.line 4728
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_6
const/4 p1, 0x0
return p1
.line 4731
:cond_6
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->lookUpConstraintId(Ljava/lang/String;)I
move-result p1
return p1
.end method
.method protected obtainVelocityTracker()Landroidx/constraintlayout/motion/widget/MotionLayout$MotionTracker;
.registers 2
.line 1146
invoke-static {}, Landroidx/constraintlayout/motion/widget/MotionLayout$MyTracker;->obtain()Landroidx/constraintlayout/motion/widget/MotionLayout$MyTracker;
move-result-object v0
return-object v0
.end method
.method protected onAttachedToWindow()V
.registers 4
.line 4126
invoke-super {p0}, Landroidx/constraintlayout/widget/ConstraintLayout;->onAttachedToWindow()V
.line 4127
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x11
if-lt v0, v1, :cond_15
.line 4128
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getDisplay()Landroid/view/Display;
move-result-object v0
if-eqz v0, :cond_15
.line 4130
invoke-virtual {v0}, Landroid/view/Display;->getRotation()I
move-result v0
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreviouseRotation:I
.line 4133
:cond_15
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v0, :cond_48
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
const/4 v2, -0x1
if-eq v1, v2, :cond_48
.line 4134
invoke-virtual {v0, v1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v0
.line 4135
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v1, p0}, Landroidx/constraintlayout/motion/widget/MotionScene;->readFallback(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
.line 4136
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
if-eqz v1, :cond_3f
.line 4137
invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_2f
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_3f
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/constraintlayout/motion/widget/MotionHelper;
.line 4138
invoke-virtual {v2, p0}, Landroidx/constraintlayout/motion/widget/MotionHelper;->onFinishedMotionScene(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
goto :goto_2f
:cond_3f
if-eqz v0, :cond_44
.line 4142
invoke-virtual {v0, p0}, Landroidx/constraintlayout/widget/ConstraintSet;->applyTo(Landroidx/constraintlayout/widget/ConstraintLayout;)V
.line 4144
:cond_44
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 4146
:cond_48
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->onNewStateAttachHandlers()V
.line 4147
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
if-eqz v0, :cond_60
.line 4148
iget-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDelayedApply:Z
if-eqz v1, :cond_5c
.line 4149
new-instance v0, Landroidx/constraintlayout/motion/widget/MotionLayout$4;
invoke-direct {v0, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$4;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->post(Ljava/lang/Runnable;)Z
goto :goto_80
.line 4156
:cond_5c
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->apply()V
goto :goto_80
.line 4159
:cond_60
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v0, :cond_80
iget-object v0, v0, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
if-eqz v0, :cond_80
.line 4160
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget-object v0, v0, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getAutoTransition()I
move-result v0
const/4 v1, 0x4
if-ne v0, v1, :cond_80
.line 4161
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->transitionToEnd()V
.line 4162
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->SETUP:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
.line 4163
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->MOVING:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
:cond_80
:goto_80
return-void
.end method
.method public onInterceptTouchEvent(Landroid/view/MotionEvent;)Z
.registers 8
.line 4065
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
const/4 v1, 0x0
if-eqz v0, :cond_ad
iget-boolean v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInteractionEnabled:Z
if-nez v2, :cond_b
goto/16 :goto_ad
.line 4069
:cond_b
iget-object v0, v0, Landroidx/constraintlayout/motion/widget/MotionScene;->mViewTransitionController:Landroidx/constraintlayout/motion/widget/ViewTransitionController;
if-eqz v0, :cond_16
.line 4070
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget-object v0, v0, Landroidx/constraintlayout/motion/widget/MotionScene;->mViewTransitionController:Landroidx/constraintlayout/motion/widget/ViewTransitionController;
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/ViewTransitionController;->touchEvent(Landroid/view/MotionEvent;)V
.line 4072
:cond_16
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget-object v0, v0, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
if-eqz v0, :cond_ad
.line 4073
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->isEnabled()Z
move-result v2
if-eqz v2, :cond_ad
.line 4074
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getTouchResponse()Landroidx/constraintlayout/motion/widget/TouchResponse;
move-result-object v0
if-eqz v0, :cond_ad
.line 4076
invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I
move-result v2
if-nez v2, :cond_48
.line 4077
new-instance v2, Landroid/graphics/RectF;
invoke-direct {v2}, Landroid/graphics/RectF;-><init>()V
invoke-virtual {v0, p0, v2}, Landroidx/constraintlayout/motion/widget/TouchResponse;->getTouchRegion(Landroid/view/ViewGroup;Landroid/graphics/RectF;)Landroid/graphics/RectF;
move-result-object v2
if-eqz v2, :cond_48
.line 4079
invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F
move-result v3
invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F
move-result v4
invoke-virtual {v2, v3, v4}, Landroid/graphics/RectF;->contains(FF)Z
move-result v2
if-nez v2, :cond_48
return v1
.line 4083
:cond_48
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/TouchResponse;->getTouchRegionId()I
move-result v0
const/4 v2, -0x1
if-eq v0, v2, :cond_ad
.line 4085
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRegionView:Landroid/view/View;
if-eqz v2, :cond_59
invoke-virtual {v2}, Landroid/view/View;->getId()I
move-result v2
if-eq v2, v0, :cond_5f
.line 4086
:cond_59
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->findViewById(I)Landroid/view/View;
move-result-object v0
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRegionView:Landroid/view/View;
.line 4088
:cond_5f
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRegionView:Landroid/view/View;
if-eqz v0, :cond_ad
.line 4089
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBoundsCheck:Landroid/graphics/RectF;
invoke-virtual {v0}, Landroid/view/View;->getLeft()I
move-result v0
int-to-float v0, v0
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRegionView:Landroid/view/View;
invoke-virtual {v3}, Landroid/view/View;->getTop()I
move-result v3
int-to-float v3, v3
iget-object v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRegionView:Landroid/view/View;
invoke-virtual {v4}, Landroid/view/View;->getRight()I
move-result v4
int-to-float v4, v4
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRegionView:Landroid/view/View;
invoke-virtual {v5}, Landroid/view/View;->getBottom()I
move-result v5
int-to-float v5, v5
invoke-virtual {v2, v0, v3, v4, v5}, Landroid/graphics/RectF;->set(FFFF)V
.line 4090
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBoundsCheck:Landroid/graphics/RectF;
invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F
move-result v2
invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F
move-result v3
invoke-virtual {v0, v2, v3}, Landroid/graphics/RectF;->contains(FF)Z
move-result v0
if-eqz v0, :cond_ad
.line 4093
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRegionView:Landroid/view/View;
invoke-virtual {v0}, Landroid/view/View;->getLeft()I
move-result v0
int-to-float v0, v0
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRegionView:Landroid/view/View;
invoke-virtual {v2}, Landroid/view/View;->getTop()I
move-result v2
int-to-float v2, v2
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRegionView:Landroid/view/View;
invoke-direct {p0, v0, v2, v3, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->handlesTouchEvent(FFLandroid/view/View;Landroid/view/MotionEvent;)Z
move-result v0
if-nez v0, :cond_ad
.line 4095
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->onTouchEvent(Landroid/view/MotionEvent;)Z
move-result p1
return p1
:cond_ad
:goto_ad
return v1
.end method
.method protected onLayout(ZIIII)V
.registers 9
const/4 v0, 0x1
.line 3774
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInLayout:Z
const/4 v1, 0x0
.line 3779
:try_start_4
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v2, :cond_e
.line 3780
invoke-super/range {p0 .. p5}, Landroidx/constraintlayout/widget/ConstraintLayout;->onLayout(ZIIII)V
:try_end_b
.catchall {:try_start_4 .. :try_end_b} :catchall_29
.line 3798
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInLayout:Z
return-void
:cond_e
sub-int/2addr p4, p2
sub-int/2addr p5, p3
.line 3785
:try_start_10
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastLayoutWidth:I
if-ne p1, p4, :cond_18
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastLayoutHeight:I
if-eq p1, p5, :cond_1e
.line 3786
:cond_18
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->rebuildScene()V
.line 3787
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->evaluate(Z)V
.line 3793
:cond_1e
iput p4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastLayoutWidth:I
.line 3794
iput p5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastLayoutHeight:I
.line 3795
iput p4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOldWidth:I
.line 3796
iput p5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOldHeight:I
:try_end_26
.catchall {:try_start_10 .. :try_end_26} :catchall_29
.line 3798
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInLayout:Z
return-void
:catchall_29
move-exception p1
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInLayout:Z
.line 3799
throw p1
.end method
.method protected onMeasure(II)V
.registers 10
.line 2897
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_8
.line 2898
invoke-super {p0, p1, p2}, Landroidx/constraintlayout/widget/ConstraintLayout;->onMeasure(II)V
return-void
.line 2901
:cond_8
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastWidthMeasureSpec:I
const/4 v1, 0x0
const/4 v2, 0x1
if-ne v0, p1, :cond_15
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastHeightMeasureSpec:I
if-eq v0, p2, :cond_13
goto :goto_15
:cond_13
const/4 v0, 0x0
goto :goto_16
:cond_15
:goto_15
const/4 v0, 0x1
.line 2902
:goto_16
iget-boolean v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mNeedsFireTransitionCompleted:Z
if-eqz v3, :cond_23
.line 2903
iput-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mNeedsFireTransitionCompleted:Z
.line 2904
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->onNewStateAttachHandlers()V
.line 2905
invoke-direct {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->processTransitionCompleted()V
const/4 v0, 0x1
.line 2909
:cond_23
iget-boolean v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDirtyHierarchy:Z
if-eqz v3, :cond_28
const/4 v0, 0x1
.line 2913
:cond_28
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastWidthMeasureSpec:I
.line 2914
iput p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastHeightMeasureSpec:I
.line 2916
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v3}, Landroidx/constraintlayout/motion/widget/MotionScene;->getStartId()I
move-result v3
.line 2917
iget-object v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v4}, Landroidx/constraintlayout/motion/widget/MotionScene;->getEndId()I
move-result v4
if-nez v0, :cond_42
.line 2919
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
invoke-virtual {v5, v3, v4}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->isNotConfiguredWith(II)Z
move-result v5
if-eqz v5, :cond_68
:cond_42
iget v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
const/4 v6, -0x1
if-eq v5, v6, :cond_68
.line 2920
invoke-super {p0, p1, p2}, Landroidx/constraintlayout/widget/ConstraintLayout;->onMeasure(II)V
.line 2921
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
iget-object p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0, v3}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v0
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v2, v4}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v2
invoke-virtual {p1, p2, v0, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->initFrom(Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;Landroidx/constraintlayout/widget/ConstraintSet;Landroidx/constraintlayout/widget/ConstraintSet;)V
.line 2922
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->reEvaluateState()V
.line 2923
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
invoke-virtual {p1, v3, v4}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->setMeasuredId(II)V
goto :goto_6e
:cond_68
if-eqz v0, :cond_6d
.line 2926
invoke-super {p0, p1, p2}, Landroidx/constraintlayout/widget/ConstraintLayout;->onMeasure(II)V
:cond_6d
const/4 v1, 0x1
.line 2929
:goto_6e
iget-boolean p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mMeasureDuringTransition:Z
if-nez p1, :cond_74
if-eqz v1, :cond_c5
.line 2930
:cond_74
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getPaddingTop()I
move-result p1
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getPaddingBottom()I
move-result p2
add-int/2addr p1, p2
.line 2931
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getPaddingLeft()I
move-result p2
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getPaddingRight()I
move-result v0
add-int/2addr p2, v0
.line 2932
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
invoke-virtual {v0}, Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;->getWidth()I
move-result v0
add-int/2addr v0, p2
.line 2933
iget-object p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
invoke-virtual {p2}, Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;->getHeight()I
move-result p2
add-int/2addr p2, p1
.line 2934
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mWidthMeasureMode:I
const/high16 v1, -0x80000000
if-eq p1, v1, :cond_9c
if-nez p1, :cond_ac
.line 2935
:cond_9c
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStartWrapWidth:I
int-to-float v0, p1
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPostInterpolationPosition:F
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndWrapWidth:I
sub-int/2addr v3, p1
int-to-float p1, v3
mul-float v2, v2, p1
add-float/2addr v0, v2
float-to-int v0, v0
.line 2936
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->requestLayout()V
.line 2938
:cond_ac
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mHeightMeasureMode:I
if-eq p1, v1, :cond_b2
if-nez p1, :cond_c2
.line 2939
:cond_b2
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStartWrapHeight:I
int-to-float p2, p1
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPostInterpolationPosition:F
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndWrapHeight:I
sub-int/2addr v2, p1
int-to-float p1, v2
mul-float v1, v1, p1
add-float/2addr p2, v1
float-to-int p2, p2
.line 2940
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->requestLayout()V
.line 2942
:cond_c2
invoke-virtual {p0, v0, p2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setMeasuredDimension(II)V
.line 2944
:cond_c5
invoke-direct {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->evaluateLayout()V
return-void
.end method
.method public onNestedFling(Landroid/view/View;FFZ)Z
.registers 5
const/4 p1, 0x0
return p1
.end method
.method public onNestedPreFling(Landroid/view/View;FF)Z
.registers 4
const/4 p1, 0x0
return p1
.end method
.method public onNestedPreScroll(Landroid/view/View;II[II)V
.registers 16
.line 3004
iget-object p5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez p5, :cond_5
return-void
.line 3009
:cond_5
iget-object v0, p5, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
if-eqz v0, :cond_c8
.line 3010
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->isEnabled()Z
move-result v1
if-nez v1, :cond_11
goto/16 :goto_c8
.line 3014
:cond_11
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->isEnabled()Z
move-result v1
const/4 v2, -0x1
if-eqz v1, :cond_2b
.line 3015
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getTouchResponse()Landroidx/constraintlayout/motion/widget/TouchResponse;
move-result-object v1
if-eqz v1, :cond_2b
.line 3017
invoke-virtual {v1}, Landroidx/constraintlayout/motion/widget/TouchResponse;->getTouchRegionId()I
move-result v1
if-eq v1, v2, :cond_2b
.line 3018
invoke-virtual {p1}, Landroid/view/View;->getId()I
move-result v3
if-eq v3, v1, :cond_2b
return-void
.line 3024
:cond_2b
invoke-virtual {p5}, Landroidx/constraintlayout/motion/widget/MotionScene;->getMoveWhenScrollAtTop()Z
move-result v1
const/high16 v3, 0x3f800000 # 1.0f
const/4 v4, 0x0
if-eqz v1, :cond_54
.line 3026
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getTouchResponse()Landroidx/constraintlayout/motion/widget/TouchResponse;
move-result-object v1
if-eqz v1, :cond_43
.line 3029
invoke-virtual {v1}, Landroidx/constraintlayout/motion/widget/TouchResponse;->getFlags()I
move-result v1
and-int/lit8 v1, v1, 0x4
if-eqz v1, :cond_43
move v2, p3
.line 3033
:cond_43
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
cmpl-float v5, v1, v3
if-eqz v5, :cond_4d
cmpl-float v1, v1, v4
if-nez v1, :cond_54
:cond_4d
invoke-virtual {p1, v2}, Landroid/view/View;->canScrollVertically(I)Z
move-result v1
if-eqz v1, :cond_54
return-void
.line 3039
:cond_54
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getTouchResponse()Landroidx/constraintlayout/motion/widget/TouchResponse;
move-result-object v1
const/4 v2, 0x0
const/4 v5, 0x1
if-eqz v1, :cond_91
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getTouchResponse()Landroidx/constraintlayout/motion/widget/TouchResponse;
move-result-object v0
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/TouchResponse;->getFlags()I
move-result v0
and-int/2addr v0, v5
if-eqz v0, :cond_91
int-to-float v0, p2
int-to-float v1, p3
.line 3040
invoke-virtual {p5, v0, v1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getProgressDirection(FF)F
move-result v0
.line 3041
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
cmpg-float v6, v1, v4
if-gtz v6, :cond_77
cmpg-float v6, v0, v4
if-ltz v6, :cond_7f
:cond_77
cmpl-float v1, v1, v3
if-ltz v1, :cond_91
cmpl-float v0, v0, v4
if-lez v0, :cond_91
.line 3043
:cond_7f
sget p2, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 p3, 0x15
if-lt p2, p3, :cond_90
.line 3044
invoke-virtual {p1, v2}, Landroid/view/View;->setNestedScrollingEnabled(Z)V
.line 3046
new-instance p2, Landroidx/constraintlayout/motion/widget/MotionLayout$3;
invoke-direct {p2, p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$3;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;Landroid/view/View;)V
invoke-virtual {p1, p2}, Landroid/view/View;->post(Ljava/lang/Runnable;)Z
:cond_90
return-void
.line 3060
:cond_91
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
.line 3061
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v0
int-to-float v3, p2
.line 3062
iput v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScrollTargetDX:F
int-to-float v4, p3
.line 3063
iput v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScrollTargetDY:F
.line 3064
iget-wide v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScrollTargetTime:J
sub-long v6, v0, v6
long-to-double v6, v6
const-wide v8, 0x3e112e0be826d695L # 1.0E-9
mul-double v6, v6, v8
double-to-float v6, v6
iput v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScrollTargetDT:F
.line 3065
iput-wide v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScrollTargetTime:J
.line 3069
invoke-virtual {p5, v3, v4}, Landroidx/constraintlayout/motion/widget/MotionScene;->processScrollMove(FF)V
.line 3070
iget p5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
cmpl-float p1, p1, p5
if-eqz p1, :cond_bb
.line 3071
aput p2, p4, v2
.line 3072
aput p3, p4, v5
.line 3074
:cond_bb
invoke-virtual {p0, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->evaluate(Z)V
.line 3075
aget p1, p4, v2
if-nez p1, :cond_c6
aget p1, p4, v5
if-eqz p1, :cond_c8
.line 3076
:cond_c6
iput-boolean v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mUndergoingMotion:Z
:cond_c8
:goto_c8
return-void
.end method
.method public onNestedScroll(Landroid/view/View;IIIII)V
.registers 7
return-void
.end method
.method public onNestedScroll(Landroid/view/View;IIIII[I)V
.registers 8
.line 2987
iget-boolean p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mUndergoingMotion:Z
const/4 p6, 0x0
if-nez p1, :cond_9
if-nez p2, :cond_9
if-eqz p3, :cond_14
.line 2988
:cond_9
aget p1, p7, p6
add-int/2addr p1, p4
aput p1, p7, p6
const/4 p1, 0x1
.line 2989
aget p2, p7, p1
add-int/2addr p2, p5
aput p2, p7, p1
.line 2991
:cond_14
iput-boolean p6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mUndergoingMotion:Z
return-void
.end method
.method public onNestedScrollAccepted(Landroid/view/View;Landroid/view/View;II)V
.registers 5
.line 2966
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide p1
iput-wide p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScrollTargetTime:J
const/4 p1, 0x0
.line 2967
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScrollTargetDT:F
.line 2968
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScrollTargetDX:F
.line 2969
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScrollTargetDY:F
return-void
.end method
.method onNewStateAttachHandlers()V
.registers 3
.line 4181
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_5
return-void
.line 4184
:cond_5
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
invoke-virtual {v0, p0, v1}, Landroidx/constraintlayout/motion/widget/MotionScene;->autoTransition(Landroidx/constraintlayout/motion/widget/MotionLayout;I)Z
move-result v0
if-eqz v0, :cond_11
.line 4185
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->requestLayout()V
return-void
.line 4188
:cond_11
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
const/4 v1, -0x1
if-eq v0, v1, :cond_1b
.line 4189
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v1, p0, v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->addOnClickListeners(Landroidx/constraintlayout/motion/widget/MotionLayout;I)V
.line 4191
:cond_1b
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->supportTouch()Z
move-result v0
if-eqz v0, :cond_28
.line 4192
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->setupTouch()V
:cond_28
return-void
.end method
.method public onRtlPropertiesChanged(I)V
.registers 3
.line 4171
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz p1, :cond_b
.line 4172
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isRtl()Z
move-result v0
invoke-virtual {p1, v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->setRtl(Z)V
:cond_b
return-void
.end method
.method public onStartNestedScroll(Landroid/view/View;Landroid/view/View;II)Z
.registers 5
.line 2952
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz p1, :cond_25
iget-object p1, p1, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
if-eqz p1, :cond_25
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget-object p1, p1, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
.line 2954
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getTouchResponse()Landroidx/constraintlayout/motion/widget/TouchResponse;
move-result-object p1
if-eqz p1, :cond_25
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget-object p1, p1, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
.line 2955
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getTouchResponse()Landroidx/constraintlayout/motion/widget/TouchResponse;
move-result-object p1
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/TouchResponse;->getFlags()I
move-result p1
and-int/lit8 p1, p1, 0x2
if-eqz p1, :cond_23
goto :goto_25
:cond_23
const/4 p1, 0x1
return p1
:cond_25
:goto_25
const/4 p1, 0x0
return p1
.end method
.method public onStopNestedScroll(Landroid/view/View;I)V
.registers 5
.line 2979
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz p1, :cond_15
iget p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScrollTargetDT:F
const/4 v0, 0x0
cmpl-float v0, p2, v0
if-nez v0, :cond_c
goto :goto_15
.line 2982
:cond_c
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScrollTargetDX:F
div-float/2addr v0, p2
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScrollTargetDY:F
div-float/2addr v1, p2
invoke-virtual {p1, v0, v1}, Landroidx/constraintlayout/motion/widget/MotionScene;->processScrollUp(FF)V
:cond_15
:goto_15
return-void
.end method
.method public onTouchEvent(Landroid/view/MotionEvent;)Z
.registers 4
.line 4110
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v0, :cond_2a
iget-boolean v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInteractionEnabled:Z
if-eqz v1, :cond_2a
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->supportTouch()Z
move-result v0
if-eqz v0, :cond_2a
.line 4111
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget-object v0, v0, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
if-eqz v0, :cond_1f
.line 4112
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->isEnabled()Z
move-result v0
if-nez v0, :cond_1f
.line 4113
invoke-super {p0, p1}, Landroidx/constraintlayout/widget/ConstraintLayout;->onTouchEvent(Landroid/view/MotionEvent;)Z
move-result p1
return p1
.line 4115
:cond_1f
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getCurrentState()I
move-result v1
invoke-virtual {v0, p1, v1, p0}, Landroidx/constraintlayout/motion/widget/MotionScene;->processTouchEvent(Landroid/view/MotionEvent;ILandroidx/constraintlayout/motion/widget/MotionLayout;)V
const/4 p1, 0x1
return p1
.line 4121
:cond_2a
invoke-super {p0, p1}, Landroidx/constraintlayout/widget/ConstraintLayout;->onTouchEvent(Landroid/view/MotionEvent;)Z
move-result p1
return p1
.end method
.method public onViewAdded(Landroid/view/View;)V
.registers 3
.line 4459
invoke-super {p0, p1}, Landroidx/constraintlayout/widget/ConstraintLayout;->onViewAdded(Landroid/view/View;)V
.line 4460
instance-of v0, p1, Landroidx/constraintlayout/motion/widget/MotionHelper;
if-eqz v0, :cond_5b
.line 4461
check-cast p1, Landroidx/constraintlayout/motion/widget/MotionHelper;
.line 4462
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
if-nez v0, :cond_14
.line 4463
new-instance v0, Ljava/util/concurrent/CopyOnWriteArrayList;
invoke-direct {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
.line 4465
:cond_14
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
invoke-virtual {v0, p1}, Ljava/util/concurrent/CopyOnWriteArrayList;->add(Ljava/lang/Object;)Z
.line 4467
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionHelper;->isUsedOnShow()Z
move-result v0
if-eqz v0, :cond_2f
.line 4468
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnShowHelpers:Ljava/util/ArrayList;
if-nez v0, :cond_2a
.line 4469
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnShowHelpers:Ljava/util/ArrayList;
.line 4471
:cond_2a
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnShowHelpers:Ljava/util/ArrayList;
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 4473
:cond_2f
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionHelper;->isUseOnHide()Z
move-result v0
if-eqz v0, :cond_45
.line 4474
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnHideHelpers:Ljava/util/ArrayList;
if-nez v0, :cond_40
.line 4475
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnHideHelpers:Ljava/util/ArrayList;
.line 4477
:cond_40
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnHideHelpers:Ljava/util/ArrayList;
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 4479
:cond_45
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionHelper;->isDecorator()Z
move-result v0
if-eqz v0, :cond_5b
.line 4480
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
if-nez v0, :cond_56
.line 4481
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
.line 4483
:cond_56
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
:cond_5b
return-void
.end method
.method public onViewRemoved(Landroid/view/View;)V
.registers 3
.line 4493
invoke-super {p0, p1}, Landroidx/constraintlayout/widget/ConstraintLayout;->onViewRemoved(Landroid/view/View;)V
.line 4494
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnShowHelpers:Ljava/util/ArrayList;
if-eqz v0, :cond_a
.line 4495
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
.line 4497
:cond_a
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnHideHelpers:Ljava/util/ArrayList;
if-eqz v0, :cond_11
.line 4498
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
:cond_11
return-void
.end method
.method protected parseLayoutDescription(I)V
.registers 2
const/4 p1, 0x0
.line 3809
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mConstraintLayoutSpec:Landroidx/constraintlayout/widget/ConstraintLayoutStates;
return-void
.end method
.method public rebuildMotion()V
.registers 3
.annotation runtime Ljava/lang/Deprecated;
.end annotation
const-string v0, "MotionLayout"
const-string v1, "This method is deprecated. Please call rebuildScene() instead."
.line 4576
invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 4577
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->rebuildScene()V
return-void
.end method
.method public rebuildScene()V
.registers 2
.line 4584
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->reEvaluateState()V
.line 4585
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->invalidate()V
return-void
.end method
.method public removeTransitionListener(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;)Z
.registers 3
.line 4295
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
if-nez v0, :cond_6
const/4 p1, 0x0
return p1
.line 4298
:cond_6
invoke-virtual {v0, p1}, Ljava/util/concurrent/CopyOnWriteArrayList;->remove(Ljava/lang/Object;)Z
move-result p1
return p1
.end method
.method public requestLayout()V
.registers 3
.line 2875
iget-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mMeasureDuringTransition:Z
if-nez v0, :cond_1c
.line 2876
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
const/4 v1, -0x1
if-ne v0, v1, :cond_1c
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v0, :cond_1c
iget-object v0, v0, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
if-eqz v0, :cond_1c
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget-object v0, v0, Landroidx/constraintlayout/motion/widget/MotionScene;->mCurrentTransition:Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
.line 2878
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getLayoutDuringTransition()I
move-result v0
if-nez v0, :cond_1c
return-void
.line 2882
:cond_1c
invoke-super {p0}, Landroidx/constraintlayout/widget/ConstraintLayout;->requestLayout()V
return-void
.end method
.method public rotateTo(II)V
.registers 8
const/4 v0, 0x1
.line 2205
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInRotation:Z
.line 2206
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getWidth()I
move-result v1
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreRotateWidth:I
.line 2207
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getHeight()I
move-result v1
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreRotateHeight:I
.line 2209
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getDisplay()Landroid/view/Display;
move-result-object v1
invoke-virtual {v1}, Landroid/view/Display;->getRotation()I
move-result v1
add-int/lit8 v2, v1, 0x1
.line 2210
rem-int/lit8 v2, v2, 0x4
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreviouseRotation:I
add-int/2addr v3, v0
rem-int/lit8 v3, v3, 0x4
if-le v2, v3, :cond_23
goto :goto_24
:cond_23
const/4 v0, 0x2
:goto_24
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mRotatMode:I
.line 2212
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreviouseRotation:I
.line 2213
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildCount()I
move-result v0
const/4 v1, 0x0
:goto_2d
if-ge v1, v0, :cond_4d
.line 2215
invoke-virtual {p0, v1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v2
.line 2216
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreRotate:Ljava/util/HashMap;
invoke-virtual {v3, v2}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/constraintlayout/motion/utils/ViewState;
if-nez v3, :cond_47
.line 2218
new-instance v3, Landroidx/constraintlayout/motion/utils/ViewState;
invoke-direct {v3}, Landroidx/constraintlayout/motion/utils/ViewState;-><init>()V
.line 2219
iget-object v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mPreRotate:Ljava/util/HashMap;
invoke-virtual {v4, v2, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 2221
:cond_47
invoke-virtual {v3, v2}, Landroidx/constraintlayout/motion/utils/ViewState;->getState(Landroid/view/View;)V
add-int/lit8 v1, v1, 0x1
goto :goto_2d
:cond_4d
const/4 v0, -0x1
.line 2224
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 2225
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
.line 2226
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v1, v0, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->setTransition(II)V
.line 2227
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
const/4 v1, 0x0
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
invoke-virtual {v2, v3}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v2
invoke-virtual {p1, v0, v1, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->initFrom(Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;Landroidx/constraintlayout/widget/ConstraintSet;Landroidx/constraintlayout/widget/ConstraintSet;)V
const/4 p1, 0x0
.line 2228
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
.line 2230
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 2231
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->invalidate()V
.line 2232
new-instance p1, Landroidx/constraintlayout/motion/widget/MotionLayout$2;
invoke-direct {p1, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$2;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->transitionToEnd(Ljava/lang/Runnable;)V
if-lez p2, :cond_7f
int-to-float p1, p2
const/high16 p2, 0x447a0000 # 1000.0f
div-float/2addr p1, p2
.line 2239
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
:cond_7f
return-void
.end method
.method public scheduleTransitionTo(I)V
.registers 5
.line 4633
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getCurrentState()I
move-result v0
const/4 v1, -0x1
if-ne v0, v1, :cond_b
.line 4634
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->transitionToState(I)V
goto :goto_2d
.line 4636
:cond_b
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitionTo:[I
if-nez v0, :cond_15
const/4 v0, 0x4
new-array v0, v0, [I
.line 4637
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitionTo:[I
goto :goto_23
.line 4638
:cond_15
array-length v1, v0
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitions:I
if-gt v1, v2, :cond_23
.line 4639
array-length v1, v0
mul-int/lit8 v1, v1, 0x2
.line 4640
invoke-static {v0, v1}, Ljava/util/Arrays;->copyOf([II)[I
move-result-object v0
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitionTo:[I
.line 4642
:cond_23
:goto_23
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitionTo:[I
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitions:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScheduledTransitions:I
aput p1, v0, v1
:goto_2d
return-void
.end method
.method public setDebugMode(I)V
.registers 2
.line 3972
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDebugPath:I
.line 3973
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->invalidate()V
return-void
.end method
.method public setDelayedApplicationOfInitialState(Z)V
.registers 2
.line 4860
iput-boolean p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDelayedApply:Z
return-void
.end method
.method public setInteractionEnabled(Z)V
.registers 2
.line 4765
iput-boolean p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInteractionEnabled:Z
return-void
.end method
.method public setInterpolatedProgress(F)V
.registers 3
.line 1563
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v0, :cond_19
.line 1564
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->MOVING:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
.line 1565
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getInterpolator()Landroid/view/animation/Interpolator;
move-result-object v0
if-eqz v0, :cond_19
.line 1567
invoke-interface {v0, p1}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result p1
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
return-void
.line 1571
:cond_19
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
return-void
.end method
.method public setOnHide(F)V
.registers 5
.line 4513
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnHideHelpers:Ljava/util/ArrayList;
if-eqz v0, :cond_19
.line 4514
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
move-result v0
const/4 v1, 0x0
:goto_9
if-ge v1, v0, :cond_19
.line 4516
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnHideHelpers:Ljava/util/ArrayList;
invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/constraintlayout/motion/widget/MotionHelper;
.line 4517
invoke-virtual {v2, p1}, Landroidx/constraintlayout/motion/widget/MotionHelper;->setProgress(F)V
add-int/lit8 v1, v1, 0x1
goto :goto_9
:cond_19
return-void
.end method
.method public setOnShow(F)V
.registers 5
.line 4503
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnShowHelpers:Ljava/util/ArrayList;
if-eqz v0, :cond_19
.line 4504
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
move-result v0
const/4 v1, 0x0
:goto_9
if-ge v1, v0, :cond_19
.line 4506
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnShowHelpers:Ljava/util/ArrayList;
invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/constraintlayout/motion/widget/MotionHelper;
.line 4507
invoke-virtual {v2, p1}, Landroidx/constraintlayout/motion/widget/MotionHelper;->setProgress(F)V
add-int/lit8 v1, v1, 0x1
goto :goto_9
:cond_19
return-void
.end method
.method public setProgress(F)V
.registers 7
const/4 v0, 0x0
const/high16 v1, 0x3f800000 # 1.0f
cmpg-float v2, p1, v0
if-ltz v2, :cond_b
cmpl-float v3, p1, v1
if-lez v3, :cond_12
:cond_b
const-string v3, "MotionLayout"
const-string v4, "Warning! Progress is defined for values between 0.0 and 1.0 inclusive"
.line 1702
invoke-static {v3, v4}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
.line 1704
:cond_12
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isAttachedToWindow()Z
move-result v3
if-nez v3, :cond_29
.line 1705
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
if-nez v0, :cond_23
.line 1706
new-instance v0, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-direct {v0, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
.line 1708
:cond_23
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->setProgress(F)V
return-void
:cond_29
if-gtz v2, :cond_4c
.line 1719
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
cmpl-float v1, v2, v1
if-nez v1, :cond_3c
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
if-ne v1, v2, :cond_3c
.line 1720
sget-object v1, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->MOVING:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, v1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
.line 1723
:cond_3c
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 1724
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
cmpl-float v0, v1, v0
if-nez v0, :cond_79
.line 1725
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
goto :goto_79
:cond_4c
cmpl-float v2, p1, v1
if-ltz v2, :cond_71
.line 1728
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
cmpl-float v0, v2, v0
if-nez v0, :cond_61
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
if-ne v0, v2, :cond_61
.line 1729
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->MOVING:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
.line 1732
:cond_61
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 1733
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
cmpl-float v0, v0, v1
if-nez v0, :cond_79
.line 1734
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
goto :goto_79
:cond_71
const/4 v0, -0x1
.line 1737
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 1738
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->MOVING:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
.line 1741
:cond_79
:goto_79
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_7e
return-void
:cond_7e
const/4 v0, 0x1
.line 1745
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionInstantly:Z
.line 1746
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 1747
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
const-wide/16 v1, -0x1
.line 1748
iput-wide v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastTime:J
.line 1749
iput-wide v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mAnimationStartTime:J
const/4 p1, 0x0
.line 1750
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
.line 1752
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
.line 1753
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->invalidate()V
return-void
.end method
.method public setProgress(FF)V
.registers 4
.line 1581
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isAttachedToWindow()Z
move-result v0
if-nez v0, :cond_1c
.line 1582
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
if-nez v0, :cond_11
.line 1583
new-instance v0, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-direct {v0, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
.line 1585
:cond_11
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->setProgress(F)V
.line 1586
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {p1, p2}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->setVelocity(F)V
return-void
.line 1589
:cond_1c
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
.line 1590
sget-object p1, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->MOVING:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
.line 1591
iput p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
const/high16 p1, 0x3f800000 # 1.0f
.line 1592
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->animateTo(F)V
return-void
.end method
.method public setScene(Landroidx/constraintlayout/motion/widget/MotionScene;)V
.registers 3
.line 3869
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
.line 3870
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isRtl()Z
move-result v0
invoke-virtual {p1, v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->setRtl(Z)V
.line 3871
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->rebuildScene()V
return-void
.end method
.method setStartState(I)V
.registers 3
.line 1311
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isAttachedToWindow()Z
move-result v0
if-nez v0, :cond_1c
.line 1312
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
if-nez v0, :cond_11
.line 1313
new-instance v0, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-direct {v0, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
.line 1315
:cond_11
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->setStartState(I)V
.line 1316
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->setEndState(I)V
return-void
.line 1319
:cond_1c
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
return-void
.end method
.method public setState(III)V
.registers 5
.line 1546
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->SETUP:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
.line 1547
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
const/4 v0, -0x1
.line 1548
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 1549
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
.line 1550
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mConstraintLayoutSpec:Landroidx/constraintlayout/widget/ConstraintLayoutStates;
if-eqz v0, :cond_18
.line 1551
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mConstraintLayoutSpec:Landroidx/constraintlayout/widget/ConstraintLayoutStates;
int-to-float p2, p2
int-to-float p3, p3
invoke-virtual {v0, p1, p2, p3}, Landroidx/constraintlayout/widget/ConstraintLayoutStates;->updateConstraints(IFF)V
goto :goto_23
.line 1552
:cond_18
iget-object p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz p2, :cond_23
.line 1553
invoke-virtual {p2, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object p1
invoke-virtual {p1, p0}, Landroidx/constraintlayout/widget/ConstraintSet;->applyTo(Landroidx/constraintlayout/widget/ConstraintLayout;)V
:cond_23
:goto_23
return-void
.end method
.method setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
.registers 4
.line 1198
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
if-ne p1, v0, :cond_a
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
const/4 v1, -0x1
if-ne v0, v1, :cond_a
return-void
.line 1201
:cond_a
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionState:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
.line 1202
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionState:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
.line 1204
sget-object v1, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->MOVING:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
if-ne v0, v1, :cond_19
sget-object v1, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->MOVING:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
if-ne p1, v1, :cond_19
.line 1205
invoke-direct {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->fireTransitionChange()V
.line 1207
:cond_19
sget-object v1, Landroidx/constraintlayout/motion/widget/MotionLayout$5;->$SwitchMap$androidx$constraintlayout$motion$widget$MotionLayout$TransitionState:[I
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->ordinal()I
move-result v0
aget v0, v1, v0
const/4 v1, 0x1
if-eq v0, v1, :cond_33
const/4 v1, 0x2
if-eq v0, v1, :cond_33
const/4 v1, 0x3
if-eq v0, v1, :cond_2b
goto :goto_41
.line 1218
:cond_2b
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
if-ne p1, v0, :cond_41
.line 1219
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->fireTransitionCompleted()V
goto :goto_41
.line 1210
:cond_33
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->MOVING:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
if-ne p1, v0, :cond_3a
.line 1211
invoke-direct {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->fireTransitionChange()V
.line 1213
:cond_3a
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->FINISHED:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
if-ne p1, v0, :cond_41
.line 1214
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->fireTransitionCompleted()V
:cond_41
:goto_41
return-void
.end method
.method public setTransition(I)V
.registers 9
.line 1361
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v0, :cond_c4
.line 1362
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getTransition(I)Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
move-result-object p1
.line 1364
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getStartConstraintSetId()I
move-result v0
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 1365
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->getEndConstraintSetId()I
move-result v0
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
.line 1367
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isAttachedToWindow()Z
move-result v0
if-nez v0, :cond_34
.line 1368
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
if-nez p1, :cond_25
.line 1369
new-instance p1, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-direct {p1, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
.line 1371
:cond_25
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
invoke-virtual {p1, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->setStartState(I)V
.line 1372
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
invoke-virtual {p1, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->setEndState(I)V
return-void
:cond_34
const/high16 v0, 0x7fc00000 # Float.NaN
.line 1384
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
const/high16 v3, 0x3f800000 # 1.0f
const/4 v4, 0x0
if-ne v1, v2, :cond_41
const/4 v0, 0x0
goto :goto_47
.line 1386
:cond_41
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
if-ne v1, v2, :cond_47
const/high16 v0, 0x3f800000 # 1.0f
.line 1389
:cond_47
:goto_47
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v1, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->setTransition(Landroidx/constraintlayout/motion/widget/MotionScene$Transition;)V
.line 1390
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
invoke-virtual {v2, v5}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v2
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
invoke-virtual {v5, v6}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v5
invoke-virtual {p1, v1, v2, v5}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->initFrom(Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;Landroidx/constraintlayout/widget/ConstraintSet;Landroidx/constraintlayout/widget/ConstraintSet;)V
.line 1391
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->rebuildScene()V
.line 1393
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
cmpl-float p1, p1, v0
if-eqz p1, :cond_93
cmpl-float p1, v0, v4
if-nez p1, :cond_80
const/4 p1, 0x1
.line 1397
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->endTrigger(Z)V
.line 1398
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
invoke-virtual {p1, v1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object p1
invoke-virtual {p1, p0}, Landroidx/constraintlayout/widget/ConstraintSet;->applyTo(Landroidx/constraintlayout/widget/ConstraintLayout;)V
goto :goto_93
:cond_80
cmpl-float p1, v0, v3
if-nez p1, :cond_93
const/4 p1, 0x0
.line 1400
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->endTrigger(Z)V
.line 1401
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
invoke-virtual {p1, v1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object p1
invoke-virtual {p1, p0}, Landroidx/constraintlayout/widget/ConstraintSet;->applyTo(Landroidx/constraintlayout/widget/ConstraintLayout;)V
.line 1405
:cond_93
:goto_93
invoke-static {v0}, Ljava/lang/Float;->isNaN(F)Z
move-result p1
if-eqz p1, :cond_9a
goto :goto_9b
:cond_9a
move v4, v0
:goto_9b
iput v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 1407
invoke-static {v0}, Ljava/lang/Float;->isNaN(F)Z
move-result p1
if-eqz p1, :cond_c1
.line 1408
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-static {}, Landroidx/constraintlayout/motion/widget/Debug;->getLocation()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, " transitionToStart "
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const-string v0, "MotionLayout"
invoke-static {v0, p1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 1409
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->transitionToStart()V
goto :goto_c4
.line 1411
:cond_c1
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setProgress(F)V
:cond_c4
:goto_c4
return-void
.end method
.method public setTransition(II)V
.registers 6
.line 1329
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isAttachedToWindow()Z
move-result v0
if-nez v0, :cond_1c
.line 1330
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
if-nez v0, :cond_11
.line 1331
new-instance v0, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-direct {v0, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
.line 1333
:cond_11
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->setStartState(I)V
.line 1334
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {p1, p2}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->setEndState(I)V
return-void
.line 1338
:cond_1c
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v0, :cond_43
.line 1339
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 1340
iput p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
.line 1346
invoke-virtual {v0, p1, p2}, Landroidx/constraintlayout/motion/widget/MotionScene;->setTransition(II)V
.line 1347
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v2, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object p1
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v2, p2}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object p2
invoke-virtual {v0, v1, p1, p2}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->initFrom(Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;Landroidx/constraintlayout/widget/ConstraintSet;Landroidx/constraintlayout/widget/ConstraintSet;)V
.line 1348
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->rebuildScene()V
const/4 p1, 0x0
.line 1349
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 1350
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->transitionToStart()V
:cond_43
return-void
.end method
.method protected setTransition(Landroidx/constraintlayout/motion/widget/MotionScene$Transition;)V
.registers 6
.line 1417
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->setTransition(Landroidx/constraintlayout/motion/widget/MotionScene$Transition;)V
.line 1418
sget-object v0, Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;->SETUP:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionState;)V
.line 1419
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getEndId()I
move-result v1
if-ne v0, v1, :cond_1d
const/high16 v0, 0x3f800000 # 1.0f
.line 1420
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 1421
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
.line 1422
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
goto :goto_24
:cond_1d
const/4 v0, 0x0
.line 1424
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 1425
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
.line 1426
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
:goto_24
const/4 v0, 0x1
.line 1428
invoke-virtual {p1, v0}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->isTransitionFlag(I)Z
move-result p1
if-eqz p1, :cond_2e
const-wide/16 v0, -0x1
goto :goto_32
:cond_2e
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v0
:goto_32
iput-wide v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastTime:J
.line 1433
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getStartId()I
move-result p1
.line 1434
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getEndId()I
move-result v0
.line 1435
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
if-ne p1, v1, :cond_49
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
if-ne v0, v1, :cond_49
return-void
.line 1438
:cond_49
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 1439
iput v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
.line 1440
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v1, p1, v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->setTransition(II)V
.line 1446
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
invoke-virtual {v1, v2}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v1
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
invoke-virtual {v2, v3}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v2
invoke-virtual {p1, v0, v1, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->initFrom(Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;Landroidx/constraintlayout/widget/ConstraintSet;Landroidx/constraintlayout/widget/ConstraintSet;)V
.line 1447
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
invoke-virtual {p1, v0, v1}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->setMeasuredId(II)V
.line 1448
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->reEvaluateState()V
.line 1450
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->rebuildScene()V
return-void
.end method
.method public setTransitionDuration(I)V
.registers 3
.line 4703
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_c
const-string p1, "MotionLayout"
const-string v0, "MotionScene not defined"
.line 4704
invoke-static {p1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
return-void
.line 4707
:cond_c
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->setDuration(I)V
return-void
.end method
.method public setTransitionListener(Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;)V
.registers 2
.line 4271
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionListener:Landroidx/constraintlayout/motion/widget/MotionLayout$TransitionListener;
return-void
.end method
.method public setTransitionState(Landroid/os/Bundle;)V
.registers 3
.line 1675
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
if-nez v0, :cond_b
.line 1676
new-instance v0, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-direct {v0, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
.line 1678
:cond_b
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->setTransitionState(Landroid/os/Bundle;)V
.line 1679
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isAttachedToWindow()Z
move-result p1
if-eqz p1, :cond_1b
.line 1680
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->apply()V
:cond_1b
return-void
.end method
.method public toString()Ljava/lang/String;
.registers 4
.line 2887
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getContext()Landroid/content/Context;
move-result-object v0
.line 2888
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
invoke-static {v0, v2}, 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;
const-string v2, "->"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
.line 2889
invoke-static {v0, v2}, Landroidx/constraintlayout/motion/widget/Debug;->getName(Landroid/content/Context;I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, " (pos:"
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;
const-string v0, " Dpos/Dt:"
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public touchAnimateTo(IFF)V
.registers 13
.line 1910
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_5
return-void
.line 1913
:cond_5
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
cmpl-float v0, v0, p2
if-nez v0, :cond_c
return-void
:cond_c
const/4 v0, 0x1
.line 1917
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTemporalInterpolator:Z
.line 1918
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v1
iput-wide v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mAnimationStartTime:J
.line 1919
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getDuration()I
move-result v1
int-to-float v1, v1
const/high16 v2, 0x447a0000 # 1000.0f
div-float/2addr v1, v2
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
.line 1921
iput p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 1922
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
const/4 v1, 0x0
const/4 v2, 0x7
const/4 v3, 0x6
const/4 v4, 0x2
if-eqz p1, :cond_93
if-eq p1, v0, :cond_93
if-eq p1, v4, :cond_93
const/4 v5, 0x4
if-eq p1, v5, :cond_81
const/4 v5, 0x5
if-eq p1, v5, :cond_3b
if-eq p1, v3, :cond_93
if-eq p1, v2, :cond_93
goto/16 :goto_f1
.line 1961
:cond_3b
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getMaxAcceleration()F
move-result v0
invoke-static {p3, p1, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->willJump(FFF)Z
move-result p1
if-eqz p1, :cond_5c
.line 1962
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecelerateLogic:Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;
iget p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getMaxAcceleration()F
move-result v0
invoke-virtual {p1, p3, p2, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;->config(FFF)V
.line 1963
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecelerateLogic:Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
goto/16 :goto_f1
.line 1965
:cond_5c
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStopLogic:Landroidx/constraintlayout/motion/utils/StopLogic;
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
iget v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
.line 1966
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getMaxAcceleration()F
move-result v7
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getMaxVelocity()F
move-result v8
move v4, p2
move v5, p3
.line 1965
invoke-virtual/range {v2 .. v8}, Landroidx/constraintlayout/motion/utils/StopLogic;->config(FFFFFF)V
.line 1967
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLastVelocity:F
.line 1968
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 1969
iput p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 1970
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 1971
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStopLogic:Landroidx/constraintlayout/motion/utils/StopLogic;
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
goto/16 :goto_f1
.line 1956
:cond_81
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecelerateLogic:Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;
iget p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getMaxAcceleration()F
move-result v0
invoke-virtual {p1, p3, p2, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;->config(FFF)V
.line 1957
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecelerateLogic:Landroidx/constraintlayout/motion/widget/MotionLayout$DecelerateInterpolator;
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
goto :goto_f1
:cond_93
if-eq p1, v0, :cond_9f
if-ne p1, v2, :cond_98
goto :goto_9f
:cond_98
if-eq p1, v4, :cond_9c
if-ne p1, v3, :cond_a0
:cond_9c
const/high16 p2, 0x3f800000 # 1.0f
goto :goto_a0
:cond_9f
:goto_9f
const/4 p2, 0x0
.line 1936
:cond_a0
:goto_a0
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getAutoCompleteMode()I
move-result p1
if-nez p1, :cond_c0
.line 1937
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStopLogic:Landroidx/constraintlayout/motion/utils/StopLogic;
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
iget v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
.line 1938
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getMaxAcceleration()F
move-result v5
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getMaxVelocity()F
move-result v6
move v2, p2
move v3, p3
.line 1937
invoke-virtual/range {v0 .. v6}, Landroidx/constraintlayout/motion/utils/StopLogic;->config(FFFFFF)V
goto :goto_e7
.line 1940
:cond_c0
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStopLogic:Landroidx/constraintlayout/motion/utils/StopLogic;
iget v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
.line 1941
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getSpringMass()F
move-result v4
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getSpringStiffiness()F
move-result v5
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getSpringDamping()F
move-result v6
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
.line 1942
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getSpringStopThreshold()F
move-result v7
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getSpringBoundary()I
move-result v8
move v2, p2
move v3, p3
.line 1940
invoke-virtual/range {v0 .. v8}, Landroidx/constraintlayout/motion/utils/StopLogic;->springConfig(FFFFFFFI)V
.line 1945
:goto_e7
iget p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 1946
iput p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 1947
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 1948
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStopLogic:Landroidx/constraintlayout/motion/utils/StopLogic;
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
:goto_f1
const/4 p1, 0x0
.line 1977
iput-boolean p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionInstantly:Z
.line 1978
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide p1
iput-wide p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mAnimationStartTime:J
.line 1979
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->invalidate()V
return-void
.end method
.method public touchSpringTo(FF)V
.registers 14
.line 1993
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_5
return-void
.line 1996
:cond_5
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
cmpl-float v0, v0, p1
if-nez v0, :cond_c
return-void
:cond_c
const/4 v0, 0x1
.line 2000
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTemporalInterpolator:Z
.line 2001
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v1
iput-wide v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mAnimationStartTime:J
.line 2002
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getDuration()I
move-result v1
int-to-float v1, v1
const/high16 v2, 0x447a0000 # 1000.0f
div-float/2addr v1, v2
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
.line 2004
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 2005
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
.line 2007
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStopLogic:Landroidx/constraintlayout/motion/utils/StopLogic;
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
.line 2008
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getSpringMass()F
move-result v6
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getSpringStiffiness()F
move-result v7
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getSpringDamping()F
move-result v8
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
.line 2009
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getSpringStopThreshold()F
move-result v9
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v0}, Landroidx/constraintlayout/motion/widget/MotionScene;->getSpringBoundary()I
move-result v10
move v4, p1
move v5, p2
.line 2007
invoke-virtual/range {v2 .. v10}, Landroidx/constraintlayout/motion/utils/StopLogic;->springConfig(FFFFFFFI)V
.line 2011
iget p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 2012
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 2013
iput p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
.line 2014
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStopLogic:Landroidx/constraintlayout/motion/utils/StopLogic;
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
const/4 p1, 0x0
.line 2017
iput-boolean p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionInstantly:Z
.line 2018
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide p1
iput-wide p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mAnimationStartTime:J
.line 2019
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->invalidate()V
return-void
.end method
.method public transitionToEnd()V
.registers 2
const/high16 v0, 0x3f800000 # 1.0f
.line 2139
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->animateTo(F)V
const/4 v0, 0x0
.line 2140
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnComplete:Ljava/lang/Runnable;
return-void
.end method
.method public transitionToEnd(Ljava/lang/Runnable;)V
.registers 3
const/high16 v0, 0x3f800000 # 1.0f
.line 2151
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->animateTo(F)V
.line 2152
iput-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mOnComplete:Ljava/lang/Runnable;
return-void
.end method
.method public transitionToStart()V
.registers 2
const/4 v0, 0x0
.line 2130
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->animateTo(F)V
return-void
.end method
.method public transitionToState(I)V
.registers 3
.line 2162
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isAttachedToWindow()Z
move-result v0
if-nez v0, :cond_17
.line 2163
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
if-nez v0, :cond_11
.line 2164
new-instance v0, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-direct {v0, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
.line 2166
:cond_11
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {v0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->setEndState(I)V
return-void
:cond_17
const/4 v0, -0x1
.line 2169
invoke-virtual {p0, p1, v0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->transitionToState(III)V
return-void
.end method
.method public transitionToState(II)V
.registers 4
.line 2181
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->isAttachedToWindow()Z
move-result v0
if-nez v0, :cond_17
.line 2182
iget-object p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
if-nez p2, :cond_11
.line 2183
new-instance p2, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-direct {p2, p0}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;-><init>(Landroidx/constraintlayout/motion/widget/MotionLayout;)V
iput-object p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
.line 2185
:cond_11
iget-object p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mStateCache:Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;
invoke-virtual {p2, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$StateCache;->setEndState(I)V
return-void
:cond_17
const/4 v0, -0x1
.line 2188
invoke-virtual {p0, p1, v0, v0, p2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->transitionToState(IIII)V
return-void
.end method
.method public transitionToState(III)V
.registers 5
const/4 v0, -0x1
.line 2200
invoke-virtual {p0, p1, p2, p3, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->transitionToState(IIII)V
return-void
.end method
.method public transitionToState(IIII)V
.registers 15
.line 2290
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
const/4 v1, -0x1
if-eqz v0, :cond_18
iget-object v0, v0, Landroidx/constraintlayout/motion/widget/MotionScene;->mStateSet:Landroidx/constraintlayout/widget/StateSet;
if-eqz v0, :cond_18
.line 2291
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget-object v0, v0, Landroidx/constraintlayout/motion/widget/MotionScene;->mStateSet:Landroidx/constraintlayout/widget/StateSet;
iget v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
int-to-float p2, p2
int-to-float p3, p3
invoke-virtual {v0, v2, p1, p2, p3}, Landroidx/constraintlayout/widget/StateSet;->convertToConstraintSet(IIFF)I
move-result p2
if-eq p2, v1, :cond_18
move p1, p2
.line 2302
:cond_18
iget p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
if-ne p2, p1, :cond_1d
return-void
.line 2305
:cond_1d
iget p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
const/high16 v0, 0x447a0000 # 1000.0f
const/4 v2, 0x0
if-ne p3, p1, :cond_2e
.line 2306
invoke-virtual {p0, v2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->animateTo(F)V
if-lez p4, :cond_2d
int-to-float p1, p4
div-float/2addr p1, v0
.line 2308
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
:cond_2d
return-void
.line 2312
:cond_2e
iget p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
const/high16 v3, 0x3f800000 # 1.0f
if-ne p3, p1, :cond_3e
.line 2313
invoke-virtual {p0, v3}, Landroidx/constraintlayout/motion/widget/MotionLayout;->animateTo(F)V
if-lez p4, :cond_3d
int-to-float p1, p4
div-float/2addr p1, v0
.line 2315
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
:cond_3d
return-void
.line 2319
:cond_3e
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
if-eq p2, v1, :cond_54
.line 2328
invoke-virtual {p0, p2, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setTransition(II)V
.line 2330
invoke-virtual {p0, v3}, Landroidx/constraintlayout/motion/widget/MotionLayout;->animateTo(F)V
.line 2332
iput v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 2333
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->transitionToEnd()V
if-lez p4, :cond_53
int-to-float p1, p4
div-float/2addr p1, v0
.line 2335
iput p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
:cond_53
return-void
:cond_54
const/4 p2, 0x0
.line 2345
iput-boolean p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTemporalInterpolator:Z
.line 2346
iput v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionGoalPosition:F
.line 2347
iput v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
.line 2348
iput v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 2349
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v4
iput-wide v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastTime:J
.line 2350
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v4
iput-wide v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mAnimationStartTime:J
.line 2351
iput-boolean p2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionInstantly:Z
const/4 p3, 0x0
.line 2352
iput-object p3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInterpolator:Landroid/view/animation/Interpolator;
if-ne p4, v1, :cond_7a
.line 2354
iget-object v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v4}, Landroidx/constraintlayout/motion/widget/MotionScene;->getDuration()I
move-result v4
int-to-float v4, v4
div-float/2addr v4, v0
iput v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
.line 2356
:cond_7a
iput v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
.line 2357
iget-object v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
invoke-virtual {v4, v1, v5}, Landroidx/constraintlayout/motion/widget/MotionScene;->setTransition(II)V
.line 2358
new-instance v1, Landroid/util/SparseArray;
invoke-direct {v1}, Landroid/util/SparseArray;-><init>()V
if-nez p4, :cond_95
.line 2360
iget-object p4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p4}, Landroidx/constraintlayout/motion/widget/MotionScene;->getDuration()I
move-result p4
int-to-float p4, p4
div-float/2addr p4, v0
iput p4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
goto :goto_9b
:cond_95
if-lez p4, :cond_9b
int-to-float p4, p4
div-float/2addr p4, v0
.line 2362
iput p4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
.line 2365
:cond_9b
:goto_9b
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildCount()I
move-result p4
.line 2367
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v0}, Ljava/util/HashMap;->clear()V
const/4 v0, 0x0
:goto_a5
if-ge v0, p4, :cond_c5
.line 2369
invoke-virtual {p0, v0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v4
.line 2370
new-instance v5, Landroidx/constraintlayout/motion/widget/MotionController;
invoke-direct {v5, v4}, Landroidx/constraintlayout/motion/widget/MotionController;-><init>(Landroid/view/View;)V
.line 2371
iget-object v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v6, v4, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 2372
invoke-virtual {v4}, Landroid/view/View;->getId()I
move-result v5
iget-object v6, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v6, v4}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v4
invoke-virtual {v1, v5, v4}, Landroid/util/SparseArray;->put(ILjava/lang/Object;)V
add-int/lit8 v0, v0, 0x1
goto :goto_a5
:cond_c5
const/4 v0, 0x1
.line 2374
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
.line 2376
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
iget-object v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v5, p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object p1
invoke-virtual {v1, v4, p3, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->initFrom(Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;Landroidx/constraintlayout/widget/ConstraintSet;Landroidx/constraintlayout/widget/ConstraintSet;)V
.line 2377
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->rebuildScene()V
.line 2378
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->build()V
.line 2379
invoke-direct {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->computeCurrentPositions()V
.line 2380
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getWidth()I
move-result p1
.line 2381
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getHeight()I
move-result p3
.line 2384
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
if-eqz v1, :cond_13e
const/4 v1, 0x0
:goto_ed
if-ge v1, p4, :cond_106
.line 2386
iget-object v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {p0, v1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v4
check-cast v4, Landroidx/constraintlayout/motion/widget/MotionController;
if-nez v4, :cond_fe
goto :goto_103
.line 2390
:cond_fe
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v5, v4}, Landroidx/constraintlayout/motion/widget/MotionScene;->getKeyFrames(Landroidx/constraintlayout/motion/widget/MotionController;)V
:goto_103
add-int/lit8 v1, v1, 0x1
goto :goto_ed
.line 2393
:cond_106
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mDecoratorsHelpers:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_10c
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v4
if-eqz v4, :cond_11e
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v4
check-cast v4, Landroidx/constraintlayout/motion/widget/MotionHelper;
.line 2394
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {v4, p0, v5}, Landroidx/constraintlayout/motion/widget/MotionHelper;->onPreSetup(Landroidx/constraintlayout/motion/widget/MotionLayout;Ljava/util/HashMap;)V
goto :goto_10c
:cond_11e
const/4 v1, 0x0
:goto_11f
if-ge v1, p4, :cond_163
.line 2397
iget-object v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {p0, v1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v4
check-cast v4, Landroidx/constraintlayout/motion/widget/MotionController;
if-nez v4, :cond_130
goto :goto_13b
.line 2401
:cond_130
iget v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v8
move v5, p1
move v6, p3
invoke-virtual/range {v4 .. v9}, Landroidx/constraintlayout/motion/widget/MotionController;->setup(IIFJ)V
:goto_13b
add-int/lit8 v1, v1, 0x1
goto :goto_11f
:cond_13e
const/4 v1, 0x0
:goto_13f
if-ge v1, p4, :cond_163
.line 2405
iget-object v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {p0, v1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v4
check-cast v4, Landroidx/constraintlayout/motion/widget/MotionController;
if-nez v4, :cond_150
goto :goto_160
.line 2409
:cond_150
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {v5, v4}, Landroidx/constraintlayout/motion/widget/MotionScene;->getKeyFrames(Landroidx/constraintlayout/motion/widget/MotionController;)V
.line 2410
iget v7, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionDuration:F
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getNanoTime()J
move-result-wide v8
move v5, p1
move v6, p3
invoke-virtual/range {v4 .. v9}, Landroidx/constraintlayout/motion/widget/MotionController;->setup(IIFJ)V
:goto_160
add-int/lit8 v1, v1, 0x1
goto :goto_13f
.line 2414
:cond_163
iget-object p1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
invoke-virtual {p1}, Landroidx/constraintlayout/motion/widget/MotionScene;->getStaggered()F
move-result p1
cmpl-float p3, p1, v2
if-eqz p3, :cond_1c0
const p3, 0x7f7fffff # Float.MAX_VALUE
const v1, -0x800001
const/4 v4, 0x0
:goto_174
if-ge v4, p4, :cond_196
.line 2418
iget-object v5, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {p0, v4}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v6
invoke-virtual {v5, v6}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v5
check-cast v5, Landroidx/constraintlayout/motion/widget/MotionController;
.line 2419
invoke-virtual {v5}, Landroidx/constraintlayout/motion/widget/MotionController;->getFinalX()F
move-result v6
.line 2420
invoke-virtual {v5}, Landroidx/constraintlayout/motion/widget/MotionController;->getFinalY()F
move-result v5
add-float/2addr v5, v6
.line 2421
invoke-static {p3, v5}, Ljava/lang/Math;->min(FF)F
move-result p3
.line 2422
invoke-static {v1, v5}, Ljava/lang/Math;->max(FF)F
move-result v1
add-int/lit8 v4, v4, 0x1
goto :goto_174
:cond_196
:goto_196
if-ge p2, p4, :cond_1c0
.line 2426
iget-object v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mFrameArrayList:Ljava/util/HashMap;
invoke-virtual {p0, p2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getChildAt(I)Landroid/view/View;
move-result-object v5
invoke-virtual {v4, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v4
check-cast v4, Landroidx/constraintlayout/motion/widget/MotionController;
.line 2427
invoke-virtual {v4}, Landroidx/constraintlayout/motion/widget/MotionController;->getFinalX()F
move-result v5
.line 2428
invoke-virtual {v4}, Landroidx/constraintlayout/motion/widget/MotionController;->getFinalY()F
move-result v6
sub-float v7, v3, p1
div-float v7, v3, v7
.line 2429
iput v7, v4, Landroidx/constraintlayout/motion/widget/MotionController;->mStaggerScale:F
add-float/2addr v5, v6
sub-float/2addr v5, p3
mul-float v5, v5, p1
sub-float v6, v1, p3
div-float/2addr v5, v6
sub-float v5, p1, v5
.line 2430
iput v5, v4, Landroidx/constraintlayout/motion/widget/MotionController;->mStaggerOffset:F
add-int/lit8 p2, p2, 0x1
goto :goto_196
.line 2434
:cond_1c0
iput v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionPosition:F
.line 2435
iput v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mTransitionLastPosition:F
.line 2436
iput-boolean v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mInTransition:Z
.line 2438
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->invalidate()V
return-void
.end method
.method public updateState()V
.registers 6
.line 4652
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mModel:Landroidx/constraintlayout/motion/widget/MotionLayout$Model;
iget-object v1, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mLayoutWidget:Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;
iget-object v2, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mBeginState:I
invoke-virtual {v2, v3}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v2
iget-object v3, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
iget v4, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mEndState:I
invoke-virtual {v3, v4}, Landroidx/constraintlayout/motion/widget/MotionScene;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v3
invoke-virtual {v0, v1, v2, v3}, Landroidx/constraintlayout/motion/widget/MotionLayout$Model;->initFrom(Landroidx/constraintlayout/core/widgets/ConstraintWidgetContainer;Landroidx/constraintlayout/widget/ConstraintSet;Landroidx/constraintlayout/widget/ConstraintSet;)V
.line 4653
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->rebuildScene()V
return-void
.end method
.method public updateState(ILandroidx/constraintlayout/widget/ConstraintSet;)V
.registers 4
.line 4595
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v0, :cond_7
.line 4596
invoke-virtual {v0, p1, p2}, Landroidx/constraintlayout/motion/widget/MotionScene;->setConstraintSet(ILandroidx/constraintlayout/widget/ConstraintSet;)V
.line 4598
:cond_7
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->updateState()V
.line 4599
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
if-ne v0, p1, :cond_11
.line 4600
invoke-virtual {p2, p0}, Landroidx/constraintlayout/widget/ConstraintSet;->applyTo(Landroidx/constraintlayout/widget/ConstraintLayout;)V
:cond_11
return-void
.end method
.method public updateStateAnimate(ILandroidx/constraintlayout/widget/ConstraintSet;I)V
.registers 7
.line 4612
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-nez v0, :cond_5
return-void
.line 4616
:cond_5
iget v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mCurrentState:I
if-ne v0, p1, :cond_2d
.line 4617
sget v0, Landroidx/constraintlayout/widget/R$id;->view_transition:I
invoke-virtual {p0, p1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->getConstraintSet(I)Landroidx/constraintlayout/widget/ConstraintSet;
move-result-object v1
invoke-virtual {p0, v0, v1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->updateState(ILandroidx/constraintlayout/widget/ConstraintSet;)V
.line 4618
sget v0, Landroidx/constraintlayout/widget/R$id;->view_transition:I
const/4 v1, -0x1
invoke-virtual {p0, v0, v1, v1}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setState(III)V
.line 4619
invoke-virtual {p0, p1, p2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->updateState(ILandroidx/constraintlayout/widget/ConstraintSet;)V
.line 4620
new-instance p2, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
sget v2, Landroidx/constraintlayout/widget/R$id;->view_transition:I
invoke-direct {p2, v1, v0, v2, p1}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;-><init>(ILandroidx/constraintlayout/motion/widget/MotionScene;II)V
.line 4621
invoke-virtual {p2, p3}, Landroidx/constraintlayout/motion/widget/MotionScene$Transition;->setDuration(I)V
.line 4622
invoke-virtual {p0, p2}, Landroidx/constraintlayout/motion/widget/MotionLayout;->setTransition(Landroidx/constraintlayout/motion/widget/MotionScene$Transition;)V
.line 4623
invoke-virtual {p0}, Landroidx/constraintlayout/motion/widget/MotionLayout;->transitionToEnd()V
:cond_2d
return-void
.end method
.method public varargs viewTransition(I[Landroid/view/View;)V
.registers 4
.line 4800
iget-object v0, p0, Landroidx/constraintlayout/motion/widget/MotionLayout;->mScene:Landroidx/constraintlayout/motion/widget/MotionScene;
if-eqz v0, :cond_8
.line 4801
invoke-virtual {v0, p1, p2}, Landroidx/constraintlayout/motion/widget/MotionScene;->viewTransition(I[Landroid/view/View;)V
goto :goto_f
:cond_8
const-string p1, "MotionLayout"
const-string p2, " no motionScene"
.line 4803
invoke-static {p1, p2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
:goto_f
return-void
.end method