MZScaleInTransformer.smali

.class public Lim/tpelyyftgw/ui/components/banner/transformer/MZScaleInTransformer;
.super Lim/tpelyyftgw/ui/components/banner/transformer/BasePageTransformer;
.source "MZScaleInTransformer.java"


# static fields
.field private static final DEFAULT_MIN_SCALE:F = 0.85f


# instance fields
.field private mMinScale:F


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

    return-void
.end method

.method public constructor <init>()V
    .registers 2

    .line 17
    invoke-direct {p0}, Lim/tpelyyftgw/ui/components/banner/transformer/BasePageTransformer;-><init>()V

    .line 15
    const v0, 0x3f59999a    # 0.85f

    iput v0, p0, Lim/tpelyyftgw/ui/components/banner/transformer/MZScaleInTransformer;->mMinScale:F

    .line 18
    return-void
.end method

.method public constructor <init>(F)V
    .registers 3
    .param p1, "minScale"    # F

    .line 20
    invoke-direct {p0}, Lim/tpelyyftgw/ui/components/banner/transformer/BasePageTransformer;-><init>()V

    .line 15
    const v0, 0x3f59999a    # 0.85f

    iput v0, p0, Lim/tpelyyftgw/ui/components/banner/transformer/MZScaleInTransformer;->mMinScale:F

    .line 21
    iput p1, p0, Lim/tpelyyftgw/ui/components/banner/transformer/MZScaleInTransformer;->mMinScale:F

    .line 22
    return-void
.end method

.method private requireViewPager(Landroid/view/View;)Landroidx/viewpager2/widget/ViewPager2;
    .registers 6
    .param p1, "page"    # Landroid/view/View;

    .line 63
    invoke-virtual {p1}, Landroid/view/View;->getParent()Landroid/view/ViewParent;

    move-result-object v0

    .line 64
    .local v0, "parent":Landroid/view/ViewParent;
    invoke-interface {v0}, Landroid/view/ViewParent;->getParent()Landroid/view/ViewParent;

    move-result-object v1

    .line 66
    .local v1, "parentParent":Landroid/view/ViewParent;
    instance-of v2, v0, Landroidx/recyclerview/widget/RecyclerView;

    if-eqz v2, :cond_14

    instance-of v2, v1, Landroidx/viewpager2/widget/ViewPager2;

    if-eqz v2, :cond_14

    .line 67
    move-object v2, v1

    check-cast v2, Landroidx/viewpager2/widget/ViewPager2;

    return-object v2

    .line 70
    :cond_14
    new-instance v2, Ljava/lang/IllegalStateException;

    const-string v3, "Expected the page view to be managed by a ViewPager2 instance."

    invoke-direct {v2, v3}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V

    throw v2
.end method


