SwitchButton.smali

.class public Lcom/kyleduo/switchbutton/SwitchButton;
.super Landroid/widget/CompoundButton;
.source "SwitchButton.java"


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/kyleduo/switchbutton/SwitchButton$SavedState;
    }
.end annotation


# static fields
.field private static CHECKED_PRESSED_STATE:[I = null

.field public static final DEFAULT_ANIMATION_DURATION:I = 0xfa

.field public static final DEFAULT_THUMB_MARGIN_DP:I = 0x2

.field public static final DEFAULT_THUMB_RANGE_RATIO:F = 1.8f

.field public static final DEFAULT_THUMB_SIZE_DP:I = 0x14

.field public static final DEFAULT_TINT_COLOR:I = 0x327fc2

.field private static UNCHECKED_PRESSED_STATE:[I


# instance fields
.field private mAnimationDuration:J

.field private mBackColor:Landroid/content/res/ColorStateList;

.field private mBackDrawable:Landroid/graphics/drawable/Drawable;

.field private mBackHeight:I

.field private mBackRadius:F

.field private mBackRectF:Landroid/graphics/RectF;

.field private mBackWidth:I

.field private mCatch:Z

.field private mChildOnCheckedChangeListener:Landroid/widget/CompoundButton$OnCheckedChangeListener;

.field private mClickTimeout:I

.field private mCurrBackColor:I

.field private mCurrThumbColor:I

.field private mCurrentBackDrawable:Landroid/graphics/drawable/Drawable;

.field private mDrawDebugRect:Z

.field private mFadeBack:Z

.field private mIsBackUseDrawable:Z

.field private mIsThumbUseDrawable:Z

.field private mLastX:F

.field private mNextBackColor:I

.field private mNextBackDrawable:Landroid/graphics/drawable/Drawable;

.field private mOffLayout:Landroid/text/Layout;

.field private mOffTextColor:I

.field private mOnLayout:Landroid/text/Layout;

.field private mOnTextColor:I

.field private mPaint:Landroid/graphics/Paint;

.field private mPresentThumbRectF:Landroid/graphics/RectF;

.field private mProgress:F

.field private mProgressAnimator:Landroid/animation/ObjectAnimator;

.field private mReady:Z

.field private mRectPaint:Landroid/graphics/Paint;

.field private mRestoring:Z

.field private mSafeRectF:Landroid/graphics/RectF;

.field private mStartX:F

.field private mStartY:F

.field private mTextAdjust:I

.field private mTextExtra:I

.field private mTextHeight:F

.field private mTextOff:Ljava/lang/CharSequence;

.field private mTextOffRectF:Landroid/graphics/RectF;

.field private mTextOn:Ljava/lang/CharSequence;

.field private mTextOnRectF:Landroid/graphics/RectF;

.field private mTextPaint:Landroid/text/TextPaint;

.field private mTextThumbInset:I

.field private mTextWidth:F

.field private mThumbColor:Landroid/content/res/ColorStateList;

.field private mThumbDrawable:Landroid/graphics/drawable/Drawable;

.field private mThumbHeight:I

.field private mThumbMargin:Landroid/graphics/RectF;

.field private mThumbRadius:F

.field private mThumbRangeRatio:F

.field private mThumbRectF:Landroid/graphics/RectF;

.field private mThumbWidth:I

.field private mTintColor:I

.field private mTouchSlop:I


# direct methods
.method static constructor <clinit>()V
    .registers 2

    .prologue
    const/4 v1, 0x3

    .line 48
    new-array v0, v1, [I

    fill-array-data v0, :array_10

    sput-object v0, Lcom/kyleduo/switchbutton/SwitchButton;->CHECKED_PRESSED_STATE:[I

    .line 49
    new-array v0, v1, [I

    fill-array-data v0, :array_1a

    sput-object v0, Lcom/kyleduo/switchbutton/SwitchButton;->UNCHECKED_PRESSED_STATE:[I

    return-void

    .line 48
    :array_10
    .array-data 4
        0x10100a0
        0x101009e
        0x10100a7
    .end array-data

    .line 49
    :array_1a
    .array-data 4
        -0x10100a0
        0x101009e
        0x10100a7
    .end array-data
.end method

.method public constructor <init>(Landroid/content/Context;)V
    .registers 3

    .prologue
    const/4 v0, 0x0

    .line 110
    invoke-direct {p0, p1}, Landroid/widget/CompoundButton;-><init>(Landroid/content/Context;)V

    .line 71
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mDrawDebugRect:Z

    .line 93
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRestoring:Z

    .line 94
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    .line 95
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCatch:Z

    .line 111
    const/4 v0, 0x0

    invoke-direct {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->init(Landroid/util/AttributeSet;)V

    .line 112
    return-void
.end method

.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
    .registers 4

    .prologue
    const/4 v0, 0x0

    .line 105
    invoke-direct {p0, p1, p2}, Landroid/widget/CompoundButton;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V

    .line 71
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mDrawDebugRect:Z

    .line 93
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRestoring:Z

    .line 94
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    .line 95
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCatch:Z

    .line 106
    invoke-direct {p0, p2}, Lcom/kyleduo/switchbutton/SwitchButton;->init(Landroid/util/AttributeSet;)V

    .line 107
    return-void
.end method

.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
    .registers 5

    .prologue
    const/4 v0, 0x0

    .line 100
    invoke-direct {p0, p1, p2, p3}, Landroid/widget/CompoundButton;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V

    .line 71
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mDrawDebugRect:Z

    .line 93
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRestoring:Z

    .line 94
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    .line 95
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCatch:Z

    .line 101
    invoke-direct {p0, p2}, Lcom/kyleduo/switchbutton/SwitchButton;->init(Landroid/util/AttributeSet;)V

    .line 102
    return-void
.end method

.method private catchView()V
    .registers 3

    .prologue
    const/4 v1, 0x1

    .line 785
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getParent()Landroid/view/ViewParent;

    move-result-object v0

    .line 786
    if-eqz v0, :cond_a

    .line 787
    invoke-interface {v0, v1}, Landroid/view/ViewParent;->requestDisallowInterceptTouchEvent(Z)V

    .line 789
    :cond_a
    iput-boolean v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCatch:Z

    .line 790
    return-void
.end method

.method private ceil(D)I
    .registers 6

    .prologue
    .line 473
    invoke-static {p1, p2}, Ljava/lang/Math;->ceil(D)D

    move-result-wide v0

    double-to-int v0, v0

    return v0
.end method

.method private getProgress()F
    .registers 2

    .prologue
    .line 744
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgress:F

    return v0
.end method

.method private getStatusBasedOnPos()Z
    .registers 3

    .prologue
    .line 740
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getProgress()F

    move-result v0

    const/high16 v1, 0x3f000000    # 0.5f

    cmpl-float v0, v0, v1

    if-lez v0, :cond_c

    const/4 v0, 0x1

    :goto_b
    return v0

    :cond_c
    const/4 v0, 0x0

    goto :goto_b
.end method

.method private init(Landroid/util/AttributeSet;)V
    .registers 30

    .prologue
    .line 115
    invoke-virtual/range {p0 .. p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getContext()Landroid/content/Context;

    move-result-object v4

    invoke-static {v4}, Landroid/view/ViewConfiguration;->get(Landroid/content/Context;)Landroid/view/ViewConfiguration;

    move-result-object v4

    invoke-virtual {v4}, Landroid/view/ViewConfiguration;->getScaledTouchSlop()I

    move-result v4

    move-object/from16 v0, p0

    iput v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTouchSlop:I

    .line 116
    invoke-static {}, Landroid/view/ViewConfiguration;->getPressedStateDuration()I

    move-result v4

    invoke-static {}, Landroid/view/ViewConfiguration;->getTapTimeout()I

    move-result v5

    add-int/2addr v4, v5

    move-object/from16 v0, p0

    iput v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mClickTimeout:I

    .line 118
    new-instance v4, Landroid/graphics/Paint;

    const/4 v5, 0x1

    invoke-direct {v4, v5}, Landroid/graphics/Paint;-><init>(I)V

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mPaint:Landroid/graphics/Paint;

    .line 119
    new-instance v4, Landroid/graphics/Paint;

    const/4 v5, 0x1

    invoke-direct {v4, v5}, Landroid/graphics/Paint;-><init>(I)V

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mRectPaint:Landroid/graphics/Paint;

    .line 120
    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mRectPaint:Landroid/graphics/Paint;

    sget-object v5, Landroid/graphics/Paint$Style;->STROKE:Landroid/graphics/Paint$Style;

    invoke-virtual {v4, v5}, Landroid/graphics/Paint;->setStyle(Landroid/graphics/Paint$Style;)V

    .line 121
    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mRectPaint:Landroid/graphics/Paint;

    invoke-virtual/range {p0 .. p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getResources()Landroid/content/res/Resources;

    move-result-object v5

    invoke-virtual {v5}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;

    move-result-object v5

    iget v5, v5, Landroid/util/DisplayMetrics;->density:F

    invoke-virtual {v4, v5}, Landroid/graphics/Paint;->setStrokeWidth(F)V

    .line 123
    invoke-virtual/range {p0 .. p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaint()Landroid/text/TextPaint;

    move-result-object v4

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextPaint:Landroid/text/TextPaint;

    .line 125
    new-instance v4, Landroid/graphics/RectF;

    invoke-direct {v4}, Landroid/graphics/RectF;-><init>()V

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRectF:Landroid/graphics/RectF;

    .line 126
    new-instance v4, Landroid/graphics/RectF;

    invoke-direct {v4}, Landroid/graphics/RectF;-><init>()V

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    .line 127
    new-instance v4, Landroid/graphics/RectF;

    invoke-direct {v4}, Landroid/graphics/RectF;-><init>()V

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mSafeRectF:Landroid/graphics/RectF;

    .line 128
    new-instance v4, Landroid/graphics/RectF;

    invoke-direct {v4}, Landroid/graphics/RectF;-><init>()V

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    .line 129
    new-instance v4, Landroid/graphics/RectF;

    invoke-direct {v4}, Landroid/graphics/RectF;-><init>()V

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOnRectF:Landroid/graphics/RectF;

    .line 130
    new-instance v4, Landroid/graphics/RectF;

    invoke-direct {v4}, Landroid/graphics/RectF;-><init>()V

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOffRectF:Landroid/graphics/RectF;

    .line 132
    const-string/jumbo v4, "progress"

    const/4 v5, 0x2

    new-array v5, v5, [F

    fill-array-data v5, :array_392

    move-object/from16 v0, p0

    invoke-static {v0, v4, v5}, Landroid/animation/ObjectAnimator;->ofFloat(Ljava/lang/Object;Ljava/lang/String;[F)Landroid/animation/ObjectAnimator;

    move-result-object v4

    const-wide/16 v6, 0xfa

    invoke-virtual {v4, v6, v7}, Landroid/animation/ObjectAnimator;->setDuration(J)Landroid/animation/ObjectAnimator;

    move-result-object v4

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    .line 133
    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    new-instance v5, Landroid/view/animation/AccelerateDecelerateInterpolator;

    invoke-direct {v5}, Landroid/view/animation/AccelerateDecelerateInterpolator;-><init>()V

    invoke-virtual {v4, v5}, Landroid/animation/ObjectAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)V

    .line 135
    new-instance v4, Landroid/graphics/RectF;

    invoke-direct {v4}, Landroid/graphics/RectF;-><init>()V

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mPresentThumbRectF:Landroid/graphics/RectF;

    .line 137
    invoke-virtual/range {p0 .. p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getResources()Landroid/content/res/Resources;

    move-result-object v4

    .line 138
    invoke-virtual {v4}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;

    move-result-object v4

    iget v4, v4, Landroid/util/DisplayMetrics;->density:F

    .line 140
    const/16 v24, 0x0

    .line 141
    const/16 v23, 0x0

    .line 142
    const/high16 v5, 0x40000000    # 2.0f

    mul-float v26, v4, v5

    .line 143
    const/16 v22, 0x0

    .line 144
    const/16 v21, 0x0

    .line 145
    const/16 v20, 0x0

    .line 146
    const/16 v19, 0x0

    .line 147
    const/16 v18, 0x0

    .line 148
    const/16 v17, 0x0

    .line 149
    const/high16 v16, -0x40800000    # -1.0f

    .line 150
    const/high16 v15, -0x40800000    # -1.0f

    .line 151
    const/4 v14, 0x0

    .line 152
    const/4 v13, 0x0

    .line 153
    const v12, 0x3fe66666    # 1.8f

    .line 154
    const/16 v11, 0xfa

    .line 155
    const/4 v10, 0x1

    .line 156
    const/4 v9, 0x0

    .line 157
    const/4 v8, 0x0

    .line 158
    const/4 v7, 0x0

    .line 159
    const/4 v6, 0x0

    .line 160
    const/4 v5, 0x0

    .line 161
    const/4 v4, 0x0

    .line 163
    if-nez p1, :cond_326

    const/16 v25, 0x0

    .line 164
    :goto_eb
    if-eqz v25, :cond_370

    .line 165
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswThumbDrawable:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v4}, Landroid/content/res/TypedArray;->getDrawable(I)Landroid/graphics/drawable/Drawable;

    move-result-object v24

    .line 166
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswThumbColor:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v4}, Landroid/content/res/TypedArray;->getColorStateList(I)Landroid/content/res/ColorStateList;

    move-result-object v23

    .line 167
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswThumbMargin:I

    move-object/from16 v0, v25

    move/from16 v1, v26

    invoke-virtual {v0, v4, v1}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v4

    .line 168
    sget v5, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswThumbMarginLeft:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v5, v4}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v22

    .line 169
    sget v5, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswThumbMarginRight:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v5, v4}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v21

    .line 170
    sget v5, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswThumbMarginTop:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v5, v4}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v20

    .line 171
    sget v5, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswThumbMarginBottom:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v5, v4}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v19

    .line 172
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswThumbWidth:I

    move-object/from16 v0, v25

    move/from16 v1, v18

    invoke-virtual {v0, v4, v1}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v18

    .line 173
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswThumbHeight:I

    move-object/from16 v0, v25

    move/from16 v1, v17

    invoke-virtual {v0, v4, v1}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v17

    .line 174
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswThumbRadius:I

    move-object/from16 v0, v25

    move/from16 v1, v16

    invoke-virtual {v0, v4, v1}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v16

    .line 175
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswBackRadius:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v4, v15}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v15

    .line 176
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswBackDrawable:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v4}, Landroid/content/res/TypedArray;->getDrawable(I)Landroid/graphics/drawable/Drawable;

    move-result-object v14

    .line 177
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswBackColor:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v4}, Landroid/content/res/TypedArray;->getColorStateList(I)Landroid/content/res/ColorStateList;

    move-result-object v13

    .line 178
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswThumbRangeRatio:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v4, v12}, Landroid/content/res/TypedArray;->getFloat(IF)F

    move-result v12

    .line 179
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswAnimationDuration:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v4, v11}, Landroid/content/res/TypedArray;->getInteger(II)I

    move-result v11

    .line 180
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswFadeBack:I

    const/4 v5, 0x1

    move-object/from16 v0, v25

    invoke-virtual {v0, v4, v5}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z

    move-result v10

    .line 181
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswTintColor:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v4, v9}, Landroid/content/res/TypedArray;->getColor(II)I

    move-result v9

    .line 182
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswTextOn:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v4}, Landroid/content/res/TypedArray;->getString(I)Ljava/lang/String;

    move-result-object v8

    .line 183
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswTextOff:I

    move-object/from16 v0, v25

    invoke-virtual {v0, v4}, Landroid/content/res/TypedArray;->getString(I)Ljava/lang/String;

    move-result-object v7

    .line 184
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswTextThumbInset:I

    const/4 v5, 0x0

    move-object/from16 v0, v25

    invoke-virtual {v0, v4, v5}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I

    move-result v6

    .line 185
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswTextExtra:I

    const/4 v5, 0x0

    move-object/from16 v0, v25

    invoke-virtual {v0, v4, v5}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I

    move-result v5

    .line 186
    sget v4, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton_kswTextAdjust:I

    const/16 v26, 0x0

    move-object/from16 v0, v25

    move/from16 v1, v26

    invoke-virtual {v0, v4, v1}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I

    move-result v4

    .line 187
    invoke-virtual/range {v25 .. v25}, Landroid/content/res/TypedArray;->recycle()V

    move-object/from16 v25, v24

    move-object/from16 v24, v23

    move/from16 v23, v22

    move/from16 v22, v21

    move/from16 v21, v20

    move/from16 v20, v19

    move/from16 v19, v18

    move/from16 v18, v17

    move/from16 v17, v16

    move/from16 v16, v15

    move-object v15, v14

    move-object v14, v13

    move v13, v11

    move v11, v9

    move-object v9, v7

    move v7, v5

    move v5, v12

    move v12, v10

    move-object v10, v8

    move v8, v6

    move v6, v4

    .line 191
    :goto_1ce
    if-nez p1, :cond_338

    const/4 v4, 0x0

    .line 192
    :goto_1d1
    if-eqz v4, :cond_351

    .line 193
    const/16 v26, 0x0

    const/16 v27, 0x1

    move/from16 v0, v26

    move/from16 v1, v27

    invoke-virtual {v4, v0, v1}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z

    move-result v26

    .line 196
    const/16 v27, 0x1

    move/from16 v0, v27

    move/from16 v1, v26

    invoke-virtual {v4, v0, v1}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z

    move-result v27

    .line 197
    move-object/from16 v0, p0

    move/from16 v1, v26

    invoke-virtual {v0, v1}, Lcom/kyleduo/switchbutton/SwitchButton;->setFocusable(Z)V

    .line 198
    move-object/from16 v0, p0

    move/from16 v1, v27

    invoke-virtual {v0, v1}, Lcom/kyleduo/switchbutton/SwitchButton;->setClickable(Z)V

    .line 199
    invoke-virtual {v4}, Landroid/content/res/TypedArray;->recycle()V

    .line 206
    :goto_1fa
    move-object/from16 v0, p0

    iput-object v10, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOn:Ljava/lang/CharSequence;

    .line 207
    move-object/from16 v0, p0

    iput-object v9, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOff:Ljava/lang/CharSequence;

    .line 208
    move-object/from16 v0, p0

    iput v8, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextThumbInset:I

    .line 209
    move-object/from16 v0, p0

    iput v7, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextExtra:I

    .line 210
    move-object/from16 v0, p0

    iput v6, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextAdjust:I

    .line 213
    move-object/from16 v0, v25

    move-object/from16 v1, p0

    iput-object v0, v1, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbDrawable:Landroid/graphics/drawable/Drawable;

    .line 214
    move-object/from16 v0, v24

    move-object/from16 v1, p0

    iput-object v0, v1, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbColor:Landroid/content/res/ColorStateList;

    .line 215
    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbDrawable:Landroid/graphics/drawable/Drawable;

    if-eqz v4, :cond_35f

    const/4 v4, 0x1

    :goto_221
    move-object/from16 v0, p0

    iput-boolean v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsThumbUseDrawable:Z

    .line 216
    move-object/from16 v0, p0

    iput v11, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTintColor:I

    .line 217
    move-object/from16 v0, p0

    iget v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTintColor:I

    if-nez v4, :cond_24b

    .line 218
    new-instance v4, Landroid/util/TypedValue;

    invoke-direct {v4}, Landroid/util/TypedValue;-><init>()V

    .line 219
    invoke-virtual/range {p0 .. p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getContext()Landroid/content/Context;

    move-result-object v6

    invoke-virtual {v6}, Landroid/content/Context;->getTheme()Landroid/content/res/Resources$Theme;

    move-result-object v6

    sget v7, Lcom/kyleduo/switchbutton/R$attr;->colorAccent:I

    const/4 v8, 0x1

    invoke-virtual {v6, v7, v4, v8}, Landroid/content/res/Resources$Theme;->resolveAttribute(ILandroid/util/TypedValue;Z)Z

    move-result v6

    .line 220
    if-eqz v6, :cond_362

    .line 221
    iget v4, v4, Landroid/util/TypedValue;->data:I

    move-object/from16 v0, p0

    iput v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTintColor:I

    .line 226
    :cond_24b
    :goto_24b
    move-object/from16 v0, p0

    iget-boolean v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsThumbUseDrawable:Z

    if-nez v4, :cond_26f

    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbColor:Landroid/content/res/ColorStateList;

    if-nez v4, :cond_26f

    .line 227
    move-object/from16 v0, p0

    iget v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTintColor:I

    invoke-static {v4}, Lcom/kyleduo/switchbutton/a;->a(I)Landroid/content/res/ColorStateList;

    move-result-object v4

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbColor:Landroid/content/res/ColorStateList;

    .line 228
    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbColor:Landroid/content/res/ColorStateList;

    invoke-virtual {v4}, Landroid/content/res/ColorStateList;->getDefaultColor()I

    move-result v4

    move-object/from16 v0, p0

    iput v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrThumbColor:I

    .line 232
    :cond_26f
    move/from16 v0, v19

    float-to-double v6, v0

    move-object/from16 v0, p0

    invoke-direct {v0, v6, v7}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v4

    move-object/from16 v0, p0

    iput v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    .line 233
    move/from16 v0, v18

    float-to-double v6, v0

    move-object/from16 v0, p0

    invoke-direct {v0, v6, v7}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v4

    move-object/from16 v0, p0

    iput v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    .line 236
    move-object/from16 v0, p0

    iput-object v15, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    .line 237
    move-object/from16 v0, p0

    iput-object v14, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackColor:Landroid/content/res/ColorStateList;

    .line 238
    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    if-eqz v4, :cond_36b

    const/4 v4, 0x1

    :goto_298
    move-object/from16 v0, p0

    iput-boolean v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsBackUseDrawable:Z

    .line 239
    move-object/from16 v0, p0

    iget-boolean v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsBackUseDrawable:Z

    if-nez v4, :cond_2d2

    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackColor:Landroid/content/res/ColorStateList;

    if-nez v4, :cond_2d2

    .line 240
    move-object/from16 v0, p0

    iget v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTintColor:I

    invoke-static {v4}, Lcom/kyleduo/switchbutton/a;->b(I)Landroid/content/res/ColorStateList;

    move-result-object v4

    move-object/from16 v0, p0

    iput-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackColor:Landroid/content/res/ColorStateList;

    .line 241
    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackColor:Landroid/content/res/ColorStateList;

    invoke-virtual {v4}, Landroid/content/res/ColorStateList;->getDefaultColor()I

    move-result v4

    move-object/from16 v0, p0

    iput v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrBackColor:I

    .line 242
    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackColor:Landroid/content/res/ColorStateList;

    sget-object v6, Lcom/kyleduo/switchbutton/SwitchButton;->CHECKED_PRESSED_STATE:[I

    move-object/from16 v0, p0

    iget v7, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrBackColor:I

    invoke-virtual {v4, v6, v7}, Landroid/content/res/ColorStateList;->getColorForState([II)I

    move-result v4

    move-object/from16 v0, p0

    iput v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mNextBackColor:I

    .line 246
    :cond_2d2
    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    move/from16 v0, v23

    move/from16 v1, v21

    move/from16 v2, v22

    move/from16 v3, v20

    invoke-virtual {v4, v0, v1, v2, v3}, Landroid/graphics/RectF;->set(FFFF)V

    .line 249
    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    invoke-virtual {v4}, Landroid/graphics/RectF;->width()F

    move-result v4

    const/4 v6, 0x0

    cmpl-float v4, v4, v6

    if-ltz v4, :cond_36e

    const/high16 v4, 0x3f800000    # 1.0f

    invoke-static {v5, v4}, Ljava/lang/Math;->max(FF)F

    move-result v4

    :goto_2f4
    move-object/from16 v0, p0

    iput v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRangeRatio:F

    .line 251
    move/from16 v0, v17

    move-object/from16 v1, p0

    iput v0, v1, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRadius:F

    .line 252
    move/from16 v0, v16

    move-object/from16 v1, p0

    iput v0, v1, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    .line 253
    int-to-long v4, v13

    move-object/from16 v0, p0

    iput-wide v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mAnimationDuration:J

    .line 254
    move-object/from16 v0, p0

    iput-boolean v12, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mFadeBack:Z

    .line 256
    move-object/from16 v0, p0

    iget-object v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    move-object/from16 v0, p0

    iget-wide v6, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mAnimationDuration:J

    invoke-virtual {v4, v6, v7}, Landroid/animation/ObjectAnimator;->setDuration(J)Landroid/animation/ObjectAnimator;

    .line 259
    invoke-virtual/range {p0 .. p0}, Lcom/kyleduo/switchbutton/SwitchButton;->isChecked()Z

    move-result v4

    if-eqz v4, :cond_325

    .line 260
    const/high16 v4, 0x3f800000    # 1.0f

    move-object/from16 v0, p0

    invoke-direct {v0, v4}, Lcom/kyleduo/switchbutton/SwitchButton;->setProgress(F)V

    .line 262
    :cond_325
    return-void

    .line 163
    :cond_326
    invoke-virtual/range {p0 .. p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getContext()Landroid/content/Context;

    move-result-object v25

    sget-object v27, Lcom/kyleduo/switchbutton/R$styleable;->SwitchButton:[I

    move-object/from16 v0, v25

    move-object/from16 v1, p1

    move-object/from16 v2, v27

    invoke-virtual {v0, v1, v2}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;

    move-result-object v25

    goto/16 :goto_eb

    .line 191
    :cond_338
    invoke-virtual/range {p0 .. p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getContext()Landroid/content/Context;

    move-result-object v4

    const/16 v26, 0x2

    move/from16 v0, v26

    new-array v0, v0, [I

    move-object/from16 v26, v0

    fill-array-data v26, :array_39a

    move-object/from16 v0, p1

    move-object/from16 v1, v26

    invoke-virtual {v4, v0, v1}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;

    move-result-object v4

    goto/16 :goto_1d1

    .line 201
    :cond_351
    const/4 v4, 0x1

    move-object/from16 v0, p0

    invoke-virtual {v0, v4}, Lcom/kyleduo/switchbutton/SwitchButton;->setFocusable(Z)V

    .line 202
    const/4 v4, 0x1

    move-object/from16 v0, p0

    invoke-virtual {v0, v4}, Lcom/kyleduo/switchbutton/SwitchButton;->setClickable(Z)V

    goto/16 :goto_1fa

    .line 215
    :cond_35f
    const/4 v4, 0x0

    goto/16 :goto_221

    .line 223
    :cond_362
    const v4, 0x327fc2

    move-object/from16 v0, p0

    iput v4, v0, Lcom/kyleduo/switchbutton/SwitchButton;->mTintColor:I

    goto/16 :goto_24b

    .line 238
    :cond_36b
    const/4 v4, 0x0

    goto/16 :goto_298

    :cond_36e
    move v4, v5

    .line 249
    goto :goto_2f4

    :cond_370
    move-object/from16 v25, v24

    move-object/from16 v24, v23

    move/from16 v23, v22

    move/from16 v22, v21

    move/from16 v21, v20

    move/from16 v20, v19

    move/from16 v19, v18

    move/from16 v18, v17

    move/from16 v17, v16

    move/from16 v16, v15

    move-object v15, v14

    move-object v14, v13

    move v13, v11

    move v11, v9

    move-object v9, v7

    move v7, v5

    move v5, v12

    move v12, v10

    move-object v10, v8

    move v8, v6

    move v6, v4

    goto/16 :goto_1ce

    .line 132
    nop

    :array_392
    .array-data 4
        0x0
        0x0
    .end array-data

    .line 191
    :array_39a
    .array-data 4
        0x10100da
        0x10100e5
    .end array-data
.end method

.method private makeLayout(Ljava/lang/CharSequence;)Landroid/text/Layout;
    .registers 10

    .prologue
    .line 266
    new-instance v0, Landroid/text/StaticLayout;

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextPaint:Landroid/text/TextPaint;

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextPaint:Landroid/text/TextPaint;

    invoke-static {p1, v1}, Landroid/text/Layout;->getDesiredWidth(Ljava/lang/CharSequence;Landroid/text/TextPaint;)F

    move-result v1

    float-to-double v4, v1

    invoke-static {v4, v5}, Ljava/lang/Math;->ceil(D)D

    move-result-wide v4

    double-to-int v3, v4

    sget-object v4, Landroid/text/Layout$Alignment;->ALIGN_CENTER:Landroid/text/Layout$Alignment;

    const/high16 v5, 0x3f800000    # 1.0f

    const/4 v6, 0x0

    const/4 v7, 0x0

    move-object v1, p1

    invoke-direct/range {v0 .. v7}, Landroid/text/StaticLayout;-><init>(Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;FFZ)V

    return-object v0
.end method

.method private measureHeight(I)I
    .registers 8

    .prologue
    const/4 v5, 0x0

    const/4 v4, 0x0

    .line 404
    invoke-static {p1}, Landroid/view/View$MeasureSpec;->getSize(I)I

    move-result v0

    .line 405
    invoke-static {p1}, Landroid/view/View$MeasureSpec;->getMode(I)I

    move-result v1

    .line 408
    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    if-nez v2, :cond_1a

    iget-boolean v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsThumbUseDrawable:Z

    if-eqz v2, :cond_1a

    .line 409
    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbDrawable:Landroid/graphics/drawable/Drawable;

    invoke-virtual {v2}, Landroid/graphics/drawable/Drawable;->getIntrinsicHeight()I

    move-result v2

    iput v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    .line 413
    :cond_1a
    const/high16 v2, 0x40000000    # 2.0f

    if-ne v1, v2, :cond_bb

    .line 414
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    if-eqz v1, :cond_6c

    .line 418
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    int-to-float v1, v1

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->top:F

    add-float/2addr v1, v2

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->bottom:F

    add-float/2addr v1, v2

    float-to-double v2, v1

    invoke-direct {p0, v2, v3}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v1

    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    .line 419
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    int-to-float v1, v1

    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextHeight:F

    invoke-static {v1, v2}, Ljava/lang/Math;->max(FF)F

    move-result v1

    float-to-double v2, v1

    invoke-direct {p0, v2, v3}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v1

    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    .line 420
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingTop()I

    move-result v2

    add-int/2addr v1, v2

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingBottom()I

    move-result v2

    add-int/2addr v1, v2

    int-to-float v1, v1

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->top:F

    invoke-static {v5, v2}, Ljava/lang/Math;->min(FF)F

    move-result v2

    sub-float/2addr v1, v2

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->bottom:F

    invoke-static {v5, v2}, Ljava/lang/Math;->min(FF)F

    move-result v2

    sub-float/2addr v1, v2

    int-to-float v2, v0

    cmpl-float v1, v1, v2

    if-lez v1, :cond_6c

    .line 422
    iput v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    .line 426
    :cond_6c
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    if-nez v1, :cond_b2

    .line 427
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingTop()I

    move-result v1

    sub-int v1, v0, v1

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingBottom()I

    move-result v2

    sub-int/2addr v1, v2

    int-to-float v1, v1

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->top:F

    invoke-static {v5, v2}, Ljava/lang/Math;->min(FF)F

    move-result v2

    add-float/2addr v1, v2

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->bottom:F

    invoke-static {v5, v2}, Ljava/lang/Math;->min(FF)F

    move-result v2

    add-float/2addr v1, v2

    float-to-double v2, v1

    invoke-direct {p0, v2, v3}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v1

    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    .line 428
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    if-gez v1, :cond_9e

    .line 429
    iput v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    .line 430
    iput v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    .line 461
    :cond_9d
    :goto_9d
    return v0

    .line 433
    :cond_9e
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    int-to-float v1, v1

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->top:F

    sub-float/2addr v1, v2

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->bottom:F

    sub-float/2addr v1, v2

    float-to-double v2, v1

    invoke-direct {p0, v2, v3}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v1

    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    .line 435
    :cond_b2
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    if-gez v1, :cond_9d

    .line 436
    iput v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    .line 437
    iput v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    goto :goto_9d

    .line 441
    :cond_bb
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    if-nez v1, :cond_d3

    .line 442
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getResources()Landroid/content/res/Resources;

    move-result-object v1

    invoke-virtual {v1}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;

    move-result-object v1

    iget v1, v1, Landroid/util/DisplayMetrics;->density:F

    const/high16 v2, 0x41a00000    # 20.0f

    mul-float/2addr v1, v2

    float-to-double v2, v1

    invoke-direct {p0, v2, v3}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v1

    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    .line 444
    :cond_d3
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    int-to-float v1, v1

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->top:F

    add-float/2addr v1, v2

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->bottom:F

    add-float/2addr v1, v2

    float-to-double v2, v1

    invoke-direct {p0, v2, v3}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v1

    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    .line 445
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    if-gez v1, :cond_f0

    .line 446
    iput v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    .line 447
    iput v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    goto :goto_9d

    .line 450
    :cond_f0
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextHeight:F

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    int-to-float v1, v1

    sub-float/2addr v0, v1

    float-to-double v0, v0

    invoke-direct {p0, v0, v1}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v0

    .line 451
    if-lez v0, :cond_107

    .line 452
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    add-int/2addr v1, v0

    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    .line 453
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    add-int/2addr v0, v1

    iput v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    .line 455
    :cond_107
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I

    move-result v0

    .line 457
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingTop()I

    move-result v1

    add-int/2addr v1, v0

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingBottom()I

    move-result v2

    add-int/2addr v1, v2

    invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I

    move-result v0

    .line 458
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getSuggestedMinimumHeight()I

    move-result v1

    invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I

    move-result v0

    goto/16 :goto_9d
.end method

.method private measureWidth(I)I
    .registers 12

    .prologue
    const v6, 0x3fe66666    # 1.8f

    const/4 v9, 0x0

    const/4 v8, 0x0

    .line 313
    invoke-static {p1}, Landroid/view/View$MeasureSpec;->getSize(I)I

    move-result v0

    .line 314
    invoke-static {p1}, Landroid/view/View$MeasureSpec;->getMode(I)I

    move-result v1

    .line 317
    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    if-nez v2, :cond_1d

    iget-boolean v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsThumbUseDrawable:Z

    if-eqz v2, :cond_1d

    .line 318
    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbDrawable:Landroid/graphics/drawable/Drawable;

    invoke-virtual {v2}, Landroid/graphics/drawable/Drawable;->getIntrinsicWidth()I

    move-result v2

    iput v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    .line 322
    :cond_1d
    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextWidth:F

    float-to-double v2, v2

    invoke-direct {p0, v2, v3}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v2

    .line 327
    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRangeRatio:F

    cmpl-float v3, v3, v9

    if-nez v3, :cond_2c

    .line 328
    iput v6, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRangeRatio:F

    .line 331
    :cond_2c
    const/high16 v3, 0x40000000    # 2.0f

    if-ne v1, v3, :cond_121

    .line 332
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingLeft()I

    move-result v1

    sub-int v1, v0, v1

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingRight()I

    move-result v3

    sub-int/2addr v1, v3

    .line 334
    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    if-eqz v3, :cond_a2

    .line 335
    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    int-to-float v3, v3

    iget v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRangeRatio:F

    mul-float/2addr v3, v4

    float-to-double v4, v3

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v3

    .line 336
    iget v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextExtra:I

    add-int/2addr v4, v2

    iget v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    sub-int v5, v3, v5

    iget-object v6, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v6, v6, Landroid/graphics/RectF;->left:F

    iget-object v7, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v7, v7, Landroid/graphics/RectF;->right:F

    invoke-static {v6, v7}, Ljava/lang/Math;->max(FF)F

    move-result v6

    float-to-double v6, v6

    invoke-direct {p0, v6, v7}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v6

    add-int/2addr v5, v6

    sub-int/2addr v4, v5

    .line 337
    int-to-float v5, v3

    iget-object v6, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v6, v6, Landroid/graphics/RectF;->left:F

    add-float/2addr v5, v6

    iget-object v6, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v6, v6, Landroid/graphics/RectF;->right:F

    add-float/2addr v5, v6

    invoke-static {v4, v8}, Ljava/lang/Math;->max(II)I

    move-result v6

    int-to-float v6, v6

    add-float/2addr v5, v6

    float-to-double v6, v5

    invoke-direct {p0, v6, v7}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v5

    iput v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    .line 338
    iget v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    if-gez v5, :cond_82

    .line 339
    iput v8, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    .line 341
    :cond_82
    int-to-float v3, v3

    iget-object v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v5, v5, Landroid/graphics/RectF;->left:F

    invoke-static {v5, v9}, Ljava/lang/Math;->max(FF)F

    move-result v5

    add-float/2addr v3, v5

    iget-object v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v5, v5, Landroid/graphics/RectF;->right:F

    invoke-static {v5, v9}, Ljava/lang/Math;->max(FF)F

    move-result v5

    add-float/2addr v3, v5

    invoke-static {v4, v8}, Ljava/lang/Math;->max(II)I

    move-result v4

    int-to-float v4, v4

    add-float/2addr v3, v4

    int-to-float v1, v1

    cmpl-float v1, v3, v1

    if-lez v1, :cond_a2

    .line 342
    iput v8, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    .line 346
    :cond_a2
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    if-nez v1, :cond_cf

    .line 347
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingLeft()I

    move-result v1

    sub-int v1, v0, v1

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingRight()I

    move-result v3

    sub-int/2addr v1, v3

    .line 348
    int-to-float v1, v1

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v3, v3, Landroid/graphics/RectF;->left:F

    invoke-static {v3, v9}, Ljava/lang/Math;->max(FF)F

    move-result v3

    sub-float/2addr v1, v3

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v3, v3, Landroid/graphics/RectF;->right:F

    invoke-static {v3, v9}, Ljava/lang/Math;->max(FF)F

    move-result v3

    sub-float/2addr v1, v3

    float-to-double v4, v1

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v1

    .line 349
    if-gez v1, :cond_d0

    .line 350
    iput v8, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    .line 351
    iput v8, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    .line 400
    :cond_cf
    :goto_cf
    return v0

    .line 354
    :cond_d0
    int-to-float v3, v1

    iget v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRangeRatio:F

    div-float/2addr v3, v4

    float-to-double v4, v3

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v3

    iput v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    .line 355
    int-to-float v3, v1

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v4, v4, Landroid/graphics/RectF;->left:F

    add-float/2addr v3, v4

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v4, v4, Landroid/graphics/RectF;->right:F

    add-float/2addr v3, v4

    float-to-double v4, v3

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v3

    iput v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    .line 356
    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    if-gez v3, :cond_f6

    .line 357
    iput v8, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    .line 358
    iput v8, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    goto :goto_cf

    .line 361
    :cond_f6
    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextExtra:I

    add-int/2addr v2, v3

    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    sub-int/2addr v1, v3

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v3, v3, Landroid/graphics/RectF;->left:F

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v4, v4, Landroid/graphics/RectF;->right:F

    invoke-static {v3, v4}, Ljava/lang/Math;->max(FF)F

    move-result v3

    float-to-double v4, v3

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v3

    add-int/2addr v1, v3

    sub-int v1, v2, v1

    .line 362
    if-lez v1, :cond_118

    .line 364
    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    sub-int v1, v2, v1

    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    .line 366
    :cond_118
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    if-gez v1, :cond_cf

    .line 367
    iput v8, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    .line 368
    iput v8, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    goto :goto_cf

    .line 378
    :cond_121
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    if-nez v1, :cond_139

    .line 382
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getResources()Landroid/content/res/Resources;

    move-result-object v1

    invoke-virtual {v1}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;

    move-result-object v1

    iget v1, v1, Landroid/util/DisplayMetrics;->density:F

    const/high16 v3, 0x41a00000    # 20.0f

    mul-float/2addr v1, v3

    float-to-double v4, v1

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v1

    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    .line 384
    :cond_139
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRangeRatio:F

    cmpl-float v1, v1, v9

    if-nez v1, :cond_141

    .line 385
    iput v6, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRangeRatio:F

    .line 388
    :cond_141
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    int-to-float v1, v1

    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRangeRatio:F

    mul-float/2addr v1, v3

    float-to-double v4, v1

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v1

    .line 389
    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextExtra:I

    add-int/2addr v2, v3

    int-to-float v2, v2

    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    sub-int v3, v1, v3

    int-to-float v3, v3

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v4, v4, Landroid/graphics/RectF;->left:F

    iget-object v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v5, v5, Landroid/graphics/RectF;->right:F

    invoke-static {v4, v5}, Ljava/lang/Math;->max(FF)F

    move-result v4

    add-float/2addr v3, v4

    iget v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextThumbInset:I

    int-to-float v4, v4

    add-float/2addr v3, v4

    sub-float/2addr v2, v3

    float-to-double v2, v2

    invoke-direct {p0, v2, v3}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v2

    .line 390
    int-to-float v3, v1

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v4, v4, Landroid/graphics/RectF;->left:F

    add-float/2addr v3, v4

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v4, v4, Landroid/graphics/RectF;->right:F

    add-float/2addr v3, v4

    invoke-static {v8, v2}, Ljava/lang/Math;->max(II)I

    move-result v4

    int-to-float v4, v4

    add-float/2addr v3, v4

    float-to-double v4, v3

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v3

    iput v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    .line 391
    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    if-gez v3, :cond_18e

    .line 392
    iput v8, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    .line 393
    iput v8, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    goto/16 :goto_cf

    .line 396
    :cond_18e
    int-to-float v0, v1

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v1, v1, Landroid/graphics/RectF;->left:F

    invoke-static {v9, v1}, Ljava/lang/Math;->max(FF)F

    move-result v1

    add-float/2addr v0, v1

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v1, v1, Landroid/graphics/RectF;->right:F

    invoke-static {v9, v1}, Ljava/lang/Math;->max(FF)F

    move-result v1

    add-float/2addr v0, v1

    invoke-static {v8, v2}, Ljava/lang/Math;->max(II)I

    move-result v1

    int-to-float v1, v1

    add-float/2addr v0, v1

    float-to-double v0, v0

    invoke-direct {p0, v0, v1}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v0

    .line 398
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingLeft()I

    move-result v1

    add-int/2addr v1, v0

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingRight()I

    move-result v2

    add-int/2addr v1, v2

    invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I

    move-result v0

    goto/16 :goto_cf
.end method

.method private setDrawableState(Landroid/graphics/drawable/Drawable;)V
    .registers 3

    .prologue
    .line 865
    if-eqz p1, :cond_c

    .line 866
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getDrawableState()[I

    move-result-object v0

    .line 867
    invoke-virtual {p1, v0}, Landroid/graphics/drawable/Drawable;->setState([I)Z

    .line 868
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 870
    :cond_c
    return-void
.end method

.method private setProgress(F)V
    .registers 5

    .prologue
    const/high16 v0, 0x3f800000    # 1.0f

    const/4 v1, 0x0

    .line 748
    .line 749
    cmpl-float v2, p1, v0

    if-lez v2, :cond_e

    move p1, v0

    .line 754
    :cond_8
    :goto_8
    iput p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgress:F

    .line 755
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 756
    return-void

    .line 751
    :cond_e
    cmpg-float v0, p1, v1

    if-gez v0, :cond_8

    move p1, v1

    .line 752
    goto :goto_8
.end method

.method private setup()V
    .registers 9

    .prologue
    const/high16 v2, -0x40800000    # -1.0f

    const/high16 v7, 0x40000000    # 2.0f

    const/4 v6, 0x0

    .line 480
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    if-eqz v0, :cond_15

    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    if-eqz v0, :cond_15

    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    if-eqz v0, :cond_15

    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    if-nez v0, :cond_16

    .line 543
    :cond_15
    :goto_15
    return-void

    .line 484
    :cond_16
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRadius:F

    cmpl-float v0, v0, v2

    if-nez v0, :cond_29

    .line 485
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    invoke-static {v0, v1}, Ljava/lang/Math;->min(II)I

    move-result v0

    div-int/lit8 v0, v0, 0x2

    int-to-float v0, v0

    iput v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRadius:F

    .line 487
    :cond_29
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    cmpl-float v0, v0, v2

    if-nez v0, :cond_3c

    .line 488
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    invoke-static {v0, v1}, Ljava/lang/Math;->min(II)I

    move-result v0

    div-int/lit8 v0, v0, 0x2

    int-to-float v0, v0

    iput v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    .line 491
    :cond_3c
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getMeasuredWidth()I

    move-result v0

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingLeft()I

    move-result v1

    sub-int/2addr v0, v1

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingRight()I

    move-result v1

    sub-int v1, v0, v1

    .line 492
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getMeasuredHeight()I

    move-result v0

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingTop()I

    move-result v2

    sub-int/2addr v0, v2

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingBottom()I

    move-result v2

    sub-int/2addr v0, v2

    .line 495
    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    int-to-float v2, v2

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v3, v3, Landroid/graphics/RectF;->left:F

    invoke-static {v6, v3}, Ljava/lang/Math;->min(FF)F

    move-result v3

    sub-float/2addr v2, v3

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v3, v3, Landroid/graphics/RectF;->right:F

    invoke-static {v6, v3}, Ljava/lang/Math;->min(FF)F

    move-result v3

    sub-float/2addr v2, v3

    float-to-double v2, v2

    invoke-direct {p0, v2, v3}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v2

    .line 496
    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    int-to-float v3, v3

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v4, v4, Landroid/graphics/RectF;->top:F

    invoke-static {v6, v4}, Ljava/lang/Math;->min(FF)F

    move-result v4

    sub-float/2addr v3, v4

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v4, v4, Landroid/graphics/RectF;->bottom:F

    invoke-static {v6, v4}, Ljava/lang/Math;->min(FF)F

    move-result v4

    sub-float/2addr v3, v4

    float-to-double v4, v3

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v3

    .line 499
    if-gt v0, v3, :cond_1ec

    .line 500
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingTop()I

    move-result v0

    int-to-float v0, v0

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v3, v3, Landroid/graphics/RectF;->top:F

    invoke-static {v6, v3}, Ljava/lang/Math;->max(FF)F

    move-result v3

    add-float/2addr v0, v3

    .line 507
    :goto_9d
    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    if-gt v1, v3, :cond_203

    .line 508
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingLeft()I

    move-result v1

    int-to-float v1, v1

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->left:F

    invoke-static {v6, v2}, Ljava/lang/Math;->max(FF)F

    move-result v2

    add-float/2addr v1, v2

    .line 513
    :goto_af
    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRectF:Landroid/graphics/RectF;

    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    int-to-float v3, v3

    add-float/2addr v3, v1

    iget v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    int-to-float v4, v4

    add-float/2addr v4, v0

    invoke-virtual {v2, v1, v0, v3, v4}, Landroid/graphics/RectF;->set(FFFF)V

    .line 515
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRectF:Landroid/graphics/RectF;

    iget v0, v0, Landroid/graphics/RectF;->left:F

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v1, v1, Landroid/graphics/RectF;->left:F

    sub-float/2addr v0, v1

    .line 516
    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRectF:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->top:F

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v3, v3, Landroid/graphics/RectF;->top:F

    sub-float/2addr v2, v3

    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackWidth:I

    int-to-float v3, v3

    add-float/2addr v3, v0

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRectF:Landroid/graphics/RectF;

    iget v4, v4, Landroid/graphics/RectF;->top:F

    iget-object v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v5, v5, Landroid/graphics/RectF;->top:F

    sub-float/2addr v4, v5

    iget v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackHeight:I

    int-to-float v5, v5

    add-float/2addr v4, v5

    invoke-virtual {v1, v0, v2, v3, v4}, Landroid/graphics/RectF;->set(FFFF)V

    .line 521
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mSafeRectF:Landroid/graphics/RectF;

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRectF:Landroid/graphics/RectF;

    iget v1, v1, Landroid/graphics/RectF;->left:F

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->right:F

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v3, v3, Landroid/graphics/RectF;->right:F

    sub-float/2addr v2, v3

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRectF:Landroid/graphics/RectF;

    invoke-virtual {v3}, Landroid/graphics/RectF;->width()F

    move-result v3

    sub-float/2addr v2, v3

    invoke-virtual {v0, v1, v6, v2, v6}, Landroid/graphics/RectF;->set(FFFF)V

    .line 523
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    invoke-virtual {v0}, Landroid/graphics/RectF;->width()F

    move-result v0

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    invoke-virtual {v1}, Landroid/graphics/RectF;->height()F

    move-result v1

    invoke-static {v0, v1}, Ljava/lang/Math;->min(FF)F

    move-result v0

    div-float/2addr v0, v7

    .line 524
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    invoke-static {v0, v1}, Ljava/lang/Math;->min(FF)F

    move-result v0

    iput v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    .line 526
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    if-eqz v0, :cond_13b

    .line 527
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget v1, v1, Landroid/graphics/RectF;->left:F

    float-to-int v1, v1

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->top:F

    float-to-int v2, v2

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget v3, v3, Landroid/graphics/RectF;->right:F

    float-to-double v4, v3

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v3

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget v4, v4, Landroid/graphics/RectF;->bottom:F

    float-to-double v4, v4

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v4

    invoke-virtual {v0, v1, v2, v3, v4}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V

    .line 530
    :cond_13b
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    if-eqz v0, :cond_18d

    .line 531
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget v0, v0, Landroid/graphics/RectF;->left:F

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    invoke-virtual {v1}, Landroid/graphics/RectF;->width()F

    move-result v1

    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextThumbInset:I

    int-to-float v2, v2

    add-float/2addr v1, v2

    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    int-to-float v2, v2

    sub-float/2addr v1, v2

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->right:F

    sub-float/2addr v1, v2

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    invoke-virtual {v2}, Landroid/text/Layout;->getWidth()I

    move-result v2

    int-to-float v2, v2

    sub-float/2addr v1, v2

    div-float/2addr v1, v7

    add-float/2addr v0, v1

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextAdjust:I

    int-to-float v1, v1

    sub-float/2addr v0, v1

    .line 532
    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget v1, v1, Landroid/graphics/RectF;->top:F

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    invoke-virtual {v2}, Landroid/graphics/RectF;->height()F

    move-result v2

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    invoke-virtual {v3}, Landroid/text/Layout;->getHeight()I

    move-result v3

    int-to-float v3, v3

    sub-float/2addr v2, v3

    div-float/2addr v2, v7

    add-float/2addr v1, v2

    .line 533
    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOnRectF:Landroid/graphics/RectF;

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    invoke-virtual {v3}, Landroid/text/Layout;->getWidth()I

    move-result v3

    int-to-float v3, v3

    add-float/2addr v3, v0

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    invoke-virtual {v4}, Landroid/text/Layout;->getHeight()I

    move-result v4

    int-to-float v4, v4

    add-float/2addr v4, v1

    invoke-virtual {v2, v0, v1, v3, v4}, Landroid/graphics/RectF;->set(FFFF)V

    .line 536
    :cond_18d
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    if-eqz v0, :cond_1e7

    .line 537
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget v0, v0, Landroid/graphics/RectF;->right:F

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    invoke-virtual {v1}, Landroid/graphics/RectF;->width()F

    move-result v1

    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextThumbInset:I

    int-to-float v2, v2

    add-float/2addr v1, v2

    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    int-to-float v2, v2

    sub-float/2addr v1, v2

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->left:F

    sub-float/2addr v1, v2

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    invoke-virtual {v2}, Landroid/text/Layout;->getWidth()I

    move-result v2

    int-to-float v2, v2

    sub-float/2addr v1, v2

    div-float/2addr v1, v7

    sub-float/2addr v0, v1

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    invoke-virtual {v1}, Landroid/text/Layout;->getWidth()I

    move-result v1

    int-to-float v1, v1

    sub-float/2addr v0, v1

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextAdjust:I

    int-to-float v1, v1

    add-float/2addr v0, v1

    .line 538
    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget v1, v1, Landroid/graphics/RectF;->top:F

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    invoke-virtual {v2}, Landroid/graphics/RectF;->height()F

    move-result v2

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    invoke-virtual {v3}, Landroid/text/Layout;->getHeight()I

    move-result v3

    int-to-float v3, v3

    sub-float/2addr v2, v3

    div-float/2addr v2, v7

    add-float/2addr v1, v2

    .line 539
    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOffRectF:Landroid/graphics/RectF;

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    invoke-virtual {v3}, Landroid/text/Layout;->getWidth()I

    move-result v3

    int-to-float v3, v3

    add-float/2addr v3, v0

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    invoke-virtual {v4}, Landroid/text/Layout;->getHeight()I

    move-result v4

    int-to-float v4, v4

    add-float/2addr v4, v1

    invoke-virtual {v2, v0, v1, v3, v4}, Landroid/graphics/RectF;->set(FFFF)V

    .line 542
    :cond_1e7
    const/4 v0, 0x1

    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    goto/16 :goto_15

    .line 503
    :cond_1ec
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingTop()I

    move-result v4

    int-to-float v4, v4

    iget-object v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v5, v5, Landroid/graphics/RectF;->top:F

    invoke-static {v6, v5}, Ljava/lang/Math;->max(FF)F

    move-result v5

    add-float/2addr v4, v5

    sub-int/2addr v0, v3

    add-int/lit8 v0, v0, 0x1

    div-int/lit8 v0, v0, 0x2

    int-to-float v0, v0

    add-float/2addr v0, v4

    goto/16 :goto_9d

    .line 510
    :cond_203
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getPaddingLeft()I

    move-result v3

    int-to-float v3, v3

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    iget v4, v4, Landroid/graphics/RectF;->left:F

    invoke-static {v6, v4}, Ljava/lang/Math;->max(FF)F

    move-result v4

    add-float/2addr v3, v4

    sub-int/2addr v1, v2

    add-int/lit8 v1, v1, 0x1

    div-int/lit8 v1, v1, 0x2

    int-to-float v1, v1

    add-float/2addr v1, v3

    goto/16 :goto_af
.end method


# virtual methods
.method protected animateToState(Z)V
    .registers 8

    .prologue
    const/4 v1, 0x2

    const/4 v5, 0x1

    const/4 v4, 0x0

    .line 769
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    if-nez v0, :cond_8

    .line 782
    :goto_7
    return-void

    .line 772
    :cond_8
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    invoke-virtual {v0}, Landroid/animation/ObjectAnimator;->isRunning()Z

    move-result v0

    if-eqz v0, :cond_15

    .line 773
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    invoke-virtual {v0}, Landroid/animation/ObjectAnimator;->cancel()V

    .line 775
    :cond_15
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    iget-wide v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mAnimationDuration:J

    invoke-virtual {v0, v2, v3}, Landroid/animation/ObjectAnimator;->setDuration(J)Landroid/animation/ObjectAnimator;

    .line 776
    if-eqz p1, :cond_33

    .line 777
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    new-array v1, v1, [F

    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgress:F

    aput v2, v1, v4

    const/high16 v2, 0x3f800000    # 1.0f

    aput v2, v1, v5

    invoke-virtual {v0, v1}, Landroid/animation/ObjectAnimator;->setFloatValues([F)V

    .line 781
    :goto_2d
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    invoke-virtual {v0}, Landroid/animation/ObjectAnimator;->start()V

    goto :goto_7

    .line 779
    :cond_33
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    new-array v1, v1, [F

    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgress:F

    aput v2, v1, v4

    const/4 v2, 0x0

    aput v2, v1, v5

    invoke-virtual {v0, v1}, Landroid/animation/ObjectAnimator;->setFloatValues([F)V

    goto :goto_2d
.end method

.method protected drawableStateChanged()V
    .registers 5

    .prologue
    .line 644
    invoke-super {p0}, Landroid/widget/CompoundButton;->drawableStateChanged()V

    .line 646
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsThumbUseDrawable:Z

    if-nez v0, :cond_5c

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbColor:Landroid/content/res/ColorStateList;

    if-eqz v0, :cond_5c

    .line 647
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbColor:Landroid/content/res/ColorStateList;

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getDrawableState()[I

    move-result-object v1

    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrThumbColor:I

    invoke-virtual {v0, v1, v2}, Landroid/content/res/ColorStateList;->getColorForState([II)I

    move-result v0

    iput v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrThumbColor:I

    .line 652
    :goto_19
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->isChecked()Z

    move-result v0

    if-eqz v0, :cond_62

    sget-object v0, Lcom/kyleduo/switchbutton/SwitchButton;->UNCHECKED_PRESSED_STATE:[I

    .line 653
    :goto_21
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getTextColors()Landroid/content/res/ColorStateList;

    move-result-object v1

    .line 654
    if-eqz v1, :cond_3b

    .line 655
    invoke-virtual {v1}, Landroid/content/res/ColorStateList;->getDefaultColor()I

    move-result v2

    .line 656
    sget-object v3, Lcom/kyleduo/switchbutton/SwitchButton;->CHECKED_PRESSED_STATE:[I

    invoke-virtual {v1, v3, v2}, Landroid/content/res/ColorStateList;->getColorForState([II)I

    move-result v3

    iput v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnTextColor:I

    .line 657
    sget-object v3, Lcom/kyleduo/switchbutton/SwitchButton;->UNCHECKED_PRESSED_STATE:[I

    invoke-virtual {v1, v3, v2}, Landroid/content/res/ColorStateList;->getColorForState([II)I

    move-result v1

    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffTextColor:I

    .line 659
    :cond_3b
    iget-boolean v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsBackUseDrawable:Z

    if-nez v1, :cond_65

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackColor:Landroid/content/res/ColorStateList;

    if-eqz v1, :cond_65

    .line 660
    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackColor:Landroid/content/res/ColorStateList;

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getDrawableState()[I

    move-result-object v2

    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrBackColor:I

    invoke-virtual {v1, v2, v3}, Landroid/content/res/ColorStateList;->getColorForState([II)I

    move-result v1

    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrBackColor:I

    .line 661
    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackColor:Landroid/content/res/ColorStateList;

    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrBackColor:I

    invoke-virtual {v1, v0, v2}, Landroid/content/res/ColorStateList;->getColorForState([II)I

    move-result v0

    iput v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mNextBackColor:I

    .line 674
    :cond_5b
    :goto_5b
    return-void

    .line 649
    :cond_5c
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbDrawable:Landroid/graphics/drawable/Drawable;

    invoke-direct {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->setDrawableState(Landroid/graphics/drawable/Drawable;)V

    goto :goto_19

    .line 652
    :cond_62
    sget-object v0, Lcom/kyleduo/switchbutton/SwitchButton;->CHECKED_PRESSED_STATE:[I

    goto :goto_21

    .line 663
    :cond_65
    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    instance-of v1, v1, Landroid/graphics/drawable/StateListDrawable;

    if-eqz v1, :cond_96

    iget-boolean v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mFadeBack:Z

    if-eqz v1, :cond_96

    .line 664
    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    invoke-virtual {v1, v0}, Landroid/graphics/drawable/Drawable;->setState([I)Z

    .line 665
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->getCurrent()Landroid/graphics/drawable/Drawable;

    move-result-object v0

    invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->mutate()Landroid/graphics/drawable/Drawable;

    move-result-object v0

    iput-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mNextBackDrawable:Landroid/graphics/drawable/Drawable;

    .line 669
    :goto_80
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    invoke-direct {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->setDrawableState(Landroid/graphics/drawable/Drawable;)V

    .line 670
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    if-eqz v0, :cond_5b

    .line 671
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->getCurrent()Landroid/graphics/drawable/Drawable;

    move-result-object v0

    invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->mutate()Landroid/graphics/drawable/Drawable;

    move-result-object v0

    iput-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrentBackDrawable:Landroid/graphics/drawable/Drawable;

    goto :goto_5b

    .line 667
    :cond_96
    const/4 v0, 0x0

    iput-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mNextBackDrawable:Landroid/graphics/drawable/Drawable;

    goto :goto_80
.end method

.method public getAnimationDuration()J
    .registers 3

    .prologue
    .line 882
    iget-wide v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mAnimationDuration:J

    return-wide v0
.end method

.method public getBackColor()Landroid/content/res/ColorStateList;
    .registers 2

    .prologue
    .line 924
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackColor:Landroid/content/res/ColorStateList;

    return-object v0
.end method

.method public getBackDrawable()Landroid/graphics/drawable/Drawable;
    .registers 2

    .prologue
    .line 907
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    return-object v0
.end method

.method public getBackRadius()F
    .registers 2

    .prologue
    .line 1015
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    return v0
.end method

.method public getBackSizeF()Landroid/graphics/PointF;
    .registers 4

    .prologue
    .line 1011
    new-instance v0, Landroid/graphics/PointF;

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    invoke-virtual {v1}, Landroid/graphics/RectF;->width()F

    move-result v1

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    invoke-virtual {v2}, Landroid/graphics/RectF;->height()F

    move-result v2

    invoke-direct {v0, v1, v2}, Landroid/graphics/PointF;-><init>(FF)V

    return-object v0
.end method

.method public getTextOff()Ljava/lang/CharSequence;
    .registers 2

    .prologue
    .line 1065
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOff:Ljava/lang/CharSequence;

    return-object v0
.end method

.method public getTextOn()Ljava/lang/CharSequence;
    .registers 2

    .prologue
    .line 1061
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOn:Ljava/lang/CharSequence;

    return-object v0
.end method

.method public getThumbColor()Landroid/content/res/ColorStateList;
    .registers 2

    .prologue
    .line 940
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbColor:Landroid/content/res/ColorStateList;

    return-object v0
.end method

.method public getThumbDrawable()Landroid/graphics/drawable/Drawable;
    .registers 2

    .prologue
    .line 890
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbDrawable:Landroid/graphics/drawable/Drawable;

    return-object v0
.end method

.method public getThumbHeight()F
    .registers 2

    .prologue
    .line 996
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    int-to-float v0, v0

    return v0
.end method

.method public getThumbMargin()Landroid/graphics/RectF;
    .registers 2

    .prologue
    .line 967
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    return-object v0
.end method

.method public getThumbRadius()F
    .registers 2

    .prologue
    .line 1000
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRadius:F

    return v0
.end method

.method public getThumbRangeRatio()F
    .registers 2

    .prologue
    .line 956
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRangeRatio:F

    return v0
.end method

.method public getThumbWidth()F
    .registers 2

    .prologue
    .line 992
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    int-to-float v0, v0

    return v0
.end method

.method public getTintColor()I
    .registers 2

    .prologue
    .line 1034
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTintColor:I

    return v0
.end method

.method public isDrawDebugRect()Z
    .registers 2

    .prologue
    .line 873
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mDrawDebugRect:Z

    return v0
.end method

.method public isFadeBack()Z
    .registers 2

    .prologue
    .line 1026
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mFadeBack:Z

    return v0
.end method

.method protected onDraw(Landroid/graphics/Canvas;)V
    .registers 15

    .prologue
    const/16 v12, 0xff

    const/high16 v11, 0x40800000    # 4.0f

    const/4 v2, 0x0

    const/high16 v10, 0x437f0000    # 255.0f

    const-wide/high16 v8, 0x3fe0000000000000L    # 0.5

    .line 547
    invoke-super {p0, p1}, Landroid/widget/CompoundButton;->onDraw(Landroid/graphics/Canvas;)V

    .line 549
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    if-nez v0, :cond_13

    .line 550
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->setup()V

    .line 552
    :cond_13
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    if-nez v0, :cond_18

    .line 640
    :cond_17
    :goto_17
    return-void

    .line 557
    :cond_18
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsBackUseDrawable:Z

    if-eqz v0, :cond_16a

    .line 558
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mFadeBack:Z

    if-eqz v0, :cond_15e

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrentBackDrawable:Landroid/graphics/drawable/Drawable;

    if-eqz v0, :cond_15e

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mNextBackDrawable:Landroid/graphics/drawable/Drawable;

    if-eqz v0, :cond_15e

    .line 561
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->isChecked()Z

    move-result v0

    if-eqz v0, :cond_156

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrentBackDrawable:Landroid/graphics/drawable/Drawable;

    .line 562
    :goto_30
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->isChecked()Z

    move-result v1

    if-eqz v1, :cond_15a

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mNextBackDrawable:Landroid/graphics/drawable/Drawable;

    .line 564
    :goto_38
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getProgress()F

    move-result v3

    mul-float/2addr v3, v10

    float-to-int v3, v3

    .line 565
    invoke-virtual {v0, v3}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V

    .line 566
    invoke-virtual {v0, p1}, Landroid/graphics/drawable/Drawable;->draw(Landroid/graphics/Canvas;)V

    .line 567
    rsub-int v0, v3, 0xff

    .line 568
    invoke-virtual {v1, v0}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V

    .line 569
    invoke-virtual {v1, p1}, Landroid/graphics/drawable/Drawable;->draw(Landroid/graphics/Canvas;)V

    .line 605
    :goto_4c
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getProgress()F

    move-result v0

    float-to-double v0, v0

    cmpl-double v0, v0, v8

    if-lez v0, :cond_1ed

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    .line 606
    :goto_57
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getProgress()F

    move-result v1

    float-to-double v4, v1

    cmpl-double v1, v4, v8

    if-lez v1, :cond_1f1

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOnRectF:Landroid/graphics/RectF;

    move-object v3, v1

    .line 607
    :goto_63
    if-eqz v0, :cond_b1

    if-eqz v3, :cond_b1

    .line 608
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getProgress()F

    move-result v1

    float-to-double v4, v1

    const-wide/high16 v6, 0x3fe8000000000000L    # 0.75

    cmpl-double v1, v4, v6

    if-ltz v1, :cond_1f6

    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getProgress()F

    move-result v1

    mul-float/2addr v1, v11

    const/high16 v4, 0x40400000    # 3.0f

    sub-float/2addr v1, v4

    :goto_7a
    mul-float/2addr v1, v10

    float-to-int v4, v1

    .line 609
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getProgress()F

    move-result v1

    float-to-double v6, v1

    cmpl-double v1, v6, v8

    if-lez v1, :cond_20e

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnTextColor:I

    .line 610
    :goto_87
    invoke-static {v1}, Landroid/graphics/Color;->alpha(I)I

    move-result v5

    .line 611
    mul-int/2addr v4, v5

    div-int/lit16 v4, v4, 0xff

    .line 612
    invoke-virtual {v0}, Landroid/text/Layout;->getPaint()Landroid/text/TextPaint;

    move-result-object v5

    invoke-static {v1}, Landroid/graphics/Color;->red(I)I

    move-result v6

    invoke-static {v1}, Landroid/graphics/Color;->green(I)I

    move-result v7

    invoke-static {v1}, Landroid/graphics/Color;->blue(I)I

    move-result v1

    invoke-virtual {v5, v4, v6, v7, v1}, Landroid/text/TextPaint;->setARGB(IIII)V

    .line 613
    invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I

    .line 614
    iget v1, v3, Landroid/graphics/RectF;->left:F

    iget v3, v3, Landroid/graphics/RectF;->top:F

    invoke-virtual {p1, v1, v3}, Landroid/graphics/Canvas;->translate(FF)V

    .line 615
    invoke-virtual {v0, p1}, Landroid/text/Layout;->draw(Landroid/graphics/Canvas;)V

    .line 616
    invoke-virtual {p1}, Landroid/graphics/Canvas;->restore()V

    .line 620
    :cond_b1
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPresentThumbRectF:Landroid/graphics/RectF;

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRectF:Landroid/graphics/RectF;

    invoke-virtual {v0, v1}, Landroid/graphics/RectF;->set(Landroid/graphics/RectF;)V

    .line 621
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPresentThumbRectF:Landroid/graphics/RectF;

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgress:F

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mSafeRectF:Landroid/graphics/RectF;

    invoke-virtual {v3}, Landroid/graphics/RectF;->width()F

    move-result v3

    mul-float/2addr v1, v3

    invoke-virtual {v0, v1, v2}, Landroid/graphics/RectF;->offset(FF)V

    .line 622
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsThumbUseDrawable:Z

    if-eqz v0, :cond_212

    .line 623
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbDrawable:Landroid/graphics/drawable/Drawable;

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPresentThumbRectF:Landroid/graphics/RectF;

    iget v1, v1, Landroid/graphics/RectF;->left:F

    float-to-int v1, v1

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPresentThumbRectF:Landroid/graphics/RectF;

    iget v2, v2, Landroid/graphics/RectF;->top:F

    float-to-int v2, v2

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPresentThumbRectF:Landroid/graphics/RectF;

    iget v3, v3, Landroid/graphics/RectF;->right:F

    float-to-double v4, v3

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v3

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPresentThumbRectF:Landroid/graphics/RectF;

    iget v4, v4, Landroid/graphics/RectF;->bottom:F

    float-to-double v4, v4

    invoke-direct {p0, v4, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->ceil(D)I

    move-result v4

    invoke-virtual {v0, v1, v2, v3, v4}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V

    .line 624
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbDrawable:Landroid/graphics/drawable/Drawable;

    invoke-virtual {v0, p1}, Landroid/graphics/drawable/Drawable;->draw(Landroid/graphics/Canvas;)V

    .line 630
    :goto_f0
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mDrawDebugRect:Z

    if-eqz v0, :cond_17

    .line 631
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRectPaint:Landroid/graphics/Paint;

    const-string v1, "#AA0000"

    invoke-static {v1}, Landroid/graphics/Color;->parseColor(Ljava/lang/String;)I

    move-result v1

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setColor(I)V

    .line 632
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRectPaint:Landroid/graphics/Paint;

    invoke-virtual {p1, v0, v1}, Landroid/graphics/Canvas;->drawRect(Landroid/graphics/RectF;Landroid/graphics/Paint;)V

    .line 633
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRectPaint:Landroid/graphics/Paint;

    const-string v1, "#0000FF"

    invoke-static {v1}, Landroid/graphics/Color;->parseColor(Ljava/lang/String;)I

    move-result v1

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setColor(I)V

    .line 634
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPresentThumbRectF:Landroid/graphics/RectF;

    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRectPaint:Landroid/graphics/Paint;

    invoke-virtual {p1, v0, v1}, Landroid/graphics/Canvas;->drawRect(Landroid/graphics/RectF;Landroid/graphics/Paint;)V

    .line 635
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRectPaint:Landroid/graphics/Paint;

    const-string v1, "#000000"

    invoke-static {v1}, Landroid/graphics/Color;->parseColor(Ljava/lang/String;)I

    move-result v1

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setColor(I)V

    .line 636
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mSafeRectF:Landroid/graphics/RectF;

    iget v1, v0, Landroid/graphics/RectF;->left:F

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRectF:Landroid/graphics/RectF;

    iget v2, v0, Landroid/graphics/RectF;->top:F

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mSafeRectF:Landroid/graphics/RectF;

    iget v3, v0, Landroid/graphics/RectF;->right:F

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRectF:Landroid/graphics/RectF;

    iget v4, v0, Landroid/graphics/RectF;->top:F

    iget-object v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRectPaint:Landroid/graphics/Paint;

    move-object v0, p1

    invoke-virtual/range {v0 .. v5}, Landroid/graphics/Canvas;->drawLine(FFFFLandroid/graphics/Paint;)V

    .line 637
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRectPaint:Landroid/graphics/Paint;

    const-string v1, "#00CC00"

    invoke-static {v1}, Landroid/graphics/Color;->parseColor(Ljava/lang/String;)I

    move-result v1

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setColor(I)V

    .line 638
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getProgress()F

    move-result v0

    float-to-double v0, v0

    cmpl-double v0, v0, v8

    if-lez v0, :cond_226

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOnRectF:Landroid/graphics/RectF;

    :goto_14f
    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRectPaint:Landroid/graphics/Paint;

    invoke-virtual {p1, v0, v1}, Landroid/graphics/Canvas;->drawRect(Landroid/graphics/RectF;Landroid/graphics/Paint;)V

    goto/16 :goto_17

    .line 561
    :cond_156
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mNextBackDrawable:Landroid/graphics/drawable/Drawable;

    goto/16 :goto_30

    .line 562
    :cond_15a
    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrentBackDrawable:Landroid/graphics/drawable/Drawable;

    goto/16 :goto_38

    .line 571
    :cond_15e
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    invoke-virtual {v0, v12}, Landroid/graphics/drawable/Drawable;->setAlpha(I)V

    .line 572
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    invoke-virtual {v0, p1}, Landroid/graphics/drawable/Drawable;->draw(Landroid/graphics/Canvas;)V

    goto/16 :goto_4c

    .line 575
    :cond_16a
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mFadeBack:Z

    if-eqz v0, :cond_1d9

    .line 580
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->isChecked()Z

    move-result v0

    if-eqz v0, :cond_1d3

    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrBackColor:I

    .line 581
    :goto_176
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->isChecked()Z

    move-result v1

    if-eqz v1, :cond_1d6

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mNextBackColor:I

    .line 584
    :goto_17e
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getProgress()F

    move-result v3

    mul-float/2addr v3, v10

    float-to-int v3, v3

    .line 585
    invoke-static {v0}, Landroid/graphics/Color;->alpha(I)I

    move-result v4

    .line 586
    mul-int/2addr v4, v3

    div-int/lit16 v4, v4, 0xff

    .line 587
    iget-object v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPaint:Landroid/graphics/Paint;

    invoke-static {v0}, Landroid/graphics/Color;->red(I)I

    move-result v6

    invoke-static {v0}, Landroid/graphics/Color;->green(I)I

    move-result v7

    invoke-static {v0}, Landroid/graphics/Color;->blue(I)I

    move-result v0

    invoke-virtual {v5, v4, v6, v7, v0}, Landroid/graphics/Paint;->setARGB(IIII)V

    .line 588
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    iget v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    iget-object v6, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPaint:Landroid/graphics/Paint;

    invoke-virtual {p1, v0, v4, v5, v6}, Landroid/graphics/Canvas;->drawRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Paint;)V

    .line 591
    rsub-int v0, v3, 0xff

    .line 592
    invoke-static {v1}, Landroid/graphics/Color;->alpha(I)I

    move-result v3

    .line 593
    mul-int/2addr v0, v3

    div-int/lit16 v0, v0, 0xff

    .line 594
    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPaint:Landroid/graphics/Paint;

    invoke-static {v1}, Landroid/graphics/Color;->red(I)I

    move-result v4

    invoke-static {v1}, Landroid/graphics/Color;->green(I)I

    move-result v5

    invoke-static {v1}, Landroid/graphics/Color;->blue(I)I

    move-result v1

    invoke-virtual {v3, v0, v4, v5, v1}, Landroid/graphics/Paint;->setARGB(IIII)V

    .line 595
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPaint:Landroid/graphics/Paint;

    invoke-virtual {p1, v0, v1, v3, v4}, Landroid/graphics/Canvas;->drawRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Paint;)V

    .line 597
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPaint:Landroid/graphics/Paint;

    invoke-virtual {v0, v12}, Landroid/graphics/Paint;->setAlpha(I)V

    goto/16 :goto_4c

    .line 580
    :cond_1d3
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mNextBackColor:I

    goto :goto_176

    .line 581
    :cond_1d6
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrBackColor:I

    goto :goto_17e

    .line 599
    :cond_1d9
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPaint:Landroid/graphics/Paint;

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrBackColor:I

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setColor(I)V

    .line 600
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRectF:Landroid/graphics/RectF;

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    iget-object v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPaint:Landroid/graphics/Paint;

    invoke-virtual {p1, v0, v1, v3, v4}, Landroid/graphics/Canvas;->drawRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Paint;)V

    goto/16 :goto_4c

    .line 605
    :cond_1ed
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    goto/16 :goto_57

    .line 606
    :cond_1f1
    iget-object v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOffRectF:Landroid/graphics/RectF;

    move-object v3, v1

    goto/16 :goto_63

    .line 608
    :cond_1f6
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getProgress()F

    move-result v1

    float-to-double v4, v1

    const-wide/high16 v6, 0x3fd0000000000000L    # 0.25

    cmpg-double v1, v4, v6

    if-gez v1, :cond_20b

    const/high16 v1, 0x3f800000    # 1.0f

    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getProgress()F

    move-result v4

    mul-float/2addr v4, v11

    sub-float/2addr v1, v4

    goto/16 :goto_7a

    :cond_20b
    move v1, v2

    goto/16 :goto_7a

    .line 609
    :cond_20e
    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffTextColor:I

    goto/16 :goto_87

    .line 626
    :cond_212
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPaint:Landroid/graphics/Paint;

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCurrThumbColor:I

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setColor(I)V

    .line 627
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPresentThumbRectF:Landroid/graphics/RectF;

    iget v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRadius:F

    iget v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRadius:F

    iget-object v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mPaint:Landroid/graphics/Paint;

    invoke-virtual {p1, v0, v1, v2, v3}, Landroid/graphics/Canvas;->drawRoundRect(Landroid/graphics/RectF;FFLandroid/graphics/Paint;)V

    goto/16 :goto_f0

    .line 638
    :cond_226
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOffRectF:Landroid/graphics/RectF;

    goto/16 :goto_14f
.end method

.method protected onMeasure(II)V
    .registers 7

    .prologue
    const/4 v1, 0x0

    .line 274
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    if-nez v0, :cond_15

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOn:Ljava/lang/CharSequence;

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_15

    .line 275
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOn:Ljava/lang/CharSequence;

    invoke-direct {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->makeLayout(Ljava/lang/CharSequence;)Landroid/text/Layout;

    move-result-object v0

    iput-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    .line 277
    :cond_15
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    if-nez v0, :cond_29

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOff:Ljava/lang/CharSequence;

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_29

    .line 278
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOff:Ljava/lang/CharSequence;

    invoke-direct {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->makeLayout(Ljava/lang/CharSequence;)Landroid/text/Layout;

    move-result-object v0

    iput-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    .line 281
    :cond_29
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    if-eqz v0, :cond_7d

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    invoke-virtual {v0}, Landroid/text/Layout;->getWidth()I

    move-result v0

    int-to-float v0, v0

    .line 282
    :goto_34
    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    if-eqz v2, :cond_7f

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    invoke-virtual {v2}, Landroid/text/Layout;->getWidth()I

    move-result v2

    int-to-float v2, v2

    .line 283
    :goto_3f
    cmpl-float v3, v0, v1

    if-nez v3, :cond_47

    cmpl-float v3, v2, v1

    if-eqz v3, :cond_81

    .line 284
    :cond_47
    invoke-static {v0, v2}, Ljava/lang/Math;->max(FF)F

    move-result v0

    iput v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextWidth:F

    .line 289
    :goto_4d
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    if-eqz v0, :cond_84

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    invoke-virtual {v0}, Landroid/text/Layout;->getHeight()I

    move-result v0

    int-to-float v0, v0

    .line 290
    :goto_58
    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    if-eqz v2, :cond_86

    iget-object v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    invoke-virtual {v2}, Landroid/text/Layout;->getHeight()I

    move-result v2

    int-to-float v2, v2

    .line 291
    :goto_63
    cmpl-float v3, v0, v1

    if-nez v3, :cond_6b

    cmpl-float v3, v2, v1

    if-eqz v3, :cond_88

    .line 292
    :cond_6b
    invoke-static {v0, v2}, Ljava/lang/Math;->max(FF)F

    move-result v0

    iput v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextHeight:F

    .line 297
    :goto_71
    invoke-direct {p0, p1}, Lcom/kyleduo/switchbutton/SwitchButton;->measureWidth(I)I

    move-result v0

    invoke-direct {p0, p2}, Lcom/kyleduo/switchbutton/SwitchButton;->measureHeight(I)I

    move-result v1

    invoke-virtual {p0, v0, v1}, Lcom/kyleduo/switchbutton/SwitchButton;->setMeasuredDimension(II)V

    .line 298
    return-void

    :cond_7d
    move v0, v1

    .line 281
    goto :goto_34

    :cond_7f
    move v2, v1

    .line 282
    goto :goto_3f

    .line 286
    :cond_81
    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextWidth:F

    goto :goto_4d

    :cond_84
    move v0, v1

    .line 289
    goto :goto_58

    :cond_86
    move v2, v1

    .line 290
    goto :goto_63

    .line 294
    :cond_88
    iput v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextHeight:F

    goto :goto_71
.end method

.method public onRestoreInstanceState(Landroid/os/Parcelable;)V
    .registers 4

    .prologue
    .line 1100
    check-cast p1, Lcom/kyleduo/switchbutton/SwitchButton$SavedState;

    .line 1101
    iget-object v0, p1, Lcom/kyleduo/switchbutton/SwitchButton$SavedState;->a:Ljava/lang/CharSequence;

    iget-object v1, p1, Lcom/kyleduo/switchbutton/SwitchButton$SavedState;->b:Ljava/lang/CharSequence;

    invoke-virtual {p0, v0, v1}, Lcom/kyleduo/switchbutton/SwitchButton;->setText(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)V

    .line 1102
    const/4 v0, 0x1

    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRestoring:Z

    .line 1103
    invoke-virtual {p1}, Lcom/kyleduo/switchbutton/SwitchButton$SavedState;->getSuperState()Landroid/os/Parcelable;

    move-result-object v0

    invoke-super {p0, v0}, Landroid/widget/CompoundButton;->onRestoreInstanceState(Landroid/os/Parcelable;)V

    .line 1104
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRestoring:Z

    .line 1105
    return-void
.end method

.method public onSaveInstanceState()Landroid/os/Parcelable;
    .registers 3

    .prologue
    .line 1091
    invoke-super {p0}, Landroid/widget/CompoundButton;->onSaveInstanceState()Landroid/os/Parcelable;

    move-result-object v0

    .line 1092
    new-instance v1, Lcom/kyleduo/switchbutton/SwitchButton$SavedState;

    invoke-direct {v1, v0}, Lcom/kyleduo/switchbutton/SwitchButton$SavedState;-><init>(Landroid/os/Parcelable;)V

    .line 1093
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOn:Ljava/lang/CharSequence;

    iput-object v0, v1, Lcom/kyleduo/switchbutton/SwitchButton$SavedState;->a:Ljava/lang/CharSequence;

    .line 1094
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOff:Ljava/lang/CharSequence;

    iput-object v0, v1, Lcom/kyleduo/switchbutton/SwitchButton$SavedState;->b:Ljava/lang/CharSequence;

    .line 1095
    return-object v1
.end method

.method protected onSizeChanged(IIII)V
    .registers 5

    .prologue
    .line 466
    invoke-super {p0, p1, p2, p3, p4}, Landroid/widget/CompoundButton;->onSizeChanged(IIII)V

    .line 467
    if-ne p1, p3, :cond_7

    if-eq p2, p4, :cond_a

    .line 468
    :cond_7
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->setup()V

    .line 470
    :cond_a
    return-void
.end method

.method public onTouchEvent(Landroid/view/MotionEvent;)Z
    .registers 12

    .prologue
    const/4 v1, 0x1

    const/4 v0, 0x0

    .line 679
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->isEnabled()Z

    move-result v2

    if-eqz v2, :cond_18

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->isClickable()Z

    move-result v2

    if-eqz v2, :cond_18

    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->isFocusable()Z

    move-result v2

    if-eqz v2, :cond_18

    iget-boolean v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    if-nez v2, :cond_19

    .line 730
    :cond_18
    :goto_18
    return v0

    .line 683
    :cond_19
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getAction()I

    move-result v2

    .line 685
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F

    move-result v3

    iget v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mStartX:F

    sub-float/2addr v3, v4

    .line 686
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F

    move-result v4

    iget v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mStartY:F

    sub-float/2addr v4, v5

    .line 688
    packed-switch v2, :pswitch_data_e6

    :goto_2e
    move v0, v1

    .line 730
    goto :goto_18

    .line 690
    :pswitch_30
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F

    move-result v0

    iput v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mStartX:F

    .line 691
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getY()F

    move-result v0

    iput v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mStartY:F

    .line 692
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mStartX:F

    iput v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mLastX:F

    .line 693
    invoke-virtual {p0, v1}, Lcom/kyleduo/switchbutton/SwitchButton;->setPressed(Z)V

    goto :goto_2e

    .line 697
    :pswitch_44
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getX()F

    move-result v2

    .line 698
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getProgress()F

    move-result v5

    iget v6, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mLastX:F

    sub-float v6, v2, v6

    iget-object v7, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mSafeRectF:Landroid/graphics/RectF;

    invoke-virtual {v7}, Landroid/graphics/RectF;->width()F

    move-result v7

    div-float/2addr v6, v7

    add-float/2addr v5, v6

    invoke-direct {p0, v5}, Lcom/kyleduo/switchbutton/SwitchButton;->setProgress(F)V

    .line 699
    iget-boolean v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCatch:Z

    if-nez v5, :cond_8d

    invoke-static {v3}, Ljava/lang/Math;->abs(F)F

    move-result v5

    iget v6, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTouchSlop:I

    div-int/lit8 v6, v6, 0x2

    int-to-float v6, v6

    cmpl-float v5, v5, v6

    if-gtz v5, :cond_79

    invoke-static {v4}, Ljava/lang/Math;->abs(F)F

    move-result v5

    iget v6, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTouchSlop:I

    div-int/lit8 v6, v6, 0x2

    int-to-float v6, v6

    cmpl-float v5, v5, v6

    if-lez v5, :cond_8d

    .line 700
    :cond_79
    const/4 v5, 0x0

    cmpl-float v5, v4, v5

    if-eqz v5, :cond_8a

    invoke-static {v3}, Ljava/lang/Math;->abs(F)F

    move-result v5

    invoke-static {v4}, Ljava/lang/Math;->abs(F)F

    move-result v6

    cmpl-float v5, v5, v6

    if-lez v5, :cond_90

    .line 701
    :cond_8a
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->catchView()V

    .line 706
    :cond_8d
    iput v2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mLastX:F

    goto :goto_2e

    .line 702
    :cond_90
    invoke-static {v4}, Ljava/lang/Math;->abs(F)F

    move-result v4

    invoke-static {v3}, Ljava/lang/Math;->abs(F)F

    move-result v3

    cmpl-float v3, v4, v3

    if-lez v3, :cond_8d

    goto/16 :goto_18

    .line 711
    :pswitch_9e
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mCatch:Z

    .line 712
    invoke-virtual {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->setPressed(Z)V

    .line 713
    invoke-virtual {p1}, Landroid/view/MotionEvent;->getEventTime()J

    move-result-wide v6

    invoke-virtual {p1}, Landroid/view/MotionEvent;->getDownTime()J

    move-result-wide v8

    sub-long/2addr v6, v8

    long-to-float v2, v6

    .line 714
    invoke-static {v3}, Ljava/lang/Math;->abs(F)F

    move-result v3

    iget v5, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTouchSlop:I

    int-to-float v5, v5

    cmpg-float v3, v3, v5

    if-gez v3, :cond_cf

    invoke-static {v4}, Ljava/lang/Math;->abs(F)F

    move-result v3

    iget v4, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTouchSlop:I

    int-to-float v4, v4

    cmpg-float v3, v3, v4

    if-gez v3, :cond_cf

    iget v3, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mClickTimeout:I

    int-to-float v3, v3

    cmpg-float v2, v2, v3

    if-gez v2, :cond_cf

    .line 715
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->performClick()Z

    goto/16 :goto_2e

    .line 717
    :cond_cf
    invoke-direct {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getStatusBasedOnPos()Z

    move-result v2

    .line 718
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->isChecked()Z

    move-result v3

    if-eq v2, v3, :cond_e1

    .line 719
    invoke-virtual {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->playSoundEffect(I)V

    .line 720
    invoke-virtual {p0, v2}, Lcom/kyleduo/switchbutton/SwitchButton;->setChecked(Z)V

    goto/16 :goto_2e

    .line 722
    :cond_e1
    invoke-virtual {p0, v2}, Lcom/kyleduo/switchbutton/SwitchButton;->animateToState(Z)V

    goto/16 :goto_2e

    .line 688
    :pswitch_data_e6
    .packed-switch 0x0
        :pswitch_30
        :pswitch_9e
        :pswitch_44
        :pswitch_9e
    .end packed-switch
.end method

.method public performClick()Z
    .registers 2

    .prologue
    .line 760
    invoke-super {p0}, Landroid/widget/CompoundButton;->performClick()Z

    move-result v0

    return v0
.end method

.method public setAnimationDuration(J)V
    .registers 4

    .prologue
    .line 886
    iput-wide p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mAnimationDuration:J

    .line 887
    return-void
.end method

.method public setBackColor(Landroid/content/res/ColorStateList;)V
    .registers 3

    .prologue
    .line 928
    iput-object p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackColor:Landroid/content/res/ColorStateList;

    .line 929
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackColor:Landroid/content/res/ColorStateList;

    if-eqz v0, :cond_a

    .line 930
    const/4 v0, 0x0

    invoke-virtual {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->setBackDrawable(Landroid/graphics/drawable/Drawable;)V

    .line 932
    :cond_a
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 933
    return-void
.end method

.method public setBackColorRes(I)V
    .registers 3

    .prologue
    .line 936
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getContext()Landroid/content/Context;

    move-result-object v0

    invoke-static {v0, p1}, Landroid/support/v4/content/ContextCompat;->getColorStateList(Landroid/content/Context;I)Landroid/content/res/ColorStateList;

    move-result-object v0

    invoke-virtual {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->setBackColor(Landroid/content/res/ColorStateList;)V

    .line 937
    return-void
.end method

.method public setBackDrawable(Landroid/graphics/drawable/Drawable;)V
    .registers 4

    .prologue
    const/4 v1, 0x0

    .line 911
    iput-object p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    .line 912
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackDrawable:Landroid/graphics/drawable/Drawable;

    if-eqz v0, :cond_16

    const/4 v0, 0x1

    :goto_8
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsBackUseDrawable:Z

    .line 913
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->refreshDrawableState()V

    .line 914
    iput-boolean v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    .line 915
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->requestLayout()V

    .line 916
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 917
    return-void

    :cond_16
    move v0, v1

    .line 912
    goto :goto_8
.end method

.method public setBackDrawableRes(I)V
    .registers 3

    .prologue
    .line 920
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getContext()Landroid/content/Context;

    move-result-object v0

    invoke-static {v0, p1}, Landroid/support/v4/content/ContextCompat;->getDrawable(Landroid/content/Context;I)Landroid/graphics/drawable/Drawable;

    move-result-object v0

    invoke-virtual {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->setBackDrawable(Landroid/graphics/drawable/Drawable;)V

    .line 921
    return-void
.end method

.method public setBackRadius(F)V
    .registers 3

    .prologue
    .line 1019
    iput p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackRadius:F

    .line 1020
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsBackUseDrawable:Z

    if-nez v0, :cond_9

    .line 1021
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 1023
    :cond_9
    return-void
.end method

.method public setChecked(Z)V
    .registers 3

    .prologue
    .line 795
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->isChecked()Z

    move-result v0

    if-eq v0, p1, :cond_9

    .line 796
    invoke-virtual {p0, p1}, Lcom/kyleduo/switchbutton/SwitchButton;->animateToState(Z)V

    .line 798
    :cond_9
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mRestoring:Z

    if-eqz v0, :cond_11

    .line 799
    invoke-virtual {p0, p1}, Lcom/kyleduo/switchbutton/SwitchButton;->setCheckedImmediatelyNoEvent(Z)V

    .line 803
    :goto_10
    return-void

    .line 801
    :cond_11
    invoke-super {p0, p1}, Landroid/widget/CompoundButton;->setChecked(Z)V

    goto :goto_10
.end method

.method public setCheckedImmediately(Z)V
    .registers 3

    .prologue
    .line 852
    invoke-super {p0, p1}, Landroid/widget/CompoundButton;->setChecked(Z)V

    .line 853
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    if-eqz v0, :cond_14

    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    invoke-virtual {v0}, Landroid/animation/ObjectAnimator;->isRunning()Z

    move-result v0

    if-eqz v0, :cond_14

    .line 854
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mProgressAnimator:Landroid/animation/ObjectAnimator;

    invoke-virtual {v0}, Landroid/animation/ObjectAnimator;->cancel()V

    .line 856
    :cond_14
    if-eqz p1, :cond_1f

    const/high16 v0, 0x3f800000    # 1.0f

    :goto_18
    invoke-direct {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->setProgress(F)V

    .line 857
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 858
    return-void

    .line 856
    :cond_1f
    const/4 v0, 0x0

    goto :goto_18
.end method

.method public setCheckedImmediatelyNoEvent(Z)V
    .registers 3

    .prologue
    .line 816
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mChildOnCheckedChangeListener:Landroid/widget/CompoundButton$OnCheckedChangeListener;

    if-nez v0, :cond_8

    .line 817
    invoke-virtual {p0, p1}, Lcom/kyleduo/switchbutton/SwitchButton;->setCheckedImmediately(Z)V

    .line 823
    :goto_7
    return-void

    .line 819
    :cond_8
    const/4 v0, 0x0

    invoke-super {p0, v0}, Landroid/widget/CompoundButton;->setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V

    .line 820
    invoke-virtual {p0, p1}, Lcom/kyleduo/switchbutton/SwitchButton;->setCheckedImmediately(Z)V

    .line 821
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mChildOnCheckedChangeListener:Landroid/widget/CompoundButton$OnCheckedChangeListener;

    invoke-super {p0, v0}, Landroid/widget/CompoundButton;->setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V

    goto :goto_7
.end method

.method public setCheckedNoEvent(Z)V
    .registers 3

    .prologue
    .line 806
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mChildOnCheckedChangeListener:Landroid/widget/CompoundButton$OnCheckedChangeListener;

    if-nez v0, :cond_8

    .line 807
    invoke-virtual {p0, p1}, Lcom/kyleduo/switchbutton/SwitchButton;->setChecked(Z)V

    .line 813
    :goto_7
    return-void

    .line 809
    :cond_8
    const/4 v0, 0x0

    invoke-super {p0, v0}, Landroid/widget/CompoundButton;->setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V

    .line 810
    invoke-virtual {p0, p1}, Lcom/kyleduo/switchbutton/SwitchButton;->setChecked(Z)V

    .line 811
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mChildOnCheckedChangeListener:Landroid/widget/CompoundButton$OnCheckedChangeListener;

    invoke-super {p0, v0}, Landroid/widget/CompoundButton;->setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V

    goto :goto_7
.end method

.method public setDrawDebugRect(Z)V
    .registers 2

    .prologue
    .line 877
    iput-boolean p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mDrawDebugRect:Z

    .line 878
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 879
    return-void
.end method

.method public setFadeBack(Z)V
    .registers 2

    .prologue
    .line 1030
    iput-boolean p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mFadeBack:Z

    .line 1031
    return-void
.end method

.method public setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V
    .registers 2

    .prologue
    .line 847
    invoke-super {p0, p1}, Landroid/widget/CompoundButton;->setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V

    .line 848
    iput-object p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mChildOnCheckedChangeListener:Landroid/widget/CompoundButton$OnCheckedChangeListener;

    .line 849
    return-void
.end method

.method public setText(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)V
    .registers 4

    .prologue
    const/4 v0, 0x0

    .line 1049
    iput-object p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOn:Ljava/lang/CharSequence;

    .line 1050
    iput-object p2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextOff:Ljava/lang/CharSequence;

    .line 1052
    iput-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOnLayout:Landroid/text/Layout;

    .line 1053
    iput-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mOffLayout:Landroid/text/Layout;

    .line 1055
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    .line 1056
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->requestLayout()V

    .line 1057
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 1058
    return-void
.end method

.method public setTextAdjust(I)V
    .registers 3

    .prologue
    .line 1083
    iput p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextAdjust:I

    .line 1084
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    .line 1085
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->requestLayout()V

    .line 1086
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 1087
    return-void
.end method

.method public setTextExtra(I)V
    .registers 3

    .prologue
    .line 1076
    iput p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextExtra:I

    .line 1077
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    .line 1078
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->requestLayout()V

    .line 1079
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 1080
    return-void
.end method

.method public setTextThumbInset(I)V
    .registers 3

    .prologue
    .line 1069
    iput p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTextThumbInset:I

    .line 1070
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    .line 1071
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->requestLayout()V

    .line 1072
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 1073
    return-void
.end method

.method public setThumbColor(Landroid/content/res/ColorStateList;)V
    .registers 3

    .prologue
    .line 944
    iput-object p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbColor:Landroid/content/res/ColorStateList;

    .line 945
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbColor:Landroid/content/res/ColorStateList;

    if-eqz v0, :cond_a

    .line 946
    const/4 v0, 0x0

    invoke-virtual {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->setThumbDrawable(Landroid/graphics/drawable/Drawable;)V

    .line 948
    :cond_a
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 949
    return-void
.end method

.method public setThumbColorRes(I)V
    .registers 3

    .prologue
    .line 952
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getContext()Landroid/content/Context;

    move-result-object v0

    invoke-static {v0, p1}, Landroid/support/v4/content/ContextCompat;->getColorStateList(Landroid/content/Context;I)Landroid/content/res/ColorStateList;

    move-result-object v0

    invoke-virtual {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->setThumbColor(Landroid/content/res/ColorStateList;)V

    .line 953
    return-void
.end method

.method public setThumbDrawable(Landroid/graphics/drawable/Drawable;)V
    .registers 4

    .prologue
    const/4 v1, 0x0

    .line 894
    iput-object p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbDrawable:Landroid/graphics/drawable/Drawable;

    .line 895
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbDrawable:Landroid/graphics/drawable/Drawable;

    if-eqz v0, :cond_16

    const/4 v0, 0x1

    :goto_8
    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsThumbUseDrawable:Z

    .line 896
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->refreshDrawableState()V

    .line 897
    iput-boolean v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    .line 898
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->requestLayout()V

    .line 899
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 900
    return-void

    :cond_16
    move v0, v1

    .line 895
    goto :goto_8
.end method

.method public setThumbDrawableRes(I)V
    .registers 3

    .prologue
    .line 903
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->getContext()Landroid/content/Context;

    move-result-object v0

    invoke-static {v0, p1}, Landroid/support/v4/content/ContextCompat;->getDrawable(Landroid/content/Context;I)Landroid/graphics/drawable/Drawable;

    move-result-object v0

    invoke-virtual {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->setThumbDrawable(Landroid/graphics/drawable/Drawable;)V

    .line 904
    return-void
.end method

.method public setThumbMargin(FFFF)V
    .registers 6

    .prologue
    .line 979
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbMargin:Landroid/graphics/RectF;

    invoke-virtual {v0, p1, p2, p3, p4}, Landroid/graphics/RectF;->set(FFFF)V

    .line 980
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    .line 981
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->requestLayout()V

    .line 982
    return-void
.end method

.method public setThumbMargin(Landroid/graphics/RectF;)V
    .registers 6

    .prologue
    const/4 v0, 0x0

    .line 971
    if-nez p1, :cond_7

    .line 972
    invoke-virtual {p0, v0, v0, v0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->setThumbMargin(FFFF)V

    .line 976
    :goto_6
    return-void

    .line 974
    :cond_7
    iget v0, p1, Landroid/graphics/RectF;->left:F

    iget v1, p1, Landroid/graphics/RectF;->top:F

    iget v2, p1, Landroid/graphics/RectF;->right:F

    iget v3, p1, Landroid/graphics/RectF;->bottom:F

    invoke-virtual {p0, v0, v1, v2, v3}, Lcom/kyleduo/switchbutton/SwitchButton;->setThumbMargin(FFFF)V

    goto :goto_6
.end method

.method public setThumbRadius(F)V
    .registers 3

    .prologue
    .line 1004
    iput p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRadius:F

    .line 1005
    iget-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsThumbUseDrawable:Z

    if-nez v0, :cond_9

    .line 1006
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 1008
    :cond_9
    return-void
.end method

.method public setThumbRangeRatio(F)V
    .registers 3

    .prologue
    .line 960
    iput p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbRangeRatio:F

    .line 962
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    .line 963
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->requestLayout()V

    .line 964
    return-void
.end method

.method public setThumbSize(II)V
    .registers 4

    .prologue
    .line 985
    iput p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbWidth:I

    .line 986
    iput p2, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbHeight:I

    .line 987
    const/4 v0, 0x0

    iput-boolean v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mReady:Z

    .line 988
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->requestLayout()V

    .line 989
    return-void
.end method

.method public setTintColor(I)V
    .registers 4

    .prologue
    const/4 v1, 0x0

    .line 1038
    iput p1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTintColor:I

    .line 1039
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTintColor:I

    invoke-static {v0}, Lcom/kyleduo/switchbutton/a;->a(I)Landroid/content/res/ColorStateList;

    move-result-object v0

    iput-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mThumbColor:Landroid/content/res/ColorStateList;

    .line 1040
    iget v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mTintColor:I

    invoke-static {v0}, Lcom/kyleduo/switchbutton/a;->b(I)Landroid/content/res/ColorStateList;

    move-result-object v0

    iput-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mBackColor:Landroid/content/res/ColorStateList;

    .line 1041
    iput-boolean v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsBackUseDrawable:Z

    .line 1042
    iput-boolean v1, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mIsThumbUseDrawable:Z

    .line 1044
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->refreshDrawableState()V

    .line 1045
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->invalidate()V

    .line 1046
    return-void
.end method

.method public toggleImmediately()V
    .registers 2

    .prologue
    .line 861
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->isChecked()Z

    move-result v0

    if-nez v0, :cond_b

    const/4 v0, 0x1

    :goto_7
    invoke-virtual {p0, v0}, Lcom/kyleduo/switchbutton/SwitchButton;->setCheckedImmediately(Z)V

    .line 862
    return-void

    .line 861
    :cond_b
    const/4 v0, 0x0

    goto :goto_7
.end method

.method public toggleImmediatelyNoEvent()V
    .registers 2

    .prologue
    .line 836
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mChildOnCheckedChangeListener:Landroid/widget/CompoundButton$OnCheckedChangeListener;

    if-nez v0, :cond_8

    .line 837
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->toggleImmediately()V

    .line 843
    :goto_7
    return-void

    .line 839
    :cond_8
    const/4 v0, 0x0

    invoke-super {p0, v0}, Landroid/widget/CompoundButton;->setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V

    .line 840
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->toggleImmediately()V

    .line 841
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mChildOnCheckedChangeListener:Landroid/widget/CompoundButton$OnCheckedChangeListener;

    invoke-super {p0, v0}, Landroid/widget/CompoundButton;->setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V

    goto :goto_7
.end method

.method public toggleNoEvent()V
    .registers 2

    .prologue
    .line 826
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mChildOnCheckedChangeListener:Landroid/widget/CompoundButton$OnCheckedChangeListener;

    if-nez v0, :cond_8

    .line 827
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->toggle()V

    .line 833
    :goto_7
    return-void

    .line 829
    :cond_8
    const/4 v0, 0x0

    invoke-super {p0, v0}, Landroid/widget/CompoundButton;->setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V

    .line 830
    invoke-virtual {p0}, Lcom/kyleduo/switchbutton/SwitchButton;->toggle()V

    .line 831
    iget-object v0, p0, Lcom/kyleduo/switchbutton/SwitchButton;->mChildOnCheckedChangeListener:Landroid/widget/CompoundButton$OnCheckedChangeListener;

    invoke-super {p0, v0}, Landroid/widget/CompoundButton;->setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V

    goto :goto_7
.end method