MonthsPagerAdapter.smali

.class public Lcom/google/android/material/picker/MonthsPagerAdapter;
.super Landroidx/viewpager2/adapter/FragmentStateAdapter;
.source "MonthsPagerAdapter.java"


# instance fields
.field public final calendarConstraints:Lcom/google/android/material/picker/CalendarConstraints;

.field public final dateSelector:Lcom/google/android/material/picker/DateSelector;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Lcom/google/android/material/picker/DateSelector<",
            "*>;"
        }
    .end annotation
.end field

.field public final itemHeight:I

.field public final observingFragments:Landroid/util/SparseArray;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Landroid/util/SparseArray<",
            "Landroidx/recyclerview/widget/RecyclerView$AdapterDataObserver;",
            ">;"
        }
    .end annotation
.end field

.field public final onDayClickListener:Lcom/google/android/material/picker/MaterialCalendar$OnDayClickListener;


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

    return-void
.end method

.method public constructor <init>(Landroid/content/Context;Landroidx/fragment/app/FragmentManager;Landroidx/lifecycle/Lifecycle;Lcom/google/android/material/picker/DateSelector;Lcom/google/android/material/picker/CalendarConstraints;Lcom/google/android/material/picker/MaterialCalendar$OnDayClickListener;)V
    .registers 8
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Landroid/content/Context;",
            "Landroidx/fragment/app/FragmentManager;",
            "Landroidx/lifecycle/Lifecycle;",
            "Lcom/google/android/material/picker/DateSelector<",
            "*>;",
            "Lcom/google/android/material/picker/CalendarConstraints;",
            "Lcom/google/android/material/picker/MaterialCalendar$OnDayClickListener;",
            ")V"
        }
    .end annotation

    invoke-direct {p0, p2, p3}, Landroidx/viewpager2/adapter/FragmentStateAdapter;-><init>(Landroidx/fragment/app/FragmentManager;Landroidx/lifecycle/Lifecycle;)V

    new-instance p2, Landroid/util/SparseArray;

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

    iput-object p2, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->observingFragments:Landroid/util/SparseArray;

    invoke-virtual {p5}, Lcom/google/android/material/picker/CalendarConstraints;->getStart()Lcom/google/android/material/picker/Month;

    move-result-object p2

    invoke-virtual {p5}, Lcom/google/android/material/picker/CalendarConstraints;->getEnd()Lcom/google/android/material/picker/Month;

    move-result-object p3

    invoke-virtual {p5}, Lcom/google/android/material/picker/CalendarConstraints;->getOpening()Lcom/google/android/material/picker/Month;

    move-result-object v0

    invoke-virtual {p2, v0}, Lcom/google/android/material/picker/Month;->compareTo(Lcom/google/android/material/picker/Month;)I

    move-result p2

    if-gtz p2, :cond_48

    invoke-virtual {v0, p3}, Lcom/google/android/material/picker/Month;->compareTo(Lcom/google/android/material/picker/Month;)I

    move-result p2

    if-gtz p2, :cond_40

    sget p2, Lcom/google/android/material/picker/MonthAdapter;->MAXIMUM_WEEKS:I

    invoke-static {p1}, Lcom/google/android/material/picker/MaterialCalendar;->getDayHeight(Landroid/content/Context;)I

    move-result p3

    mul-int p2, p2, p3

    invoke-static {p1}, Lcom/google/android/material/picker/MaterialDatePicker;->isFullscreen(Landroid/content/Context;)Z

    move-result p3

    if-eqz p3, :cond_35

    invoke-static {p1}, Lcom/google/android/material/picker/MaterialCalendar;->getDayHeight(Landroid/content/Context;)I

    move-result p1

    goto :goto_36

    :cond_35
    const/4 p1, 0x0

    :goto_36
    add-int/2addr p2, p1

    iput p2, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->itemHeight:I

    iput-object p5, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->calendarConstraints:Lcom/google/android/material/picker/CalendarConstraints;

    iput-object p4, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->dateSelector:Lcom/google/android/material/picker/DateSelector;

    iput-object p6, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->onDayClickListener:Lcom/google/android/material/picker/MaterialCalendar$OnDayClickListener;

    return-void

    :cond_40
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "currentPage cannot be after lastPage"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_48
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "firstPage cannot be after currentPage"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public static synthetic access$000(Lcom/google/android/material/picker/MonthsPagerAdapter;)Lcom/google/android/material/picker/MaterialCalendar$OnDayClickListener;
    .registers 1

    iget-object p0, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->onDayClickListener:Lcom/google/android/material/picker/MaterialCalendar$OnDayClickListener;

    return-object p0