# virtual methods
.method public transformPage(Landroid/view/View;F)V
    .registers 21
    .param p1, "view"    # Landroid/view/View;
    .param p2, "position"    # F

    .line 26
    move-object/from16 v0, p0

    move-object/from16 v1, p1

    invoke-direct/range {p0 .. p1}, Lim/tpelyyftgw/ui/components/banner/transformer/MZScaleInTransformer;->requireViewPager(Landroid/view/View;)Landroidx/viewpager2/widget/ViewPager2;

    move-result-object v2

    .line 27
    .local v2, "viewPager":Landroidx/viewpager2/widget/ViewPager2;
    invoke-virtual {v2}, Landroidx/viewpager2/widget/ViewPager2;->getPaddingLeft()I

    move-result v3

    int-to-float v3, v3

    .line 28
    .local v3, "paddingLeft":F
    invoke-virtual {v2}, Landroidx/viewpager2/widget/ViewPager2;->getPaddingRight()I

    move-result v4

    int-to-float v4, v4

    .line 29
    .local v4, "paddingRight":F
    invoke-virtual {v2}, Landroidx/viewpager2/widget/ViewPager2;->getMeasuredWidth()I

    move-result v5

    int-to-float v5, v5

    .line 30
    .local v5, "width":F
    sub-float v6, v5, v3

    sub-float/2addr v6, v4

    div-float v6, v3, v6

    .line 31
    .local v6, "offsetPosition":F
    sub-float v7, p2, v6

    .line 32
    .local v7, "currentPos":F
    const/4 v8, 0x0

    .line 33
    .local v8, "reduceX":F
    invoke-virtual/range {p1 .. p1}, Landroid/view/View;->getWidth()I

    move-result v9

    int-to-float v9, v9

    .line 35
    .local v9, "itemWidth":F
    iget v10, v0, Lim/tpelyyftgw/ui/components/banner/transformer/MZScaleInTransformer;->mMinScale:F

    const/high16 v11, 0x3f800000    # 1.0f

    sub-float v12, v11, v10

    mul-float v12, v12, v9

    const/high16 v13, 0x40000000    # 2.0f

    div-float/2addr v12, v13

    .line 36
    .end local v8    # "reduceX":F
    .local v12, "reduceX":F
    const/high16 v8, -0x40800000    # -1.0f

    cmpg-float v8, v7, v8

    if-gtz v8, :cond_43

    .line 37
    invoke-virtual {v1, v12}, Landroid/view/View;->setTranslationX(F)V

    .line 38
    iget v8, v0, Lim/tpelyyftgw/ui/components/banner/transformer/MZScaleInTransformer;->mMinScale:F

    invoke-virtual {v1, v8}, Landroid/view/View;->setScaleX(F)V

    .line 39
    iget v8, v0, Lim/tpelyyftgw/ui/components/banner/transformer/MZScaleInTransformer;->mMinScale:F

    invoke-virtual {v1, v8}, Landroid/view/View;->setScaleY(F)V

    goto :goto_ae

    .line 40
    :cond_43
    float-to-double v13, v7

    const-wide/high16 v15, 0x3ff0000000000000L    # 1.0

    cmpg-double v8, v13, v15

    if-gtz v8, :cond_a2

    .line 41
    sub-float v8, v11, v10

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

    move-result v10

    sub-float/2addr v11, v10

    invoke-static {v11}, Ljava/lang/Math;->abs(F)F

    move-result v10

    mul-float v8, v8, v10

    .line 42
    .local v8, "scale":F
    neg-float v10, v12

    mul-float v10, v10, v7

    .line 43
    .local v10, "translationX":F
    float-to-double v13, v7

    const-wide/high16 v15, -0x4020000000000000L    # -0.5

    const/high16 v11, 0x3f000000    # 0.5f

    cmpg-double v17, v13, v15

    if-gtz v17, :cond_72

    .line 44
    invoke-static {v7}, Ljava/lang/Math;->abs(F)F

    move-result v13

    sub-float/2addr v13, v11

    invoke-static {v13}, Ljava/lang/Math;->abs(F)F

    move-result v13

    div-float/2addr v13, v11

    add-float/2addr v13, v10

    invoke-virtual {v1, v13}, Landroid/view/View;->setTranslationX(F)V

    goto :goto_95

    .line 45
    :cond_72
    const/4 v13, 0x0

    cmpg-float v13, v7, v13

    if-gtz v13, :cond_7b

    .line 46
    invoke-virtual {v1, v10}, Landroid/view/View;->setTranslationX(F)V

    goto :goto_95

    .line 47
    :cond_7b
    float-to-double v13, v7

    const-wide/high16 v15, 0x3fe0000000000000L    # 0.5

    cmpl-double v17, v13, v15

    if-ltz v17, :cond_92

    .line 48
    invoke-static {v7}, Ljava/lang/Math;->abs(F)F

    move-result v13

    sub-float/2addr v13, v11

    invoke-static {v13}, Ljava/lang/Math;->abs(F)F

    move-result v13

    div-float/2addr v13, v11

    sub-float v11, v10, v13

    invoke-virtual {v1, v11}, Landroid/view/View;->setTranslationX(F)V

    goto :goto_95

    .line 50
    :cond_92
    invoke-virtual {v1, v10}, Landroid/view/View;->setTranslationX(F)V

    .line 52
    :goto_95
    iget v11, v0, Lim/tpelyyftgw/ui/components/banner/transformer/MZScaleInTransformer;->mMinScale:F

    add-float/2addr v11, v8

    invoke-virtual {v1, v11}, Landroid/view/View;->setScaleX(F)V

    .line 53
    iget v11, v0, Lim/tpelyyftgw/ui/components/banner/transformer/MZScaleInTransformer;->mMinScale:F

    add-float/2addr v11, v8

    invoke-virtual {v1, v11}, Landroid/view/View;->setScaleY(F)V

    .line 54
    .end local v8    # "scale":F
    .end local v10    # "translationX":F
    goto :goto_ae

    .line 55
    :cond_a2
    invoke-virtual {v1, v10}, Landroid/view/View;->setScaleX(F)V

    .line 56
    iget v8, v0, Lim/tpelyyftgw/ui/components/banner/transformer/MZScaleInTransformer;->mMinScale:F

    invoke-virtual {v1, v8}, Landroid/view/View;->setScaleY(F)V

    .line 57
    neg-float v8, v12

    invoke-virtual {v1, v8}, Landroid/view/View;->setTranslationX(F)V

    .line 60
    :goto_ae
    return-void
.end method