This commit is contained in:
2022-06-10 21:38:30 +09:00
commit 27f5152838
51323 changed files with 12934539 additions and 0 deletions
@@ -0,0 +1,185 @@
.class Lcom/google/android/material/tabs/ElasticTabIndicatorInterpolator;
.super Lcom/google/android/material/tabs/TabIndicatorInterpolator;
.source "ElasticTabIndicatorInterpolator.java"
# direct methods
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Lcom/google/android/material/tabs/TabIndicatorInterpolator;-><init>()V
return-void
.end method
.method private static accInterp(F)F
.locals 4
.param p0 # F
.annotation build Landroidx/annotation/FloatRange;
from = 0.0
to = 1.0
.end annotation
.end param
float-to-double v0, p0
const-wide v2, 0x400921fb54442d18L # Math.PI
mul-double/2addr v0, v2
const-wide/high16 v2, 0x4000000000000000L # 2.0
div-double/2addr v0, v2
.line 1
invoke-static {v0, v1}, Ljava/lang/Math;->cos(D)D
move-result-wide v0
const-wide/high16 v2, 0x3ff0000000000000L # 1.0
sub-double/2addr v2, v0
double-to-float p0, v2
return p0
.end method
.method private static decInterp(F)F
.locals 4
.param p0 # F
.annotation build Landroidx/annotation/FloatRange;
from = 0.0
to = 1.0
.end annotation
.end param
float-to-double v0, p0
const-wide v2, 0x400921fb54442d18L # Math.PI
mul-double/2addr v0, v2
const-wide/high16 v2, 0x4000000000000000L # 2.0
div-double/2addr v0, v2
.line 1
invoke-static {v0, v1}, Ljava/lang/Math;->sin(D)D
move-result-wide v0
double-to-float p0, v0
return p0
.end method
# virtual methods
.method public setIndicatorBoundsForOffset(Lcom/google/android/material/tabs/TabLayout;Landroid/view/View;Landroid/view/View;FLandroid/graphics/drawable/Drawable;)V
.locals 2
.param p5 # Landroid/graphics/drawable/Drawable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 1
invoke-static {p1, p2}, Lcom/google/android/material/tabs/TabIndicatorInterpolator;->calculateIndicatorWidthForTab(Lcom/google/android/material/tabs/TabLayout;Landroid/view/View;)Landroid/graphics/RectF;
move-result-object p2
.line 2
invoke-static {p1, p3}, Lcom/google/android/material/tabs/TabIndicatorInterpolator;->calculateIndicatorWidthForTab(Lcom/google/android/material/tabs/TabLayout;Landroid/view/View;)Landroid/graphics/RectF;
move-result-object p1
.line 3
iget p3, p2, Landroid/graphics/RectF;->left:F
iget v0, p1, Landroid/graphics/RectF;->left:F
cmpg-float p3, p3, v0
if-gez p3, :cond_0
const/4 p3, 0x1
goto :goto_0
:cond_0
const/4 p3, 0x0
:goto_0
if-eqz p3, :cond_1
.line 4
invoke-static {p4}, Lcom/google/android/material/tabs/ElasticTabIndicatorInterpolator;->accInterp(F)F
move-result p3
.line 5
invoke-static {p4}, Lcom/google/android/material/tabs/ElasticTabIndicatorInterpolator;->decInterp(F)F
move-result p4
goto :goto_1
.line 6
:cond_1
invoke-static {p4}, Lcom/google/android/material/tabs/ElasticTabIndicatorInterpolator;->decInterp(F)F
move-result p3
.line 7
invoke-static {p4}, Lcom/google/android/material/tabs/ElasticTabIndicatorInterpolator;->accInterp(F)F
move-result p4
.line 8
:goto_1
iget v0, p2, Landroid/graphics/RectF;->left:F
float-to-int v0, v0
iget v1, p1, Landroid/graphics/RectF;->left:F
float-to-int v1, v1
.line 9
invoke-static {v0, v1, p3}, Lcom/google/android/material/animation/AnimationUtils;->lerp(IIF)I
move-result p3
.line 10
invoke-virtual {p5}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object v0
iget v0, v0, Landroid/graphics/Rect;->top:I
iget p2, p2, Landroid/graphics/RectF;->right:F
float-to-int p2, p2
iget p1, p1, Landroid/graphics/RectF;->right:F
float-to-int p1, p1
.line 11
invoke-static {p2, p1, p4}, Lcom/google/android/material/animation/AnimationUtils;->lerp(IIF)I
move-result p1
.line 12
invoke-virtual {p5}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object p2
iget p2, p2, Landroid/graphics/Rect;->bottom:I
.line 13
invoke-virtual {p5, p3, v0, p1, p2}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V
return-void
.end method
@@ -0,0 +1,304 @@
.class Lcom/google/android/material/tabs/TabIndicatorInterpolator;
.super Ljava/lang/Object;
.source "TabIndicatorInterpolator.java"
# static fields
.field private static final MIN_INDICATOR_WIDTH:I = 0x18
.annotation build Landroidx/annotation/Dimension;
unit = 0x0
.end annotation
.end field
# direct methods
.method public constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static calculateIndicatorWidthForTab(Lcom/google/android/material/tabs/TabLayout;Landroid/view/View;)Landroid/graphics/RectF;
.locals 3
.param p1 # Landroid/view/View;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
if-nez p1, :cond_0
.line 1
new-instance p0, Landroid/graphics/RectF;
invoke-direct {p0}, Landroid/graphics/RectF;-><init>()V
return-object p0
.line 2
:cond_0
invoke-virtual {p0}, Lcom/google/android/material/tabs/TabLayout;->isTabIndicatorFullWidth()Z
move-result p0
if-nez p0, :cond_1
instance-of p0, p1, Lcom/google/android/material/tabs/TabLayout$TabView;
if-eqz p0, :cond_1
.line 3
check-cast p1, Lcom/google/android/material/tabs/TabLayout$TabView;
const/16 p0, 0x18
invoke-static {p1, p0}, Lcom/google/android/material/tabs/TabIndicatorInterpolator;->calculateTabViewContentBounds(Lcom/google/android/material/tabs/TabLayout$TabView;I)Landroid/graphics/RectF;
move-result-object p0
return-object p0
.line 4
:cond_1
new-instance p0, Landroid/graphics/RectF;
invoke-virtual {p1}, Landroid/view/View;->getLeft()I
move-result v0
int-to-float v0, v0
invoke-virtual {p1}, Landroid/view/View;->getTop()I
move-result v1
int-to-float v1, v1
invoke-virtual {p1}, Landroid/view/View;->getRight()I
move-result v2
int-to-float v2, v2
invoke-virtual {p1}, Landroid/view/View;->getBottom()I
move-result p1
int-to-float p1, p1
invoke-direct {p0, v0, v1, v2, p1}, Landroid/graphics/RectF;-><init>(FFFF)V
return-object p0
.end method
.method public static calculateTabViewContentBounds(Lcom/google/android/material/tabs/TabLayout$TabView;I)Landroid/graphics/RectF;
.locals 3
.param p0 # Lcom/google/android/material/tabs/TabLayout$TabView;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p1 # I
.annotation build Landroidx/annotation/Dimension;
unit = 0x0
.end annotation
.end param
.line 1
invoke-virtual {p0}, Lcom/google/android/material/tabs/TabLayout$TabView;->getContentWidth()I
move-result v0
.line 2
invoke-virtual {p0}, Lcom/google/android/material/tabs/TabLayout$TabView;->getContentHeight()I
move-result v1
.line 3
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getContext()Landroid/content/Context;
move-result-object v2
invoke-static {v2, p1}, Lcom/google/android/material/internal/ViewUtils;->dpToPx(Landroid/content/Context;I)F
move-result p1
float-to-int p1, p1
if-ge v0, p1, :cond_0
move v0, p1
.line 4
:cond_0
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getLeft()I
move-result p1
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getRight()I
move-result v2
add-int/2addr v2, p1
div-int/lit8 v2, v2, 0x2
.line 5
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getTop()I
move-result p1
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getBottom()I
move-result p0
add-int/2addr p0, p1
div-int/lit8 p0, p0, 0x2
.line 6
div-int/lit8 v0, v0, 0x2
sub-int p1, v2, v0
.line 7
div-int/lit8 v1, v1, 0x2
sub-int v1, p0, v1
add-int/2addr v0, v2
.line 8
div-int/lit8 v2, v2, 0x2
add-int/2addr v2, p0
.line 9
new-instance p0, Landroid/graphics/RectF;
int-to-float p1, p1
int-to-float v1, v1
int-to-float v0, v0
int-to-float v2, v2
invoke-direct {p0, p1, v1, v0, v2}, Landroid/graphics/RectF;-><init>(FFFF)V
return-object p0
.end method
# virtual methods
.method public setIndicatorBoundsForOffset(Lcom/google/android/material/tabs/TabLayout;Landroid/view/View;Landroid/view/View;FLandroid/graphics/drawable/Drawable;)V
.locals 1
.param p4 # F
.annotation build Landroidx/annotation/FloatRange;
from = 0.0
to = 1.0
.end annotation
.end param
.param p5 # Landroid/graphics/drawable/Drawable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 1
invoke-static {p1, p2}, Lcom/google/android/material/tabs/TabIndicatorInterpolator;->calculateIndicatorWidthForTab(Lcom/google/android/material/tabs/TabLayout;Landroid/view/View;)Landroid/graphics/RectF;
move-result-object p2
.line 2
invoke-static {p1, p3}, Lcom/google/android/material/tabs/TabIndicatorInterpolator;->calculateIndicatorWidthForTab(Lcom/google/android/material/tabs/TabLayout;Landroid/view/View;)Landroid/graphics/RectF;
move-result-object p1
.line 3
iget p3, p2, Landroid/graphics/RectF;->left:F
float-to-int p3, p3
iget v0, p1, Landroid/graphics/RectF;->left:F
float-to-int v0, v0
.line 4
invoke-static {p3, v0, p4}, Lcom/google/android/material/animation/AnimationUtils;->lerp(IIF)I
move-result p3
.line 5
invoke-virtual {p5}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object v0
iget v0, v0, Landroid/graphics/Rect;->top:I
iget p2, p2, Landroid/graphics/RectF;->right:F
float-to-int p2, p2
iget p1, p1, Landroid/graphics/RectF;->right:F
float-to-int p1, p1
.line 6
invoke-static {p2, p1, p4}, Lcom/google/android/material/animation/AnimationUtils;->lerp(IIF)I
move-result p1
.line 7
invoke-virtual {p5}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object p2
iget p2, p2, Landroid/graphics/Rect;->bottom:I
.line 8
invoke-virtual {p5, p3, v0, p1, p2}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V
return-void
.end method
.method public setIndicatorBoundsForTab(Lcom/google/android/material/tabs/TabLayout;Landroid/view/View;Landroid/graphics/drawable/Drawable;)V
.locals 2
.param p3 # Landroid/graphics/drawable/Drawable;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 1
invoke-static {p1, p2}, Lcom/google/android/material/tabs/TabIndicatorInterpolator;->calculateIndicatorWidthForTab(Lcom/google/android/material/tabs/TabLayout;Landroid/view/View;)Landroid/graphics/RectF;
move-result-object p1
.line 2
iget p2, p1, Landroid/graphics/RectF;->left:F
float-to-int p2, p2
.line 3
invoke-virtual {p3}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object v0
iget v0, v0, Landroid/graphics/Rect;->top:I
iget p1, p1, Landroid/graphics/RectF;->right:F
float-to-int p1, p1
.line 4
invoke-virtual {p3}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object v1
iget v1, v1, Landroid/graphics/Rect;->bottom:I
.line 5
invoke-virtual {p3, p2, v0, p1, v1}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V
return-void
.end method
@@ -0,0 +1,73 @@
.class public Lcom/google/android/material/tabs/TabItem;
.super Landroid/view/View;
.source "TabItem.java"
# instance fields
.field public final customLayout:I
.field public final icon:Landroid/graphics/drawable/Drawable;
.field public final text:Ljava/lang/CharSequence;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 1
const/4 v0, 0x0
.line 1
invoke-direct {p0, p1, v0}, Lcom/google/android/material/tabs/TabItem;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 1
.line 2
invoke-direct {p0, p1, p2}, Landroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.line 3
sget-object v0, Lcom/google/android/material/R$styleable;->TabItem:[I
.line 4
invoke-static {p1, p2, v0}, Landroidx/appcompat/widget/j0;->F(Landroid/content/Context;Landroid/util/AttributeSet;[I)Landroidx/appcompat/widget/j0;
move-result-object p1
.line 5
sget p2, Lcom/google/android/material/R$styleable;->TabItem_android_text:I
invoke-virtual {p1, p2}, Landroidx/appcompat/widget/j0;->x(I)Ljava/lang/CharSequence;
move-result-object p2
iput-object p2, p0, Lcom/google/android/material/tabs/TabItem;->text:Ljava/lang/CharSequence;
.line 6
sget p2, Lcom/google/android/material/R$styleable;->TabItem_android_icon:I
invoke-virtual {p1, p2}, Landroidx/appcompat/widget/j0;->h(I)Landroid/graphics/drawable/Drawable;
move-result-object p2
iput-object p2, p0, Lcom/google/android/material/tabs/TabItem;->icon:Landroid/graphics/drawable/Drawable;
.line 7
sget p2, Lcom/google/android/material/R$styleable;->TabItem_android_layout:I
const/4 v0, 0x0
invoke-virtual {p1, p2, v0}, Landroidx/appcompat/widget/j0;->u(II)I
move-result p2
iput p2, p0, Lcom/google/android/material/tabs/TabItem;->customLayout:I
.line 8
invoke-virtual {p1}, Landroidx/appcompat/widget/j0;->I()V
return-void
.end method
@@ -0,0 +1,63 @@
.class Lcom/google/android/material/tabs/TabLayout$1;
.super Ljava/lang/Object;
.source "TabLayout.java"
# interfaces
.implements Landroid/animation/ValueAnimator$AnimatorUpdateListener;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/google/android/material/tabs/TabLayout;->ensureScrollAnimator()V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic this$0:Lcom/google/android/material/tabs/TabLayout;
# direct methods
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayout;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$1;->this$0:Lcom/google/android/material/tabs/TabLayout;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public onAnimationUpdate(Landroid/animation/ValueAnimator;)V
.locals 2
.param p1 # Landroid/animation/ValueAnimator;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$1;->this$0:Lcom/google/android/material/tabs/TabLayout;
invoke-virtual {p1}, Landroid/animation/ValueAnimator;->getAnimatedValue()Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/lang/Integer;
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
move-result p1
const/4 v1, 0x0
invoke-virtual {v0, p1, v1}, Landroid/widget/HorizontalScrollView;->scrollTo(II)V
return-void
.end method
@@ -0,0 +1,78 @@
.class Lcom/google/android/material/tabs/TabLayout$AdapterChangeListener;
.super Ljava/lang/Object;
.source "TabLayout.java"
# interfaces
.implements Landroidx/viewpager/widget/ViewPager$g;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = "AdapterChangeListener"
.end annotation
# instance fields
.field private autoRefresh:Z
.field public final synthetic this$0:Lcom/google/android/material/tabs/TabLayout;
# direct methods
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayout;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$AdapterChangeListener;->this$0:Lcom/google/android/material/tabs/TabLayout;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public onAdapterChanged(Landroidx/viewpager/widget/ViewPager;Ll3/a;Ll3/a;)V
.locals 1
.param p1 # Landroidx/viewpager/widget/ViewPager;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ll3/a;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.param p3 # Ll3/a;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.line 1
iget-object p2, p0, Lcom/google/android/material/tabs/TabLayout$AdapterChangeListener;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object v0, p2, Lcom/google/android/material/tabs/TabLayout;->viewPager:Landroidx/viewpager/widget/ViewPager;
if-ne v0, p1, :cond_0
.line 2
iget-boolean p1, p0, Lcom/google/android/material/tabs/TabLayout$AdapterChangeListener;->autoRefresh:Z
invoke-virtual {p2, p3, p1}, Lcom/google/android/material/tabs/TabLayout;->setPagerAdapter(Ll3/a;Z)V
:cond_0
return-void
.end method
.method public setAutoRefresh(Z)V
.locals 0
.line 1
iput-boolean p1, p0, Lcom/google/android/material/tabs/TabLayout$AdapterChangeListener;->autoRefresh:Z
return-void
.end method
@@ -0,0 +1,52 @@
.class public interface abstract Lcom/google/android/material/tabs/TabLayout$BaseOnTabSelectedListener;
.super Ljava/lang/Object;
.source "TabLayout.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x609
name = "BaseOnTabSelectedListener"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Lcom/google/android/material/tabs/TabLayout$Tab;",
">",
"Ljava/lang/Object;"
}
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
# virtual methods
.method public abstract onTabReselected(Lcom/google/android/material/tabs/TabLayout$Tab;)V
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;)V"
}
.end annotation
.end method
.method public abstract onTabSelected(Lcom/google/android/material/tabs/TabLayout$Tab;)V
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;)V"
}
.end annotation
.end method
.method public abstract onTabUnselected(Lcom/google/android/material/tabs/TabLayout$Tab;)V
.annotation system Ldalvik/annotation/Signature;
value = {
"(TT;)V"
}
.end annotation
.end method
@@ -0,0 +1,17 @@
.class public interface abstract annotation Lcom/google/android/material/tabs/TabLayout$LabelVisibility;
.super Ljava/lang/Object;
.source "TabLayout.java"
# interfaces
.implements Ljava/lang/annotation/Annotation;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2609
name = "LabelVisibility"
.end annotation
@@ -0,0 +1,27 @@
.class public interface abstract annotation Lcom/google/android/material/tabs/TabLayout$Mode;
.super Ljava/lang/Object;
.source "TabLayout.java"
# interfaces
.implements Ljava/lang/annotation/Annotation;
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2609
name = "Mode"
.end annotation
.annotation runtime Ljava/lang/annotation/Retention;
value = .enum Ljava/lang/annotation/RetentionPolicy;->SOURCE:Ljava/lang/annotation/RetentionPolicy;
.end annotation
@@ -0,0 +1,26 @@
.class public interface abstract Lcom/google/android/material/tabs/TabLayout$OnTabSelectedListener;
.super Ljava/lang/Object;
.source "TabLayout.java"
# interfaces
.implements Lcom/google/android/material/tabs/TabLayout$BaseOnTabSelectedListener;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x609
name = "OnTabSelectedListener"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Lcom/google/android/material/tabs/TabLayout$BaseOnTabSelectedListener<",
"Lcom/google/android/material/tabs/TabLayout$Tab;",
">;"
}
.end annotation
@@ -0,0 +1,55 @@
.class Lcom/google/android/material/tabs/TabLayout$PagerAdapterObserver;
.super Landroid/database/DataSetObserver;
.source "TabLayout.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = "PagerAdapterObserver"
.end annotation
# instance fields
.field public final synthetic this$0:Lcom/google/android/material/tabs/TabLayout;
# direct methods
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayout;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$PagerAdapterObserver;->this$0:Lcom/google/android/material/tabs/TabLayout;
invoke-direct {p0}, Landroid/database/DataSetObserver;-><init>()V
return-void
.end method
# virtual methods
.method public onChanged()V
.locals 1
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$PagerAdapterObserver;->this$0:Lcom/google/android/material/tabs/TabLayout;
invoke-virtual {v0}, Lcom/google/android/material/tabs/TabLayout;->populateFromPagerAdapter()V
return-void
.end method
.method public onInvalidated()V
.locals 1
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$PagerAdapterObserver;->this$0:Lcom/google/android/material/tabs/TabLayout;
invoke-virtual {v0}, Lcom/google/android/material/tabs/TabLayout;->populateFromPagerAdapter()V
return-void
.end method
@@ -0,0 +1,67 @@
.class Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$1;
.super Ljava/lang/Object;
.source "TabLayout.java"
# interfaces
.implements Landroid/animation/ValueAnimator$AnimatorUpdateListener;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->updateOrRecreateIndicatorAnimation(ZII)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic this$1:Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;
.field public final synthetic val$currentView:Landroid/view/View;
.field public final synthetic val$targetView:Landroid/view/View;
# direct methods
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;Landroid/view/View;Landroid/view/View;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$1;->this$1:Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;
iput-object p2, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$1;->val$currentView:Landroid/view/View;
iput-object p3, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$1;->val$targetView:Landroid/view/View;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public onAnimationUpdate(Landroid/animation/ValueAnimator;)V
.locals 3
.param p1 # Landroid/animation/ValueAnimator;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$1;->this$1:Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;
iget-object v1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$1;->val$currentView:Landroid/view/View;
iget-object v2, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$1;->val$targetView:Landroid/view/View;
invoke-virtual {p1}, Landroid/animation/ValueAnimator;->getAnimatedFraction()F
move-result p1
invoke-static {v0, v1, v2, p1}, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->access$1300(Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;Landroid/view/View;Landroid/view/View;F)V
return-void
.end method
@@ -0,0 +1,63 @@
.class Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$2;
.super Landroid/animation/AnimatorListenerAdapter;
.source "TabLayout.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->updateOrRecreateIndicatorAnimation(ZII)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic this$1:Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;
.field public final synthetic val$position:I
# direct methods
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;I)V
.locals 0
.line 1
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$2;->this$1:Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;
iput p2, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$2;->val$position:I
invoke-direct {p0}, Landroid/animation/AnimatorListenerAdapter;-><init>()V
return-void
.end method
# virtual methods
.method public onAnimationEnd(Landroid/animation/Animator;)V
.locals 1
.line 1
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$2;->this$1:Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;
iget v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$2;->val$position:I
iput v0, p1, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->selectedPosition:I
return-void
.end method
.method public onAnimationStart(Landroid/animation/Animator;)V
.locals 1
.line 1
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$2;->this$1:Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;
iget v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$2;->val$position:I
iput v0, p1, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->selectedPosition:I
return-void
.end method
@@ -0,0 +1,813 @@
.class Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;
.super Landroid/widget/LinearLayout;
.source "TabLayout.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = "SlidingTabIndicator"
.end annotation
# instance fields
.field public indicatorAnimator:Landroid/animation/ValueAnimator;
.field private layoutDirection:I
.field public selectedPosition:I
.field public selectionOffset:F
.field public final synthetic this$0:Lcom/google/android/material/tabs/TabLayout;
# direct methods
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayout;Landroid/content/Context;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
.line 2
invoke-direct {p0, p2}, Landroid/widget/LinearLayout;-><init>(Landroid/content/Context;)V
const/4 p1, -0x1
.line 3
iput p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->selectedPosition:I
.line 4
iput p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->layoutDirection:I
const/4 p1, 0x0
.line 5
invoke-virtual {p0, p1}, Landroid/widget/LinearLayout;->setWillNotDraw(Z)V
return-void
.end method
.method public static synthetic access$1300(Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;Landroid/view/View;Landroid/view/View;F)V
.locals 0
.line 1
invoke-direct {p0, p1, p2, p3}, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->tweenIndicatorPosition(Landroid/view/View;Landroid/view/View;F)V
return-void
.end method
.method private jumpIndicatorToSelectedPosition()V
.locals 4
.line 1
iget v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->selectedPosition:I
invoke-virtual {p0, v0}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;
move-result-object v0
.line 2
iget-object v1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
invoke-static {v1}, Lcom/google/android/material/tabs/TabLayout;->access$1200(Lcom/google/android/material/tabs/TabLayout;)Lcom/google/android/material/tabs/TabIndicatorInterpolator;
move-result-object v1
iget-object v2, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object v3, v2, Lcom/google/android/material/tabs/TabLayout;->tabSelectedIndicator:Landroid/graphics/drawable/Drawable;
invoke-virtual {v1, v2, v0, v3}, Lcom/google/android/material/tabs/TabIndicatorInterpolator;->setIndicatorBoundsForTab(Lcom/google/android/material/tabs/TabLayout;Landroid/view/View;Landroid/graphics/drawable/Drawable;)V
return-void
.end method
.method private tweenIndicatorPosition(Landroid/view/View;Landroid/view/View;F)V
.locals 7
if-eqz p1, :cond_0
.line 1
invoke-virtual {p1}, Landroid/view/View;->getWidth()I
move-result v0
if-lez v0, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
if-eqz v0, :cond_1
.line 2
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
invoke-static {v0}, Lcom/google/android/material/tabs/TabLayout;->access$1200(Lcom/google/android/material/tabs/TabLayout;)Lcom/google/android/material/tabs/TabIndicatorInterpolator;
move-result-object v1
iget-object v2, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object v6, v2, Lcom/google/android/material/tabs/TabLayout;->tabSelectedIndicator:Landroid/graphics/drawable/Drawable;
move-object v3, p1
move-object v4, p2
move v5, p3
invoke-virtual/range {v1 .. v6}, Lcom/google/android/material/tabs/TabIndicatorInterpolator;->setIndicatorBoundsForOffset(Lcom/google/android/material/tabs/TabLayout;Landroid/view/View;Landroid/view/View;FLandroid/graphics/drawable/Drawable;)V
goto :goto_1
.line 3
:cond_1
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object p1, p1, Lcom/google/android/material/tabs/TabLayout;->tabSelectedIndicator:Landroid/graphics/drawable/Drawable;
.line 4
invoke-virtual {p1}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object p2
iget p2, p2, Landroid/graphics/Rect;->top:I
iget-object p3, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object p3, p3, Lcom/google/android/material/tabs/TabLayout;->tabSelectedIndicator:Landroid/graphics/drawable/Drawable;
invoke-virtual {p3}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object p3
iget p3, p3, Landroid/graphics/Rect;->bottom:I
const/4 v0, -0x1
.line 5
invoke-virtual {p1, v0, p2, v0, p3}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V
.line 6
:goto_1
invoke-static {p0}, Landroidx/core/view/ViewCompat;->n1(Landroid/view/View;)V
return-void
.end method
.method private updateOrRecreateIndicatorAnimation(ZII)V
.locals 3
.line 1
iget v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->selectedPosition:I
invoke-virtual {p0, v0}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;
move-result-object v0
.line 2
invoke-virtual {p0, p2}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;
move-result-object v1
if-nez v1, :cond_0
.line 3
invoke-direct {p0}, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->jumpIndicatorToSelectedPosition()V
return-void
.line 4
:cond_0
new-instance v2, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$1;
invoke-direct {v2, p0, v0, v1}, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$1;-><init>(Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;Landroid/view/View;Landroid/view/View;)V
if-eqz p1, :cond_1
.line 5
new-instance p1, Landroid/animation/ValueAnimator;
invoke-direct {p1}, Landroid/animation/ValueAnimator;-><init>()V
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->indicatorAnimator:Landroid/animation/ValueAnimator;
.line 6
sget-object v0, Lcom/google/android/material/animation/AnimationUtils;->FAST_OUT_SLOW_IN_INTERPOLATOR:Landroid/animation/TimeInterpolator;
invoke-virtual {p1, v0}, Landroid/animation/ValueAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)V
int-to-long v0, p3
.line 7
invoke-virtual {p1, v0, v1}, Landroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/ValueAnimator;
const/4 p3, 0x2
new-array p3, p3, [F
.line 8
fill-array-data p3, :array_0
invoke-virtual {p1, p3}, Landroid/animation/ValueAnimator;->setFloatValues([F)V
.line 9
invoke-virtual {p1, v2}, Landroid/animation/ValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
.line 10
new-instance p3, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$2;
invoke-direct {p3, p0, p2}, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator$2;-><init>(Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;I)V
invoke-virtual {p1, p3}, Landroid/animation/ValueAnimator;->addListener(Landroid/animation/Animator$AnimatorListener;)V
.line 11
invoke-virtual {p1}, Landroid/animation/ValueAnimator;->start()V
goto :goto_0
.line 12
:cond_1
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->indicatorAnimator:Landroid/animation/ValueAnimator;
invoke-virtual {p1}, Landroid/animation/ValueAnimator;->removeAllUpdateListeners()V
.line 13
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->indicatorAnimator:Landroid/animation/ValueAnimator;
invoke-virtual {p1, v2}, Landroid/animation/ValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
:goto_0
return-void
:array_0
.array-data 4
0x0
0x3f800000 # 1.0f
.end array-data
.end method
# virtual methods
.method public animateIndicatorToPosition(II)V
.locals 1
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->indicatorAnimator:Landroid/animation/ValueAnimator;
if-eqz v0, :cond_0
invoke-virtual {v0}, Landroid/animation/ValueAnimator;->isRunning()Z
move-result v0
if-eqz v0, :cond_0
.line 2
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->indicatorAnimator:Landroid/animation/ValueAnimator;
invoke-virtual {v0}, Landroid/animation/ValueAnimator;->cancel()V
:cond_0
const/4 v0, 0x1
.line 3
invoke-direct {p0, v0, p1, p2}, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->updateOrRecreateIndicatorAnimation(ZII)V
return-void
.end method
.method public childrenNeedLayout()Z
.locals 4
.line 1
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getChildCount()I
move-result v0
const/4 v1, 0x0
move v2, v1
:goto_0
if-ge v2, v0, :cond_1
.line 2
invoke-virtual {p0, v2}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;
move-result-object v3
.line 3
invoke-virtual {v3}, Landroid/view/View;->getWidth()I
move-result v3
if-gtz v3, :cond_0
const/4 v0, 0x1
return v0
:cond_0
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_1
return v1
.end method
.method public draw(Landroid/graphics/Canvas;)V
.locals 5
.param p1 # Landroid/graphics/Canvas;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object v0, v0, Lcom/google/android/material/tabs/TabLayout;->tabSelectedIndicator:Landroid/graphics/drawable/Drawable;
invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object v0
invoke-virtual {v0}, Landroid/graphics/Rect;->height()I
move-result v0
if-gez v0, :cond_0
.line 2
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object v0, v0, Lcom/google/android/material/tabs/TabLayout;->tabSelectedIndicator:Landroid/graphics/drawable/Drawable;
invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->getIntrinsicHeight()I
move-result v0
.line 3
:cond_0
iget-object v1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget v1, v1, Lcom/google/android/material/tabs/TabLayout;->tabIndicatorGravity:I
const/4 v2, 0x0
if-eqz v1, :cond_3
const/4 v3, 0x1
const/4 v4, 0x2
if-eq v1, v3, :cond_2
if-eq v1, v4, :cond_4
const/4 v0, 0x3
if-eq v1, v0, :cond_1
move v0, v2
goto :goto_0
.line 4
:cond_1
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getHeight()I
move-result v0
goto :goto_0
.line 5
:cond_2
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getHeight()I
move-result v1
sub-int/2addr v1, v0
div-int/lit8 v2, v1, 0x2
.line 6
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getHeight()I
move-result v1
add-int/2addr v1, v0
div-int/lit8 v0, v1, 0x2
goto :goto_0
.line 7
:cond_3
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getHeight()I
move-result v1
sub-int v2, v1, v0
.line 8
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getHeight()I
move-result v0
.line 9
:cond_4
:goto_0
iget-object v1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object v1, v1, Lcom/google/android/material/tabs/TabLayout;->tabSelectedIndicator:Landroid/graphics/drawable/Drawable;
invoke-virtual {v1}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object v1
invoke-virtual {v1}, Landroid/graphics/Rect;->width()I
move-result v1
if-lez v1, :cond_6
.line 10
iget-object v1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object v1, v1, Lcom/google/android/material/tabs/TabLayout;->tabSelectedIndicator:Landroid/graphics/drawable/Drawable;
invoke-virtual {v1}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object v1
.line 11
iget-object v3, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object v3, v3, Lcom/google/android/material/tabs/TabLayout;->tabSelectedIndicator:Landroid/graphics/drawable/Drawable;
iget v4, v1, Landroid/graphics/Rect;->left:I
iget v1, v1, Landroid/graphics/Rect;->right:I
invoke-virtual {v3, v4, v2, v1, v0}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V
.line 12
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object v1, v0, Lcom/google/android/material/tabs/TabLayout;->tabSelectedIndicator:Landroid/graphics/drawable/Drawable;
.line 13
invoke-static {v0}, Lcom/google/android/material/tabs/TabLayout;->access$1400(Lcom/google/android/material/tabs/TabLayout;)I
move-result v0
if-eqz v0, :cond_5
.line 14
invoke-static {v1}, Ld1/c;->r(Landroid/graphics/drawable/Drawable;)Landroid/graphics/drawable/Drawable;
move-result-object v1
.line 15
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
invoke-static {v0}, Lcom/google/android/material/tabs/TabLayout;->access$1400(Lcom/google/android/material/tabs/TabLayout;)I
move-result v0
invoke-static {v1, v0}, Ld1/c;->n(Landroid/graphics/drawable/Drawable;I)V
.line 16
:cond_5
invoke-virtual {v1, p1}, Landroid/graphics/drawable/Drawable;->draw(Landroid/graphics/Canvas;)V
.line 17
:cond_6
invoke-super {p0, p1}, Landroid/widget/LinearLayout;->draw(Landroid/graphics/Canvas;)V
return-void
.end method
.method public getIndicatorPosition()F
.locals 2
.line 1
iget v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->selectedPosition:I
int-to-float v0, v0
iget v1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->selectionOffset:F
add-float/2addr v0, v1
return v0
.end method
.method public onLayout(ZIIII)V
.locals 0
.line 1
invoke-super/range {p0 .. p5}, Landroid/widget/LinearLayout;->onLayout(ZIIII)V
.line 2
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->indicatorAnimator:Landroid/animation/ValueAnimator;
if-eqz p1, :cond_0
invoke-virtual {p1}, Landroid/animation/ValueAnimator;->isRunning()Z
move-result p1
if-eqz p1, :cond_0
const/4 p1, 0x0
.line 3
iget p2, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->selectedPosition:I
const/4 p3, -0x1
invoke-direct {p0, p1, p2, p3}, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->updateOrRecreateIndicatorAnimation(ZII)V
goto :goto_0
.line 4
:cond_0
invoke-direct {p0}, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->jumpIndicatorToSelectedPosition()V
:goto_0
return-void
.end method
.method public onMeasure(II)V
.locals 8
.line 1
invoke-super {p0, p1, p2}, Landroid/widget/LinearLayout;->onMeasure(II)V
.line 2
invoke-static {p1}, Landroid/view/View$MeasureSpec;->getMode(I)I
move-result v0
const/high16 v1, 0x40000000 # 2.0f
if-eq v0, v1, :cond_0
return-void
.line 3
:cond_0
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget v1, v0, Lcom/google/android/material/tabs/TabLayout;->tabGravity:I
const/4 v2, 0x2
const/4 v3, 0x1
if-eq v1, v3, :cond_1
iget v0, v0, Lcom/google/android/material/tabs/TabLayout;->mode:I
if-ne v0, v2, :cond_9
.line 4
:cond_1
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getChildCount()I
move-result v0
const/4 v1, 0x0
move v4, v1
move v5, v4
:goto_0
if-ge v4, v0, :cond_3
.line 5
invoke-virtual {p0, v4}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;
move-result-object v6
.line 6
invoke-virtual {v6}, Landroid/view/View;->getVisibility()I
move-result v7
if-nez v7, :cond_2
.line 7
invoke-virtual {v6}, Landroid/view/View;->getMeasuredWidth()I
move-result v6
invoke-static {v5, v6}, Ljava/lang/Math;->max(II)I
move-result v5
:cond_2
add-int/lit8 v4, v4, 0x1
goto :goto_0
:cond_3
if-gtz v5, :cond_4
return-void
.line 8
:cond_4
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getContext()Landroid/content/Context;
move-result-object v4
const/16 v6, 0x10
invoke-static {v4, v6}, Lcom/google/android/material/internal/ViewUtils;->dpToPx(Landroid/content/Context;I)F
move-result v4
float-to-int v4, v4
mul-int v6, v5, v0
.line 9
invoke-virtual {p0}, Landroid/widget/LinearLayout;->getMeasuredWidth()I
move-result v7
mul-int/2addr v4, v2
sub-int/2addr v7, v4
if-gt v6, v7, :cond_8
move v2, v1
:goto_1
if-ge v1, v0, :cond_7
.line 10
invoke-virtual {p0, v1}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;
move-result-object v4
invoke-virtual {v4}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v4
check-cast v4, Landroid/widget/LinearLayout$LayoutParams;
.line 11
iget v6, v4, Landroid/widget/LinearLayout$LayoutParams;->width:I
const/4 v7, 0x0
if-ne v6, v5, :cond_5
iget v6, v4, Landroid/widget/LinearLayout$LayoutParams;->weight:F
cmpl-float v6, v6, v7
if-eqz v6, :cond_6
.line 12
:cond_5
iput v5, v4, Landroid/widget/LinearLayout$LayoutParams;->width:I
.line 13
iput v7, v4, Landroid/widget/LinearLayout$LayoutParams;->weight:F
move v2, v3
:cond_6
add-int/lit8 v1, v1, 0x1
goto :goto_1
:cond_7
move v3, v2
goto :goto_2
.line 14
:cond_8
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iput v1, v0, Lcom/google/android/material/tabs/TabLayout;->tabGravity:I
.line 15
invoke-virtual {v0, v1}, Lcom/google/android/material/tabs/TabLayout;->updateTabViews(Z)V
:goto_2
if-eqz v3, :cond_9
.line 16
invoke-super {p0, p1, p2}, Landroid/widget/LinearLayout;->onMeasure(II)V
:cond_9
return-void
.end method
.method public onRtlPropertiesChanged(I)V
.locals 0
.line 1
invoke-super {p0, p1}, Landroid/widget/LinearLayout;->onRtlPropertiesChanged(I)V
return-void
.end method
.method public setIndicatorPositionFromTabPosition(IF)V
.locals 1
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->indicatorAnimator:Landroid/animation/ValueAnimator;
if-eqz v0, :cond_0
invoke-virtual {v0}, Landroid/animation/ValueAnimator;->isRunning()Z
move-result v0
if-eqz v0, :cond_0
.line 2
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->indicatorAnimator:Landroid/animation/ValueAnimator;
invoke-virtual {v0}, Landroid/animation/ValueAnimator;->cancel()V
.line 3
:cond_0
iput p1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->selectedPosition:I
.line 4
iput p2, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->selectionOffset:F
.line 5
invoke-virtual {p0, p1}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;
move-result-object p1
.line 6
iget p2, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->selectedPosition:I
add-int/lit8 p2, p2, 0x1
invoke-virtual {p0, p2}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;
move-result-object p2
.line 7
iget v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->selectionOffset:F
invoke-direct {p0, p1, p2, v0}, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->tweenIndicatorPosition(Landroid/view/View;Landroid/view/View;F)V
return-void
.end method
.method public setSelectedIndicatorHeight(I)V
.locals 4
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object v0, v0, Lcom/google/android/material/tabs/TabLayout;->tabSelectedIndicator:Landroid/graphics/drawable/Drawable;
invoke-virtual {v0}, Landroid/graphics/drawable/Drawable;->getBounds()Landroid/graphics/Rect;
move-result-object v0
.line 2
iget-object v1, p0, Lcom/google/android/material/tabs/TabLayout$SlidingTabIndicator;->this$0:Lcom/google/android/material/tabs/TabLayout;
iget-object v1, v1, Lcom/google/android/material/tabs/TabLayout;->tabSelectedIndicator:Landroid/graphics/drawable/Drawable;
iget v2, v0, Landroid/graphics/Rect;->left:I
iget v0, v0, Landroid/graphics/Rect;->right:I
const/4 v3, 0x0
invoke-virtual {v1, v2, v3, v0, p1}, Landroid/graphics/drawable/Drawable;->setBounds(IIII)V
.line 3
invoke-virtual {p0}, Landroid/widget/LinearLayout;->requestLayout()V
return-void
.end method
@@ -0,0 +1,794 @@
.class public Lcom/google/android/material/tabs/TabLayout$Tab;
.super Ljava/lang/Object;
.source "TabLayout.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "Tab"
.end annotation
# static fields
.field public static final INVALID_POSITION:I = -0x1
# instance fields
.field private contentDesc:Ljava/lang/CharSequence;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field private customView:Landroid/view/View;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field private icon:Landroid/graphics/drawable/Drawable;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field private id:I
.field private labelVisibilityMode:I
.annotation build Lcom/google/android/material/tabs/TabLayout$LabelVisibility;
.end annotation
.end field
.field public parent:Lcom/google/android/material/tabs/TabLayout;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field private position:I
.field private tag:Ljava/lang/Object;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field private text:Ljava/lang/CharSequence;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field public view:Lcom/google/android/material/tabs/TabLayout$TabView;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end field
# direct methods
.method public constructor <init>()V
.locals 2
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, -0x1
.line 2
iput v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->position:I
const/4 v1, 0x1
.line 3
iput v1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->labelVisibilityMode:I
.line 4
iput v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->id:I
return-void
.end method
.method public static synthetic access$000(Lcom/google/android/material/tabs/TabLayout$Tab;)I
.locals 0
.line 1
iget p0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->id:I
return p0
.end method
.method public static synthetic access$1100(Lcom/google/android/material/tabs/TabLayout$Tab;)I
.locals 0
.line 1
iget p0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->labelVisibilityMode:I
return p0
.end method
.method public static synthetic access$200(Lcom/google/android/material/tabs/TabLayout$Tab;)Ljava/lang/CharSequence;
.locals 0
.line 1
iget-object p0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->contentDesc:Ljava/lang/CharSequence;
return-object p0
.end method
.method public static synthetic access$300(Lcom/google/android/material/tabs/TabLayout$Tab;)Ljava/lang/CharSequence;
.locals 0
.line 1
iget-object p0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->text:Ljava/lang/CharSequence;
return-object p0
.end method
# virtual methods
.method public getBadge()Lcom/google/android/material/badge/BadgeDrawable;
.locals 1
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
invoke-static {v0}, Lcom/google/android/material/tabs/TabLayout$TabView;->access$900(Lcom/google/android/material/tabs/TabLayout$TabView;)Lcom/google/android/material/badge/BadgeDrawable;
move-result-object v0
return-object v0
.end method
.method public getContentDescription()Ljava/lang/CharSequence;
.locals 1
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
if-nez v0, :cond_0
const/4 v0, 0x0
goto :goto_0
:cond_0
invoke-virtual {v0}, Landroid/widget/LinearLayout;->getContentDescription()Ljava/lang/CharSequence;
move-result-object v0
:goto_0
return-object v0
.end method
.method public getCustomView()Landroid/view/View;
.locals 1
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->customView:Landroid/view/View;
return-object v0
.end method
.method public getIcon()Landroid/graphics/drawable/Drawable;
.locals 1
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->icon:Landroid/graphics/drawable/Drawable;
return-object v0
.end method
.method public getId()I
.locals 1
.line 1
iget v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->id:I
return v0
.end method
.method public getOrCreateBadge()Lcom/google/android/material/badge/BadgeDrawable;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
invoke-static {v0}, Lcom/google/android/material/tabs/TabLayout$TabView;->access$700(Lcom/google/android/material/tabs/TabLayout$TabView;)Lcom/google/android/material/badge/BadgeDrawable;
move-result-object v0
return-object v0
.end method
.method public getPosition()I
.locals 1
.line 1
iget v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->position:I
return v0
.end method
.method public getTabLabelVisibility()I
.locals 1
.annotation build Lcom/google/android/material/tabs/TabLayout$LabelVisibility;
.end annotation
.line 1
iget v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->labelVisibilityMode:I
return v0
.end method
.method public getTag()Ljava/lang/Object;
.locals 1
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->tag:Ljava/lang/Object;
return-object v0
.end method
.method public getText()Ljava/lang/CharSequence;
.locals 1
.annotation build Landroidx/annotation/Nullable;
.end annotation
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->text:Ljava/lang/CharSequence;
return-object v0
.end method
.method public isSelected()Z
.locals 2
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->parent:Lcom/google/android/material/tabs/TabLayout;
if-eqz v0, :cond_1
.line 2
invoke-virtual {v0}, Lcom/google/android/material/tabs/TabLayout;->getSelectedTabPosition()I
move-result v0
iget v1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->position:I
if-ne v0, v1, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
return v0
.line 3
:cond_1
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "Tab not attached to a TabLayout"
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public removeBadge()V
.locals 1
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
invoke-static {v0}, Lcom/google/android/material/tabs/TabLayout$TabView;->access$800(Lcom/google/android/material/tabs/TabLayout$TabView;)V
return-void
.end method
.method public reset()V
.locals 2
const/4 v0, 0x0
.line 1
iput-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->parent:Lcom/google/android/material/tabs/TabLayout;
.line 2
iput-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
.line 3
iput-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->tag:Ljava/lang/Object;
.line 4
iput-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->icon:Landroid/graphics/drawable/Drawable;
const/4 v1, -0x1
.line 5
iput v1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->id:I
.line 6
iput-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->text:Ljava/lang/CharSequence;
.line 7
iput-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->contentDesc:Ljava/lang/CharSequence;
.line 8
iput v1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->position:I
.line 9
iput-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->customView:Landroid/view/View;
return-void
.end method
.method public select()V
.locals 2
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->parent:Lcom/google/android/material/tabs/TabLayout;
if-eqz v0, :cond_0
.line 2
invoke-virtual {v0, p0}, Lcom/google/android/material/tabs/TabLayout;->selectTab(Lcom/google/android/material/tabs/TabLayout$Tab;)V
return-void
.line 3
:cond_0
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "Tab not attached to a TabLayout"
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public setContentDescription(I)Lcom/google/android/material/tabs/TabLayout$Tab;
.locals 1
.param p1 # I
.annotation build Landroidx/annotation/StringRes;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->parent:Lcom/google/android/material/tabs/TabLayout;
if-eqz v0, :cond_0
.line 2
invoke-virtual {v0}, Landroid/widget/HorizontalScrollView;->getResources()Landroid/content/res/Resources;
move-result-object v0
invoke-virtual {v0, p1}, Landroid/content/res/Resources;->getText(I)Ljava/lang/CharSequence;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/google/android/material/tabs/TabLayout$Tab;->setContentDescription(Ljava/lang/CharSequence;)Lcom/google/android/material/tabs/TabLayout$Tab;
move-result-object p1
return-object p1
.line 3
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Tab not attached to a TabLayout"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public setContentDescription(Ljava/lang/CharSequence;)Lcom/google/android/material/tabs/TabLayout$Tab;
.locals 0
.param p1 # Ljava/lang/CharSequence;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 4
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->contentDesc:Ljava/lang/CharSequence;
.line 5
invoke-virtual {p0}, Lcom/google/android/material/tabs/TabLayout$Tab;->updateView()V
return-object p0
.end method
.method public setCustomView(I)Lcom/google/android/material/tabs/TabLayout$Tab;
.locals 3
.param p1 # I
.annotation build Landroidx/annotation/LayoutRes;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 3
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
invoke-virtual {v0}, Landroid/widget/LinearLayout;->getContext()Landroid/content/Context;
move-result-object v0
invoke-static {v0}, Landroid/view/LayoutInflater;->from(Landroid/content/Context;)Landroid/view/LayoutInflater;
move-result-object v0
.line 4
iget-object v1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
const/4 v2, 0x0
invoke-virtual {v0, p1, v1, v2}, Landroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;Z)Landroid/view/View;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/google/android/material/tabs/TabLayout$Tab;->setCustomView(Landroid/view/View;)Lcom/google/android/material/tabs/TabLayout$Tab;
move-result-object p1
return-object p1
.end method
.method public setCustomView(Landroid/view/View;)Lcom/google/android/material/tabs/TabLayout$Tab;
.locals 0
.param p1 # Landroid/view/View;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 1
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->customView:Landroid/view/View;
.line 2
invoke-virtual {p0}, Lcom/google/android/material/tabs/TabLayout$Tab;->updateView()V
return-object p0
.end method
.method public setIcon(I)Lcom/google/android/material/tabs/TabLayout$Tab;
.locals 1
.param p1 # I
.annotation build Landroidx/annotation/DrawableRes;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 9
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->parent:Lcom/google/android/material/tabs/TabLayout;
if-eqz v0, :cond_0
.line 10
invoke-virtual {v0}, Landroid/widget/HorizontalScrollView;->getContext()Landroid/content/Context;
move-result-object v0
invoke-static {v0, p1}, Lg/a;->d(Landroid/content/Context;I)Landroid/graphics/drawable/Drawable;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/google/android/material/tabs/TabLayout$Tab;->setIcon(Landroid/graphics/drawable/Drawable;)Lcom/google/android/material/tabs/TabLayout$Tab;
move-result-object p1
return-object p1
.line 11
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Tab not attached to a TabLayout"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public setIcon(Landroid/graphics/drawable/Drawable;)Lcom/google/android/material/tabs/TabLayout$Tab;
.locals 3
.param p1 # Landroid/graphics/drawable/Drawable;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 1
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->icon:Landroid/graphics/drawable/Drawable;
.line 2
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->parent:Lcom/google/android/material/tabs/TabLayout;
iget v0, p1, Lcom/google/android/material/tabs/TabLayout;->tabGravity:I
const/4 v1, 0x1
if-eq v0, v1, :cond_0
iget v0, p1, Lcom/google/android/material/tabs/TabLayout;->mode:I
const/4 v2, 0x2
if-ne v0, v2, :cond_1
.line 3
:cond_0
invoke-virtual {p1, v1}, Lcom/google/android/material/tabs/TabLayout;->updateTabViews(Z)V
.line 4
:cond_1
invoke-virtual {p0}, Lcom/google/android/material/tabs/TabLayout$Tab;->updateView()V
.line 5
sget-boolean p1, Lcom/google/android/material/badge/BadgeUtils;->USE_COMPAT_PARENT:Z
if-eqz p1, :cond_2
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
.line 6
invoke-static {p1}, Lcom/google/android/material/tabs/TabLayout$TabView;->access$500(Lcom/google/android/material/tabs/TabLayout$TabView;)Z
move-result p1
if-eqz p1, :cond_2
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
.line 7
invoke-static {p1}, Lcom/google/android/material/tabs/TabLayout$TabView;->access$600(Lcom/google/android/material/tabs/TabLayout$TabView;)Lcom/google/android/material/badge/BadgeDrawable;
move-result-object p1
invoke-virtual {p1}, Landroid/graphics/drawable/Drawable;->isVisible()Z
move-result p1
if-eqz p1, :cond_2
.line 8
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
invoke-virtual {p1}, Landroid/widget/LinearLayout;->invalidate()V
:cond_2
return-object p0
.end method
.method public setId(I)Lcom/google/android/material/tabs/TabLayout$Tab;
.locals 1
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 1
iput p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->id:I
.line 2
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
if-eqz v0, :cond_0
.line 3
invoke-virtual {v0, p1}, Landroid/widget/LinearLayout;->setId(I)V
:cond_0
return-object p0
.end method
.method public setPosition(I)V
.locals 0
.line 1
iput p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->position:I
return-void
.end method
.method public setTabLabelVisibility(I)Lcom/google/android/material/tabs/TabLayout$Tab;
.locals 3
.param p1 # I
.annotation build Lcom/google/android/material/tabs/TabLayout$LabelVisibility;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 1
iput p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->labelVisibilityMode:I
.line 2
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->parent:Lcom/google/android/material/tabs/TabLayout;
iget v0, p1, Lcom/google/android/material/tabs/TabLayout;->tabGravity:I
const/4 v1, 0x1
if-eq v0, v1, :cond_0
iget v0, p1, Lcom/google/android/material/tabs/TabLayout;->mode:I
const/4 v2, 0x2
if-ne v0, v2, :cond_1
.line 3
:cond_0
invoke-virtual {p1, v1}, Lcom/google/android/material/tabs/TabLayout;->updateTabViews(Z)V
.line 4
:cond_1
invoke-virtual {p0}, Lcom/google/android/material/tabs/TabLayout$Tab;->updateView()V
.line 5
sget-boolean p1, Lcom/google/android/material/badge/BadgeUtils;->USE_COMPAT_PARENT:Z
if-eqz p1, :cond_2
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
.line 6
invoke-static {p1}, Lcom/google/android/material/tabs/TabLayout$TabView;->access$500(Lcom/google/android/material/tabs/TabLayout$TabView;)Z
move-result p1
if-eqz p1, :cond_2
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
.line 7
invoke-static {p1}, Lcom/google/android/material/tabs/TabLayout$TabView;->access$600(Lcom/google/android/material/tabs/TabLayout$TabView;)Lcom/google/android/material/badge/BadgeDrawable;
move-result-object p1
invoke-virtual {p1}, Landroid/graphics/drawable/Drawable;->isVisible()Z
move-result p1
if-eqz p1, :cond_2
.line 8
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
invoke-virtual {p1}, Landroid/widget/LinearLayout;->invalidate()V
:cond_2
return-object p0
.end method
.method public setTag(Ljava/lang/Object;)Lcom/google/android/material/tabs/TabLayout$Tab;
.locals 0
.param p1 # Ljava/lang/Object;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 1
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->tag:Ljava/lang/Object;
return-object p0
.end method
.method public setText(I)Lcom/google/android/material/tabs/TabLayout$Tab;
.locals 1
.param p1 # I
.annotation build Landroidx/annotation/StringRes;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 5
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->parent:Lcom/google/android/material/tabs/TabLayout;
if-eqz v0, :cond_0
.line 6
invoke-virtual {v0}, Landroid/widget/HorizontalScrollView;->getResources()Landroid/content/res/Resources;
move-result-object v0
invoke-virtual {v0, p1}, Landroid/content/res/Resources;->getText(I)Ljava/lang/CharSequence;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/google/android/material/tabs/TabLayout$Tab;->setText(Ljava/lang/CharSequence;)Lcom/google/android/material/tabs/TabLayout$Tab;
move-result-object p1
return-object p1
.line 7
:cond_0
new-instance p1, Ljava/lang/IllegalArgumentException;
const-string v0, "Tab not attached to a TabLayout"
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public setText(Ljava/lang/CharSequence;)Lcom/google/android/material/tabs/TabLayout$Tab;
.locals 1
.param p1 # Ljava/lang/CharSequence;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->contentDesc:Ljava/lang/CharSequence;
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_0
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_0
.line 2
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
invoke-virtual {v0, p1}, Landroid/widget/LinearLayout;->setContentDescription(Ljava/lang/CharSequence;)V
.line 3
:cond_0
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->text:Ljava/lang/CharSequence;
.line 4
invoke-virtual {p0}, Lcom/google/android/material/tabs/TabLayout$Tab;->updateView()V
return-object p0
.end method
.method public updateView()V
.locals 1
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$Tab;->view:Lcom/google/android/material/tabs/TabLayout$TabView;
if-eqz v0, :cond_0
.line 2
invoke-virtual {v0}, Lcom/google/android/material/tabs/TabLayout$TabView;->update()V
:cond_0
return-void
.end method
@@ -0,0 +1,27 @@
.class public interface abstract annotation Lcom/google/android/material/tabs/TabLayout$TabGravity;
.super Ljava/lang/Object;
.source "TabLayout.java"
# interfaces
.implements Ljava/lang/annotation/Annotation;
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2609
name = "TabGravity"
.end annotation
.annotation runtime Ljava/lang/annotation/Retention;
value = .enum Ljava/lang/annotation/RetentionPolicy;->SOURCE:Ljava/lang/annotation/RetentionPolicy;
.end annotation
@@ -0,0 +1,27 @@
.class public interface abstract annotation Lcom/google/android/material/tabs/TabLayout$TabIndicatorAnimationMode;
.super Ljava/lang/Object;
.source "TabLayout.java"
# interfaces
.implements Ljava/lang/annotation/Annotation;
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2609
name = "TabIndicatorAnimationMode"
.end annotation
.annotation runtime Ljava/lang/annotation/Retention;
value = .enum Ljava/lang/annotation/RetentionPolicy;->SOURCE:Ljava/lang/annotation/RetentionPolicy;
.end annotation
@@ -0,0 +1,27 @@
.class public interface abstract annotation Lcom/google/android/material/tabs/TabLayout$TabIndicatorGravity;
.super Ljava/lang/Object;
.source "TabLayout.java"
# interfaces
.implements Ljava/lang/annotation/Annotation;
# annotations
.annotation build Landroidx/annotation/RestrictTo;
value = {
.enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP:Landroidx/annotation/RestrictTo$Scope;
}
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2609
name = "TabIndicatorGravity"
.end annotation
.annotation runtime Ljava/lang/annotation/Retention;
value = .enum Ljava/lang/annotation/RetentionPolicy;->SOURCE:Ljava/lang/annotation/RetentionPolicy;
.end annotation
@@ -0,0 +1,206 @@
.class public Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;
.super Ljava/lang/Object;
.source "TabLayout.java"
# interfaces
.implements Landroidx/viewpager/widget/ViewPager$h;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "TabLayoutOnPageChangeListener"
.end annotation
# instance fields
.field private previousScrollState:I
.field private scrollState:I
.field private final tabLayoutRef:Ljava/lang/ref/WeakReference;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/ref/WeakReference<",
"Lcom/google/android/material/tabs/TabLayout;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayout;)V
.locals 1
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
new-instance v0, Ljava/lang/ref/WeakReference;
invoke-direct {v0, p1}, Ljava/lang/ref/WeakReference;-><init>(Ljava/lang/Object;)V
iput-object v0, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->tabLayoutRef:Ljava/lang/ref/WeakReference;
return-void
.end method
# virtual methods
.method public onPageScrollStateChanged(I)V
.locals 1
.line 1
iget v0, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->scrollState:I
iput v0, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->previousScrollState:I
.line 2
iput p1, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->scrollState:I
return-void
.end method
.method public onPageScrolled(IFI)V
.locals 5
.line 1
iget-object p3, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->tabLayoutRef:Ljava/lang/ref/WeakReference;
invoke-virtual {p3}, Ljava/lang/ref/WeakReference;->get()Ljava/lang/Object;
move-result-object p3
check-cast p3, Lcom/google/android/material/tabs/TabLayout;
if-eqz p3, :cond_4
.line 2
iget v0, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->scrollState:I
const/4 v1, 0x0
const/4 v2, 0x2
const/4 v3, 0x1
if-ne v0, v2, :cond_1
iget v4, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->previousScrollState:I
if-ne v4, v3, :cond_0
goto :goto_0
:cond_0
move v4, v1
goto :goto_1
:cond_1
:goto_0
move v4, v3
:goto_1
if-ne v0, v2, :cond_2
.line 3
iget v0, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->previousScrollState:I
if-eqz v0, :cond_3
:cond_2
move v1, v3
.line 4
:cond_3
invoke-virtual {p3, p1, p2, v4, v1}, Lcom/google/android/material/tabs/TabLayout;->setScrollPosition(IFZZ)V
:cond_4
return-void
.end method
.method public onPageSelected(I)V
.locals 3
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->tabLayoutRef:Ljava/lang/ref/WeakReference;
invoke-virtual {v0}, Ljava/lang/ref/WeakReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/material/tabs/TabLayout;
if-eqz v0, :cond_2
.line 2
invoke-virtual {v0}, Lcom/google/android/material/tabs/TabLayout;->getSelectedTabPosition()I
move-result v1
if-eq v1, p1, :cond_2
.line 3
invoke-virtual {v0}, Lcom/google/android/material/tabs/TabLayout;->getTabCount()I
move-result v1
if-ge p1, v1, :cond_2
.line 4
iget v1, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->scrollState:I
if-eqz v1, :cond_1
const/4 v2, 0x2
if-ne v1, v2, :cond_0
iget v1, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->previousScrollState:I
if-nez v1, :cond_0
goto :goto_0
:cond_0
const/4 v1, 0x0
goto :goto_1
:cond_1
:goto_0
const/4 v1, 0x1
.line 5
:goto_1
invoke-virtual {v0, p1}, Lcom/google/android/material/tabs/TabLayout;->getTabAt(I)Lcom/google/android/material/tabs/TabLayout$Tab;
move-result-object p1
invoke-virtual {v0, p1, v1}, Lcom/google/android/material/tabs/TabLayout;->selectTab(Lcom/google/android/material/tabs/TabLayout$Tab;Z)V
:cond_2
return-void
.end method
.method public reset()V
.locals 1
const/4 v0, 0x0
.line 1
iput v0, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->scrollState:I
iput v0, p0, Lcom/google/android/material/tabs/TabLayout$TabLayoutOnPageChangeListener;->previousScrollState:I
return-void
.end method
@@ -0,0 +1,63 @@
.class Lcom/google/android/material/tabs/TabLayout$TabView$1;
.super Ljava/lang/Object;
.source "TabLayout.java"
# interfaces
.implements Landroid/view/View$OnLayoutChangeListener;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/google/android/material/tabs/TabLayout$TabView;->addOnLayoutChangeListener(Landroid/view/View;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic this$1:Lcom/google/android/material/tabs/TabLayout$TabView;
.field public final synthetic val$view:Landroid/view/View;
# direct methods
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayout$TabView;Landroid/view/View;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$TabView$1;->this$1:Lcom/google/android/material/tabs/TabLayout$TabView;
iput-object p2, p0, Lcom/google/android/material/tabs/TabLayout$TabView$1;->val$view:Landroid/view/View;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public onLayoutChange(Landroid/view/View;IIIIIIII)V
.locals 0
.line 1
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$TabView$1;->val$view:Landroid/view/View;
invoke-virtual {p1}, Landroid/view/View;->getVisibility()I
move-result p1
if-nez p1, :cond_0
.line 2
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayout$TabView$1;->this$1:Lcom/google/android/material/tabs/TabLayout$TabView;
iget-object p2, p0, Lcom/google/android/material/tabs/TabLayout$TabView$1;->val$view:Landroid/view/View;
invoke-static {p1, p2}, Lcom/google/android/material/tabs/TabLayout$TabView;->access$1000(Lcom/google/android/material/tabs/TabLayout$TabView;Landroid/view/View;)V
:cond_0
return-void
.end method
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,68 @@
.class public Lcom/google/android/material/tabs/TabLayout$ViewPagerOnTabSelectedListener;
.super Ljava/lang/Object;
.source "TabLayout.java"
# interfaces
.implements Lcom/google/android/material/tabs/TabLayout$OnTabSelectedListener;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayout;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ViewPagerOnTabSelectedListener"
.end annotation
# instance fields
.field private final viewPager:Landroidx/viewpager/widget/ViewPager;
# direct methods
.method public constructor <init>(Landroidx/viewpager/widget/ViewPager;)V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayout$ViewPagerOnTabSelectedListener;->viewPager:Landroidx/viewpager/widget/ViewPager;
return-void
.end method
# virtual methods
.method public onTabReselected(Lcom/google/android/material/tabs/TabLayout$Tab;)V
.locals 0
return-void
.end method
.method public onTabSelected(Lcom/google/android/material/tabs/TabLayout$Tab;)V
.locals 1
.param p1 # Lcom/google/android/material/tabs/TabLayout$Tab;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayout$ViewPagerOnTabSelectedListener;->viewPager:Landroidx/viewpager/widget/ViewPager;
invoke-virtual {p1}, Lcom/google/android/material/tabs/TabLayout$Tab;->getPosition()I
move-result p1
invoke-virtual {v0, p1}, Landroidx/viewpager/widget/ViewPager;->setCurrentItem(I)V
return-void
.end method
.method public onTabUnselected(Lcom/google/android/material/tabs/TabLayout$Tab;)V
.locals 0
return-void
.end method
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,103 @@
.class Lcom/google/android/material/tabs/TabLayoutMediator$PagerAdapterObserver;
.super Landroidx/recyclerview/widget/RecyclerView$i;
.source "TabLayoutMediator.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayoutMediator;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = "PagerAdapterObserver"
.end annotation
# instance fields
.field public final synthetic this$0:Lcom/google/android/material/tabs/TabLayoutMediator;
# direct methods
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayoutMediator;)V
.locals 0
.line 1
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayoutMediator$PagerAdapterObserver;->this$0:Lcom/google/android/material/tabs/TabLayoutMediator;
invoke-direct {p0}, Landroidx/recyclerview/widget/RecyclerView$i;-><init>()V
return-void
.end method
# virtual methods
.method public onChanged()V
.locals 1
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator$PagerAdapterObserver;->this$0:Lcom/google/android/material/tabs/TabLayoutMediator;
invoke-virtual {v0}, Lcom/google/android/material/tabs/TabLayoutMediator;->populateTabsFromPagerAdapter()V
return-void
.end method
.method public onItemRangeChanged(II)V
.locals 0
.line 1
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayoutMediator$PagerAdapterObserver;->this$0:Lcom/google/android/material/tabs/TabLayoutMediator;
invoke-virtual {p1}, Lcom/google/android/material/tabs/TabLayoutMediator;->populateTabsFromPagerAdapter()V
return-void
.end method
.method public onItemRangeChanged(IILjava/lang/Object;)V
.locals 0
.param p3 # Ljava/lang/Object;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.line 2
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayoutMediator$PagerAdapterObserver;->this$0:Lcom/google/android/material/tabs/TabLayoutMediator;
invoke-virtual {p1}, Lcom/google/android/material/tabs/TabLayoutMediator;->populateTabsFromPagerAdapter()V
return-void
.end method
.method public onItemRangeInserted(II)V
.locals 0
.line 1
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayoutMediator$PagerAdapterObserver;->this$0:Lcom/google/android/material/tabs/TabLayoutMediator;
invoke-virtual {p1}, Lcom/google/android/material/tabs/TabLayoutMediator;->populateTabsFromPagerAdapter()V
return-void
.end method
.method public onItemRangeMoved(III)V
.locals 0
.line 1
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayoutMediator$PagerAdapterObserver;->this$0:Lcom/google/android/material/tabs/TabLayoutMediator;
invoke-virtual {p1}, Lcom/google/android/material/tabs/TabLayoutMediator;->populateTabsFromPagerAdapter()V
return-void
.end method
.method public onItemRangeRemoved(II)V
.locals 0
.line 1
iget-object p1, p0, Lcom/google/android/material/tabs/TabLayoutMediator$PagerAdapterObserver;->this$0:Lcom/google/android/material/tabs/TabLayoutMediator;
invoke-virtual {p1}, Lcom/google/android/material/tabs/TabLayoutMediator;->populateTabsFromPagerAdapter()V
return-void
.end method
@@ -0,0 +1,23 @@
.class public interface abstract Lcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;
.super Ljava/lang/Object;
.source "TabLayoutMediator.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayoutMediator;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x609
name = "TabConfigurationStrategy"
.end annotation
# virtual methods
.method public abstract onConfigureTab(Lcom/google/android/material/tabs/TabLayout$Tab;I)V
.param p1 # Lcom/google/android/material/tabs/TabLayout$Tab;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.end method
@@ -0,0 +1,206 @@
.class Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;
.super Landroidx/viewpager2/widget/ViewPager2$i;
.source "TabLayoutMediator.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayoutMediator;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "TabLayoutOnPageChangeCallback"
.end annotation
# instance fields
.field private previousScrollState:I
.field private scrollState:I
.field private final tabLayoutRef:Ljava/lang/ref/WeakReference;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/ref/WeakReference<",
"Lcom/google/android/material/tabs/TabLayout;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayout;)V
.locals 1
.line 1
invoke-direct {p0}, Landroidx/viewpager2/widget/ViewPager2$i;-><init>()V
.line 2
new-instance v0, Ljava/lang/ref/WeakReference;
invoke-direct {v0, p1}, Ljava/lang/ref/WeakReference;-><init>(Ljava/lang/Object;)V
iput-object v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->tabLayoutRef:Ljava/lang/ref/WeakReference;
.line 3
invoke-virtual {p0}, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->reset()V
return-void
.end method
# virtual methods
.method public onPageScrollStateChanged(I)V
.locals 1
.line 1
iget v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->scrollState:I
iput v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->previousScrollState:I
.line 2
iput p1, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->scrollState:I
return-void
.end method
.method public onPageScrolled(IFI)V
.locals 5
.line 1
iget-object p3, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->tabLayoutRef:Ljava/lang/ref/WeakReference;
invoke-virtual {p3}, Ljava/lang/ref/WeakReference;->get()Ljava/lang/Object;
move-result-object p3
check-cast p3, Lcom/google/android/material/tabs/TabLayout;
if-eqz p3, :cond_4
.line 2
iget v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->scrollState:I
const/4 v1, 0x0
const/4 v2, 0x2
const/4 v3, 0x1
if-ne v0, v2, :cond_1
iget v4, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->previousScrollState:I
if-ne v4, v3, :cond_0
goto :goto_0
:cond_0
move v4, v1
goto :goto_1
:cond_1
:goto_0
move v4, v3
:goto_1
if-ne v0, v2, :cond_2
.line 3
iget v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->previousScrollState:I
if-eqz v0, :cond_3
:cond_2
move v1, v3
.line 4
:cond_3
invoke-virtual {p3, p1, p2, v4, v1}, Lcom/google/android/material/tabs/TabLayout;->setScrollPosition(IFZZ)V
:cond_4
return-void
.end method
.method public onPageSelected(I)V
.locals 3
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->tabLayoutRef:Ljava/lang/ref/WeakReference;
invoke-virtual {v0}, Ljava/lang/ref/WeakReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/material/tabs/TabLayout;
if-eqz v0, :cond_2
.line 2
invoke-virtual {v0}, Lcom/google/android/material/tabs/TabLayout;->getSelectedTabPosition()I
move-result v1
if-eq v1, p1, :cond_2
.line 3
invoke-virtual {v0}, Lcom/google/android/material/tabs/TabLayout;->getTabCount()I
move-result v1
if-ge p1, v1, :cond_2
.line 4
iget v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->scrollState:I
if-eqz v1, :cond_1
const/4 v2, 0x2
if-ne v1, v2, :cond_0
iget v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->previousScrollState:I
if-nez v1, :cond_0
goto :goto_0
:cond_0
const/4 v1, 0x0
goto :goto_1
:cond_1
:goto_0
const/4 v1, 0x1
.line 5
:goto_1
invoke-virtual {v0, p1}, Lcom/google/android/material/tabs/TabLayout;->getTabAt(I)Lcom/google/android/material/tabs/TabLayout$Tab;
move-result-object p1
invoke-virtual {v0, p1, v1}, Lcom/google/android/material/tabs/TabLayout;->selectTab(Lcom/google/android/material/tabs/TabLayout$Tab;Z)V
:cond_2
return-void
.end method
.method public reset()V
.locals 1
const/4 v0, 0x0
.line 1
iput v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->scrollState:I
iput v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;->previousScrollState:I
return-void
.end method
@@ -0,0 +1,75 @@
.class Lcom/google/android/material/tabs/TabLayoutMediator$ViewPagerOnTabSelectedListener;
.super Ljava/lang/Object;
.source "TabLayoutMediator.java"
# interfaces
.implements Lcom/google/android/material/tabs/TabLayout$OnTabSelectedListener;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/tabs/TabLayoutMediator;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ViewPagerOnTabSelectedListener"
.end annotation
# instance fields
.field private final smoothScroll:Z
.field private final viewPager:Landroidx/viewpager2/widget/ViewPager2;
# direct methods
.method public constructor <init>(Landroidx/viewpager2/widget/ViewPager2;Z)V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayoutMediator$ViewPagerOnTabSelectedListener;->viewPager:Landroidx/viewpager2/widget/ViewPager2;
.line 3
iput-boolean p2, p0, Lcom/google/android/material/tabs/TabLayoutMediator$ViewPagerOnTabSelectedListener;->smoothScroll:Z
return-void
.end method
# virtual methods
.method public onTabReselected(Lcom/google/android/material/tabs/TabLayout$Tab;)V
.locals 0
return-void
.end method
.method public onTabSelected(Lcom/google/android/material/tabs/TabLayout$Tab;)V
.locals 2
.param p1 # Lcom/google/android/material/tabs/TabLayout$Tab;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator$ViewPagerOnTabSelectedListener;->viewPager:Landroidx/viewpager2/widget/ViewPager2;
invoke-virtual {p1}, Lcom/google/android/material/tabs/TabLayout$Tab;->getPosition()I
move-result p1
iget-boolean v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator$ViewPagerOnTabSelectedListener;->smoothScroll:Z
invoke-virtual {v0, p1, v1}, Landroidx/viewpager2/widget/ViewPager2;->s(IZ)V
return-void
.end method
.method public onTabUnselected(Lcom/google/android/material/tabs/TabLayout$Tab;)V
.locals 0
return-void
.end method
@@ -0,0 +1,422 @@
.class public final Lcom/google/android/material/tabs/TabLayoutMediator;
.super Ljava/lang/Object;
.source "TabLayoutMediator.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/google/android/material/tabs/TabLayoutMediator$PagerAdapterObserver;,
Lcom/google/android/material/tabs/TabLayoutMediator$ViewPagerOnTabSelectedListener;,
Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;,
Lcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;
}
.end annotation
# instance fields
.field private adapter:Landroidx/recyclerview/widget/RecyclerView$Adapter;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/recyclerview/widget/RecyclerView$Adapter<",
"*>;"
}
.end annotation
.end field
.field private attached:Z
.field private final autoRefresh:Z
.field private onPageChangeCallback:Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field private onTabSelectedListener:Lcom/google/android/material/tabs/TabLayout$OnTabSelectedListener;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field private pagerAdapterObserver:Landroidx/recyclerview/widget/RecyclerView$i;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field private final smoothScroll:Z
.field private final tabConfigurationStrategy:Lcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;
.field private final tabLayout:Lcom/google/android/material/tabs/TabLayout;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end field
.field private final viewPager:Landroidx/viewpager2/widget/ViewPager2;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end field
# direct methods
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayout;Landroidx/viewpager2/widget/ViewPager2;Lcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;)V
.locals 1
.param p1 # Lcom/google/android/material/tabs/TabLayout;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroidx/viewpager2/widget/ViewPager2;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Lcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
const/4 v0, 0x1
.line 1
invoke-direct {p0, p1, p2, v0, p3}, Lcom/google/android/material/tabs/TabLayoutMediator;-><init>(Lcom/google/android/material/tabs/TabLayout;Landroidx/viewpager2/widget/ViewPager2;ZLcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;)V
return-void
.end method
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayout;Landroidx/viewpager2/widget/ViewPager2;ZLcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;)V
.locals 6
.param p1 # Lcom/google/android/material/tabs/TabLayout;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroidx/viewpager2/widget/ViewPager2;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p4 # Lcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
const/4 v4, 0x1
move-object v0, p0
move-object v1, p1
move-object v2, p2
move v3, p3
move-object v5, p4
.line 2
invoke-direct/range {v0 .. v5}, Lcom/google/android/material/tabs/TabLayoutMediator;-><init>(Lcom/google/android/material/tabs/TabLayout;Landroidx/viewpager2/widget/ViewPager2;ZZLcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;)V
return-void
.end method
.method public constructor <init>(Lcom/google/android/material/tabs/TabLayout;Landroidx/viewpager2/widget/ViewPager2;ZZLcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;)V
.locals 0
.param p1 # Lcom/google/android/material/tabs/TabLayout;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroidx/viewpager2/widget/ViewPager2;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p5 # Lcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 4
iput-object p1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabLayout:Lcom/google/android/material/tabs/TabLayout;
.line 5
iput-object p2, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->viewPager:Landroidx/viewpager2/widget/ViewPager2;
.line 6
iput-boolean p3, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->autoRefresh:Z
.line 7
iput-boolean p4, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->smoothScroll:Z
.line 8
iput-object p5, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabConfigurationStrategy:Lcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;
return-void
.end method
# virtual methods
.method public attach()V
.locals 4
.line 1
iget-boolean v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->attached:Z
if-nez v0, :cond_2
.line 2
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->viewPager:Landroidx/viewpager2/widget/ViewPager2;
invoke-virtual {v0}, Landroidx/viewpager2/widget/ViewPager2;->getAdapter()Landroidx/recyclerview/widget/RecyclerView$Adapter;
move-result-object v0
iput-object v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->adapter:Landroidx/recyclerview/widget/RecyclerView$Adapter;
if-eqz v0, :cond_1
const/4 v0, 0x1
.line 3
iput-boolean v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->attached:Z
.line 4
new-instance v1, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;
iget-object v2, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabLayout:Lcom/google/android/material/tabs/TabLayout;
invoke-direct {v1, v2}, Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;-><init>(Lcom/google/android/material/tabs/TabLayout;)V
iput-object v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->onPageChangeCallback:Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;
.line 5
iget-object v2, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->viewPager:Landroidx/viewpager2/widget/ViewPager2;
invoke-virtual {v2, v1}, Landroidx/viewpager2/widget/ViewPager2;->n(Landroidx/viewpager2/widget/ViewPager2$i;)V
.line 6
new-instance v1, Lcom/google/android/material/tabs/TabLayoutMediator$ViewPagerOnTabSelectedListener;
iget-object v2, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->viewPager:Landroidx/viewpager2/widget/ViewPager2;
iget-boolean v3, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->smoothScroll:Z
invoke-direct {v1, v2, v3}, Lcom/google/android/material/tabs/TabLayoutMediator$ViewPagerOnTabSelectedListener;-><init>(Landroidx/viewpager2/widget/ViewPager2;Z)V
iput-object v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->onTabSelectedListener:Lcom/google/android/material/tabs/TabLayout$OnTabSelectedListener;
.line 7
iget-object v2, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabLayout:Lcom/google/android/material/tabs/TabLayout;
invoke-virtual {v2, v1}, Lcom/google/android/material/tabs/TabLayout;->addOnTabSelectedListener(Lcom/google/android/material/tabs/TabLayout$OnTabSelectedListener;)V
.line 8
iget-boolean v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->autoRefresh:Z
if-eqz v1, :cond_0
.line 9
new-instance v1, Lcom/google/android/material/tabs/TabLayoutMediator$PagerAdapterObserver;
invoke-direct {v1, p0}, Lcom/google/android/material/tabs/TabLayoutMediator$PagerAdapterObserver;-><init>(Lcom/google/android/material/tabs/TabLayoutMediator;)V
iput-object v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->pagerAdapterObserver:Landroidx/recyclerview/widget/RecyclerView$i;
.line 10
iget-object v2, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->adapter:Landroidx/recyclerview/widget/RecyclerView$Adapter;
invoke-virtual {v2, v1}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->registerAdapterDataObserver(Landroidx/recyclerview/widget/RecyclerView$i;)V
.line 11
:cond_0
invoke-virtual {p0}, Lcom/google/android/material/tabs/TabLayoutMediator;->populateTabsFromPagerAdapter()V
.line 12
iget-object v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabLayout:Lcom/google/android/material/tabs/TabLayout;
iget-object v2, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->viewPager:Landroidx/viewpager2/widget/ViewPager2;
invoke-virtual {v2}, Landroidx/viewpager2/widget/ViewPager2;->getCurrentItem()I
move-result v2
const/4 v3, 0x0
invoke-virtual {v1, v2, v3, v0}, Lcom/google/android/material/tabs/TabLayout;->setScrollPosition(IFZ)V
return-void
.line 13
:cond_1
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "TabLayoutMediator attached before ViewPager2 has an adapter"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 14
:cond_2
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "TabLayoutMediator is already attached"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public detach()V
.locals 3
.line 1
iget-boolean v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->autoRefresh:Z
const/4 v1, 0x0
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->adapter:Landroidx/recyclerview/widget/RecyclerView$Adapter;
if-eqz v0, :cond_0
.line 2
iget-object v2, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->pagerAdapterObserver:Landroidx/recyclerview/widget/RecyclerView$i;
invoke-virtual {v0, v2}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->unregisterAdapterDataObserver(Landroidx/recyclerview/widget/RecyclerView$i;)V
.line 3
iput-object v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->pagerAdapterObserver:Landroidx/recyclerview/widget/RecyclerView$i;
.line 4
:cond_0
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabLayout:Lcom/google/android/material/tabs/TabLayout;
iget-object v2, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->onTabSelectedListener:Lcom/google/android/material/tabs/TabLayout$OnTabSelectedListener;
invoke-virtual {v0, v2}, Lcom/google/android/material/tabs/TabLayout;->removeOnTabSelectedListener(Lcom/google/android/material/tabs/TabLayout$OnTabSelectedListener;)V
.line 5
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->viewPager:Landroidx/viewpager2/widget/ViewPager2;
iget-object v2, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->onPageChangeCallback:Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;
invoke-virtual {v0, v2}, Landroidx/viewpager2/widget/ViewPager2;->x(Landroidx/viewpager2/widget/ViewPager2$i;)V
.line 6
iput-object v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->onTabSelectedListener:Lcom/google/android/material/tabs/TabLayout$OnTabSelectedListener;
.line 7
iput-object v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->onPageChangeCallback:Lcom/google/android/material/tabs/TabLayoutMediator$TabLayoutOnPageChangeCallback;
.line 8
iput-object v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->adapter:Landroidx/recyclerview/widget/RecyclerView$Adapter;
const/4 v0, 0x0
.line 9
iput-boolean v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->attached:Z
return-void
.end method
.method public isAttached()Z
.locals 1
.line 1
iget-boolean v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->attached:Z
return v0
.end method
.method public populateTabsFromPagerAdapter()V
.locals 5
.line 1
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabLayout:Lcom/google/android/material/tabs/TabLayout;
invoke-virtual {v0}, Lcom/google/android/material/tabs/TabLayout;->removeAllTabs()V
.line 2
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->adapter:Landroidx/recyclerview/widget/RecyclerView$Adapter;
if-eqz v0, :cond_1
.line 3
invoke-virtual {v0}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->getItemCount()I
move-result v0
const/4 v1, 0x0
move v2, v1
:goto_0
if-ge v2, v0, :cond_0
.line 4
iget-object v3, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabLayout:Lcom/google/android/material/tabs/TabLayout;
invoke-virtual {v3}, Lcom/google/android/material/tabs/TabLayout;->newTab()Lcom/google/android/material/tabs/TabLayout$Tab;
move-result-object v3
.line 5
iget-object v4, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabConfigurationStrategy:Lcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;
invoke-interface {v4, v3, v2}, Lcom/google/android/material/tabs/TabLayoutMediator$TabConfigurationStrategy;->onConfigureTab(Lcom/google/android/material/tabs/TabLayout$Tab;I)V
.line 6
iget-object v4, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabLayout:Lcom/google/android/material/tabs/TabLayout;
invoke-virtual {v4, v3, v1}, Lcom/google/android/material/tabs/TabLayout;->addTab(Lcom/google/android/material/tabs/TabLayout$Tab;Z)V
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_0
if-lez v0, :cond_1
.line 7
iget-object v0, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabLayout:Lcom/google/android/material/tabs/TabLayout;
invoke-virtual {v0}, Lcom/google/android/material/tabs/TabLayout;->getTabCount()I
move-result v0
add-int/lit8 v0, v0, -0x1
.line 8
iget-object v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->viewPager:Landroidx/viewpager2/widget/ViewPager2;
invoke-virtual {v1}, Landroidx/viewpager2/widget/ViewPager2;->getCurrentItem()I
move-result v1
invoke-static {v1, v0}, Ljava/lang/Math;->min(II)I
move-result v0
.line 9
iget-object v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabLayout:Lcom/google/android/material/tabs/TabLayout;
invoke-virtual {v1}, Lcom/google/android/material/tabs/TabLayout;->getSelectedTabPosition()I
move-result v1
if-eq v0, v1, :cond_1
.line 10
iget-object v1, p0, Lcom/google/android/material/tabs/TabLayoutMediator;->tabLayout:Lcom/google/android/material/tabs/TabLayout;
invoke-virtual {v1, v0}, Lcom/google/android/material/tabs/TabLayout;->getTabAt(I)Lcom/google/android/material/tabs/TabLayout$Tab;
move-result-object v0
invoke-virtual {v1, v0}, Lcom/google/android/material/tabs/TabLayout;->selectTab(Lcom/google/android/material/tabs/TabLayout$Tab;)V
:cond_1
return-void
.end method