.end method

.method public static synthetic access$100(Lcom/google/android/material/picker/MonthsPagerAdapter;)Landroid/util/SparseArray;
    .registers 1

    iget-object p0, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->observingFragments:Landroid/util/SparseArray;

    return-object p0
.end method


# virtual methods
.method public bridge synthetic createFragment(I)Landroidx/fragment/app/Fragment;
    .registers 2

    invoke-virtual {p0, p1}, Lcom/google/android/material/picker/MonthsPagerAdapter;->createFragment(I)Lcom/google/android/material/picker/MonthFragment;

    move-result-object p1

    return-object p1
.end method

.method public createFragment(I)Lcom/google/android/material/picker/MonthFragment;
    .registers 5

    iget-object v0, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->calendarConstraints:Lcom/google/android/material/picker/CalendarConstraints;

    invoke-virtual {v0}, Lcom/google/android/material/picker/CalendarConstraints;->getStart()Lcom/google/android/material/picker/Month;

    move-result-object v0

    invoke-virtual {v0, p1}, Lcom/google/android/material/picker/Month;->monthsLater(I)Lcom/google/android/material/picker/Month;

    move-result-object v0

    iget-object v1, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->dateSelector:Lcom/google/android/material/picker/DateSelector;

    iget-object v2, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->calendarConstraints:Lcom/google/android/material/picker/CalendarConstraints;

    invoke-static {v0, v1, v2}, Lcom/google/android/material/picker/MonthFragment;->newInstance(Lcom/google/android/material/picker/Month;Lcom/google/android/material/picker/DateSelector;Lcom/google/android/material/picker/CalendarConstraints;)Lcom/google/android/material/picker/MonthFragment;

    move-result-object v0

    invoke-virtual {v0}, Landroidx/fragment/app/Fragment;->getLifecycle()Landroidx/lifecycle/Lifecycle;

    move-result-object v1

    new-instance v2, Lcom/google/android/material/picker/MonthsPagerAdapter$1;

    invoke-direct {v2, p0, v0, p1}, Lcom/google/android/material/picker/MonthsPagerAdapter$1;-><init>(Lcom/google/android/material/picker/MonthsPagerAdapter;Lcom/google/android/material/picker/MonthFragment;I)V

    invoke-virtual {v1, v2}, Landroidx/lifecycle/Lifecycle;->addObserver(Landroidx/lifecycle/LifecycleObserver;)V

    return-object v0
.end method

.method public getItemCount()I
    .registers 2

    iget-object v0, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->calendarConstraints:Lcom/google/android/material/picker/CalendarConstraints;

    invoke-virtual {v0}, Lcom/google/android/material/picker/CalendarConstraints;->getMonthSpan()I

    move-result v0

    return v0
.end method

.method public getPageMonth(I)Lcom/google/android/material/picker/Month;
    .registers 3

    iget-object v0, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->calendarConstraints:Lcom/google/android/material/picker/CalendarConstraints;

    invoke-virtual {v0}, Lcom/google/android/material/picker/CalendarConstraints;->getStart()Lcom/google/android/material/picker/Month;

    move-result-object v0

    invoke-virtual {v0, p1}, Lcom/google/android/material/picker/Month;->monthsLater(I)Lcom/google/android/material/picker/Month;

    move-result-object p1

    return-object p1
