.class Landroidx/fragment/app/BackStackState; .super Ljava/lang/Object; .source "BackStackState.java" # interfaces .implements Landroid/os/Parcelable; # static fields .field public static final CREATOR:Landroid/os/Parcelable$Creator; .annotation system Ldalvik/annotation/Signature; value = { "Landroid/os/Parcelable$Creator<", "Landroidx/fragment/app/BackStackState;", ">;" } .end annotation .end field # instance fields .field final mFragments:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Ljava/lang/String;", ">;" } .end annotation .end field .field final mTransactions:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Landroidx/fragment/app/BackStackRecordState;", ">;" } .end annotation .end field # direct methods .method static constructor ()V .locals 1 .line 111 new-instance v0, Landroidx/fragment/app/BackStackState$1; invoke-direct {v0}, Landroidx/fragment/app/BackStackState$1;->()V sput-object v0, Landroidx/fragment/app/BackStackState;->CREATOR:Landroid/os/Parcelable$Creator; return-void .end method .method constructor (Landroid/os/Parcel;)V .locals 1 .line 42 invoke-direct {p0}, Ljava/lang/Object;->()V .line 43 invoke-virtual {p1}, Landroid/os/Parcel;->createStringArrayList()Ljava/util/ArrayList; move-result-object v0 iput-object v0, p0, Landroidx/fragment/app/BackStackState;->mFragments:Ljava/util/List; .line 44 sget-object v0, Landroidx/fragment/app/BackStackRecordState;->CREATOR:Landroid/os/Parcelable$Creator; invoke-virtual {p1, v0}, Landroid/os/Parcel;->createTypedArrayList(Landroid/os/Parcelable$Creator;)Ljava/util/ArrayList; move-result-object p1 iput-object p1, p0, Landroidx/fragment/app/BackStackState;->mTransactions:Ljava/util/List; return-void .end method .method constructor (Ljava/util/List;Ljava/util/List;)V .locals 0 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/List<", "Ljava/lang/String;", ">;", "Ljava/util/List<", "Landroidx/fragment/app/BackStackRecordState;", ">;)V" } .end annotation .line 37 invoke-direct {p0}, Ljava/lang/Object;->()V iput-object p1, p0, Landroidx/fragment/app/BackStackState;->mFragments:Ljava/util/List; iput-object p2, p0, Landroidx/fragment/app/BackStackState;->mTransactions:Ljava/util/List; return-void .end method # virtual methods .method public describeContents()I .locals 0 const/4 p0, 0x0 return p0 .end method .method instantiate(Landroidx/fragment/app/FragmentManager;Ljava/util/Map;)Ljava/util/List; .locals 8 .annotation system Ldalvik/annotation/Signature; value = { "(", "Landroidx/fragment/app/FragmentManager;", "Ljava/util/Map<", "Ljava/lang/String;", "Landroidx/fragment/app/Fragment;", ">;)", "Ljava/util/List<", "Landroidx/fragment/app/BackStackRecord;", ">;" } .end annotation .line 53 new-instance v0, Ljava/util/HashMap; iget-object v1, p0, Landroidx/fragment/app/BackStackState;->mFragments:Ljava/util/List; invoke-interface {v1}, Ljava/util/List;->size()I move-result v1 invoke-direct {v0, v1}, Ljava/util/HashMap;->(I)V iget-object v1, p0, Landroidx/fragment/app/BackStackState;->mFragments:Ljava/util/List; .line 54 invoke-interface {v1}, Ljava/util/List;->iterator()Ljava/util/Iterator; move-result-object v1 :cond_0 :goto_0 invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z move-result v2 if-eqz v2, :cond_4 invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v2 check-cast v2, Ljava/lang/String; .line 55 invoke-interface {p2, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v3 check-cast v3, Landroidx/fragment/app/Fragment; if-eqz v3, :cond_1 .line 59 iget-object v2, v3, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String; invoke-virtual {v0, v2, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; goto :goto_0 .line 63 :cond_1 invoke-virtual {p1}, Landroidx/fragment/app/FragmentManager;->getFragmentStore()Landroidx/fragment/app/FragmentStore; move-result-object v3 const/4 v4, 0x0 invoke-virtual {v3, v2, v4}, Landroidx/fragment/app/FragmentStore;->setSavedState(Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle; move-result-object v2 if-eqz v2, :cond_0 .line 65 invoke-virtual {p1}, Landroidx/fragment/app/FragmentManager;->getHost()Landroidx/fragment/app/FragmentHostCallback; move-result-object v3 invoke-virtual {v3}, Landroidx/fragment/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v3 invoke-virtual {v3}, Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader; move-result-object v3 const-string v4, "state" .line 66 invoke-virtual {v2, v4}, Landroid/os/Bundle;->getParcelable(Ljava/lang/String;)Landroid/os/Parcelable; move-result-object v4 check-cast v4, Landroidx/fragment/app/FragmentState; .line 68 invoke-virtual {p1}, Landroidx/fragment/app/FragmentManager;->getFragmentFactory()Landroidx/fragment/app/FragmentFactory; move-result-object v5 invoke-virtual {v4, v5, v3}, Landroidx/fragment/app/FragmentState;->instantiate(Landroidx/fragment/app/FragmentFactory;Ljava/lang/ClassLoader;)Landroidx/fragment/app/Fragment; move-result-object v4 .line 69 iput-object v2, v4, Landroidx/fragment/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; .line 74 iget-object v5, v4, Landroidx/fragment/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; const-string v6, "savedInstanceState" invoke-virtual {v5, v6}, Landroid/os/Bundle;->getBundle(Ljava/lang/String;)Landroid/os/Bundle; move-result-object v5 if-nez v5, :cond_2 .line 76 iget-object v5, v4, Landroidx/fragment/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; new-instance v7, Landroid/os/Bundle; invoke-direct {v7}, Landroid/os/Bundle;->()V invoke-virtual {v5, v6, v7}, Landroid/os/Bundle;->putBundle(Ljava/lang/String;Landroid/os/Bundle;)V :cond_2 const-string v5, "arguments" .line 82 invoke-virtual {v2, v5}, Landroid/os/Bundle;->getBundle(Ljava/lang/String;)Landroid/os/Bundle; move-result-object v2 if-eqz v2, :cond_3 .line 84 invoke-virtual {v2, v3}, Landroid/os/Bundle;->setClassLoader(Ljava/lang/ClassLoader;)V .line 86 :cond_3 invoke-virtual {v4, v2}, Landroidx/fragment/app/Fragment;->setArguments(Landroid/os/Bundle;)V .line 88 iget-object v2, v4, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String; invoke-virtual {v0, v2, v4}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; goto :goto_0 .line 93 :cond_4 new-instance p2, Ljava/util/ArrayList; invoke-direct {p2}, Ljava/util/ArrayList;->()V iget-object p0, p0, Landroidx/fragment/app/BackStackState;->mTransactions:Ljava/util/List; .line 94 invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator; move-result-object p0 :goto_1 invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z move-result v1 if-eqz v1, :cond_5 invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v1 check-cast v1, Landroidx/fragment/app/BackStackRecordState; .line 95 invoke-virtual {v1, p1, v0}, Landroidx/fragment/app/BackStackRecordState;->instantiate(Landroidx/fragment/app/FragmentManager;Ljava/util/Map;)Landroidx/fragment/app/BackStackRecord; move-result-object v1 invoke-virtual {p2, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z goto :goto_1 :cond_5 return-object p2 .end method .method public writeToParcel(Landroid/os/Parcel;I)V .locals 0 iget-object p2, p0, Landroidx/fragment/app/BackStackState;->mFragments:Ljava/util/List; .line 107 invoke-virtual {p1, p2}, Landroid/os/Parcel;->writeStringList(Ljava/util/List;)V iget-object p0, p0, Landroidx/fragment/app/BackStackState;->mTransactions:Ljava/util/List; .line 108 invoke-virtual {p1, p0}, Landroid/os/Parcel;->writeTypedList(Ljava/util/List;)V return-void .end method