.end method

.method public getPageTitle(I)Ljava/lang/CharSequence;
    .registers 2
    .annotation build Landroidx/annotation/NonNull;
    .end annotation

    invoke-virtual {p0, p1}, Lcom/google/android/material/picker/MonthsPagerAdapter;->getPageMonth(I)Lcom/google/android/material/picker/Month;

    move-result-object p1

    invoke-virtual {p1}, Lcom/google/android/material/picker/Month;->getLongName()Ljava/lang/String;

    move-result-object p1

    return-object p1
.end method

.method public getPosition(Lcom/google/android/material/picker/Month;)I
    .registers 3

    iget-object v0, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->calendarConstraints:Lcom/google/android/material/picker/CalendarConstraints;

    invoke-virtual {v0}, Lcom/google/android/material/picker/CalendarConstraints;->getStart()Lcom/google/android/material/picker/Month;

    move-result-object v0

    invoke-virtual {v0, p1}, Lcom/google/android/material/picker/Month;->monthsUntil(Lcom/google/android/material/picker/Month;)I

    move-result p1

    return p1
.end method

.method public onAttachedToRecyclerView(Landroidx/recyclerview/widget/RecyclerView;)V
    .registers 2
    .param p1    # Landroidx/recyclerview/widget/RecyclerView;
        .annotation build Landroidx/annotation/NonNull;
        .end annotation
    .end param

    invoke-super {p0, p1}, Landroidx/viewpager2/adapter/FragmentStateAdapter;->onAttachedToRecyclerView(Landroidx/recyclerview/widget/RecyclerView;)V

    invoke-virtual {p1}, Landroidx/recyclerview/widget/RecyclerView;->clearOnChildAttachStateChangeListeners()V

    return-void
.end method

.method public bridge synthetic onBindViewHolder(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;ILjava/util/List;)V
    .registers 4
    .param p1    # Landroidx/recyclerview/widget/RecyclerView$ViewHolder;
        .annotation build Landroidx/annotation/NonNull;
        .end annotation
    .end param
    .param p2    # I
        .annotation build Landroidx/annotation/NonNull;
        .end annotation
    .end param

    check-cast p1, Landroidx/viewpager2/adapter/FragmentViewHolder;

    invoke-virtual {p0, p1, p2, p3}, Lcom/google/android/material/picker/MonthsPagerAdapter;->onBindViewHolder(Landroidx/viewpager2/adapter/FragmentViewHolder;ILjava/util/List;)V

    return-void
.end method

.method public onBindViewHolder(Landroidx/viewpager2/adapter/FragmentViewHolder;ILjava/util/List;)V
    .registers 5
    .param p1    # Landroidx/viewpager2/adapter/FragmentViewHolder;
        .annotation build Landroidx/annotation/NonNull;
        .end annotation
    .end param
    .param p2    # I
        .annotation build Landroidx/annotation/NonNull;
        .end annotation
    .end param
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Landroidx/viewpager2/adapter/FragmentViewHolder;",
            "I",
            "Ljava/util/List<",
            "Ljava/lang/Object;",
            ">;)V"
        }
    .end annotation

    invoke-super {p0, p1, p2, p3}, Landroidx/recyclerview/widget/RecyclerView$Adapter;->onBindViewHolder(Landroidx/recyclerview/widget/RecyclerView$ViewHolder;ILjava/util/List;)V

    iget-object p1, p1, Landroidx/recyclerview/widget/RecyclerView$ViewHolder;->itemView:Landroid/view/View;

    new-instance p2, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;

    iget p3, p0, Lcom/google/android/material/picker/MonthsPagerAdapter;->itemHeight:I

    const/4 v0, -0x1

    invoke-direct {p2, v0, p3}, Landroidx/recyclerview/widget/RecyclerView$LayoutParams;-><init>(II)V

    invoke-virtual {p1, p2}, Landroid/view/View;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V

    return-void
.end method