.class final Landroid/support/v4/app/FragmentManagerImpl; .super Landroid/support/v4/app/FragmentManager; .source "FragmentManager.java" # interfaces .implements Landroid/support/v4/view/LayoutInflaterFactory; # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Landroid/support/v4/app/FragmentManagerImpl$FragmentTag;, Landroid/support/v4/app/FragmentManagerImpl$AnimateOnHWLayerIfNeededListener; } .end annotation # static fields .field static final ACCELERATE_CUBIC:Landroid/view/animation/Interpolator; .field static final ACCELERATE_QUINT:Landroid/view/animation/Interpolator; .field static final ANIM_DUR:I = 0xdc .field public static final ANIM_STYLE_CLOSE_ENTER:I = 0x3 .field public static final ANIM_STYLE_CLOSE_EXIT:I = 0x4 .field public static final ANIM_STYLE_FADE_ENTER:I = 0x5 .field public static final ANIM_STYLE_FADE_EXIT:I = 0x6 .field public static final ANIM_STYLE_OPEN_ENTER:I = 0x1 .field public static final ANIM_STYLE_OPEN_EXIT:I = 0x2 .field static DEBUG:Z = false .field static final DECELERATE_CUBIC:Landroid/view/animation/Interpolator; .field static final DECELERATE_QUINT:Landroid/view/animation/Interpolator; .field static final HONEYCOMB:Z .field static final TAG:Ljava/lang/String; = "FragmentManager" .field static final TARGET_REQUEST_CODE_STATE_TAG:Ljava/lang/String; = "android:target_req_state" .field static final TARGET_STATE_TAG:Ljava/lang/String; = "android:target_state" .field static final USER_VISIBLE_HINT_TAG:Ljava/lang/String; = "android:user_visible_hint" .field static final VIEW_STATE_TAG:Ljava/lang/String; = "android:view_state" .field static sAnimationListenerField:Ljava/lang/reflect/Field; # instance fields .field mActive:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList", "<", "Landroid/support/v4/app/Fragment;", ">;" } .end annotation .end field .field mAdded:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList", "<", "Landroid/support/v4/app/Fragment;", ">;" } .end annotation .end field .field mAvailBackStackIndices:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList", "<", "Ljava/lang/Integer;", ">;" } .end annotation .end field .field mAvailIndices:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList", "<", "Ljava/lang/Integer;", ">;" } .end annotation .end field .field mBackStack:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList", "<", "Landroid/support/v4/app/BackStackRecord;", ">;" } .end annotation .end field .field mBackStackChangeListeners:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList", "<", "Landroid/support/v4/app/FragmentManager$OnBackStackChangedListener;", ">;" } .end annotation .end field .field mBackStackIndices:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList", "<", "Landroid/support/v4/app/BackStackRecord;", ">;" } .end annotation .end field .field mContainer:Landroid/support/v4/app/FragmentContainer; .field mController:Landroid/support/v4/app/FragmentController; .field mCreatedMenus:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList", "<", "Landroid/support/v4/app/Fragment;", ">;" } .end annotation .end field .field mCurState:I .field mDestroyed:Z .field mExecCommit:Ljava/lang/Runnable; .field mExecutingActions:Z .field mHavePendingDeferredStart:Z .field mHost:Landroid/support/v4/app/FragmentHostCallback; .field mNeedMenuInvalidate:Z .field mNoTransactionsBecause:Ljava/lang/String; .field mParent:Landroid/support/v4/app/Fragment; .field mPendingActions:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList", "<", "Ljava/lang/Runnable;", ">;" } .end annotation .end field .field mStateArray:Landroid/util/SparseArray; .annotation system Ldalvik/annotation/Signature; value = { "Landroid/util/SparseArray", "<", "Landroid/os/Parcelable;", ">;" } .end annotation .end field .field mStateBundle:Landroid/os/Bundle; .field mStateSaved:Z .field mTmpActions:[Ljava/lang/Runnable; # direct methods .method static constructor ()V .locals 5 .prologue const/4 v0, 0x0 const/high16 v4, 0x40200000 # 2.5f const/high16 v3, 0x3fc00000 # 1.5f .line 406 sput-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z .line 409 sget v1, Landroid/os/Build$VERSION;->SDK_INT:I const/16 v2, 0xb if-lt v1, v2, :cond_0 const/4 v0, 0x1 :cond_0 sput-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->HONEYCOMB:Z .line 502 const/4 v0, 0x0 sput-object v0, Landroid/support/v4/app/FragmentManagerImpl;->sAnimationListenerField:Ljava/lang/reflect/Field; .line 830 new-instance v0, Landroid/view/animation/DecelerateInterpolator; invoke-direct {v0, v4}, Landroid/view/animation/DecelerateInterpolator;->(F)V sput-object v0, Landroid/support/v4/app/FragmentManagerImpl;->DECELERATE_QUINT:Landroid/view/animation/Interpolator; .line 831 new-instance v0, Landroid/view/animation/DecelerateInterpolator; invoke-direct {v0, v3}, Landroid/view/animation/DecelerateInterpolator;->(F)V sput-object v0, Landroid/support/v4/app/FragmentManagerImpl;->DECELERATE_CUBIC:Landroid/view/animation/Interpolator; .line 832 new-instance v0, Landroid/view/animation/AccelerateInterpolator; invoke-direct {v0, v4}, Landroid/view/animation/AccelerateInterpolator;->(F)V sput-object v0, Landroid/support/v4/app/FragmentManagerImpl;->ACCELERATE_QUINT:Landroid/view/animation/Interpolator; .line 833 new-instance v0, Landroid/view/animation/AccelerateInterpolator; invoke-direct {v0, v3}, Landroid/view/animation/AccelerateInterpolator;->(F)V sput-object v0, Landroid/support/v4/app/FragmentManagerImpl;->ACCELERATE_CUBIC:Landroid/view/animation/Interpolator; return-void .end method .method constructor ()V .locals 2 .prologue const/4 v1, 0x0 .line 405 invoke-direct {p0}, Landroid/support/v4/app/FragmentManager;->()V .line 496 const/4 v0, 0x0 iput v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I .line 511 iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateBundle:Landroid/os/Bundle; .line 512 iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateArray:Landroid/util/SparseArray; .line 514 new-instance v0, Landroid/support/v4/app/FragmentManagerImpl$1; invoke-direct {v0, p0}, Landroid/support/v4/app/FragmentManagerImpl$1;->(Landroid/support/v4/app/FragmentManagerImpl;)V iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecCommit:Ljava/lang/Runnable; .line 2335 return-void .end method .method private checkStateLoss()V .locals 3 .prologue .line 1492 iget-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z if-eqz v0, :cond_0 .line 1493 new-instance v0, Ljava/lang/IllegalStateException; const-string v1, "Can not perform this action after onSaveInstanceState" invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .line 1496 :cond_0 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNoTransactionsBecause:Ljava/lang/String; if-eqz v0, :cond_1 .line 1497 new-instance v0, Ljava/lang/IllegalStateException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "Can not perform this action inside of " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNoTransactionsBecause:Ljava/lang/String; invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .line 1500 :cond_1 return-void .end method .method static makeFadeAnimation(Landroid/content/Context;FF)Landroid/view/animation/Animation; .locals 3 .param p0, "context" # Landroid/content/Context; .param p1, "start" # F .param p2, "end" # F .prologue .line 853 new-instance v0, Landroid/view/animation/AlphaAnimation; invoke-direct {v0, p1, p2}, Landroid/view/animation/AlphaAnimation;->(FF)V .line 854 .local v0, "anim":Landroid/view/animation/AlphaAnimation; sget-object v1, Landroid/support/v4/app/FragmentManagerImpl;->DECELERATE_CUBIC:Landroid/view/animation/Interpolator; invoke-virtual {v0, v1}, Landroid/view/animation/AlphaAnimation;->setInterpolator(Landroid/view/animation/Interpolator;)V .line 855 const-wide/16 v1, 0xdc invoke-virtual {v0, v1, v2}, Landroid/view/animation/AlphaAnimation;->setDuration(J)V .line 856 return-object v0 .end method .method static makeOpenCloseAnimation(Landroid/content/Context;FFFF)Landroid/view/animation/Animation; .locals 11 .param p0, "context" # Landroid/content/Context; .param p1, "startScale" # F .param p2, "endScale" # F .param p3, "startAlpha" # F .param p4, "endAlpha" # F .prologue .line 839 new-instance v10, Landroid/view/animation/AnimationSet; const/4 v1, 0x0 invoke-direct {v10, v1}, Landroid/view/animation/AnimationSet;->(Z)V .line 840 .local v10, "set":Landroid/view/animation/AnimationSet; new-instance v0, Landroid/view/animation/ScaleAnimation; const/4 v5, 0x1 const/high16 v6, 0x3f000000 # 0.5f const/4 v7, 0x1 const/high16 v8, 0x3f000000 # 0.5f move v1, p1 move v2, p2 move v3, p1 move v4, p2 invoke-direct/range {v0 .. v8}, Landroid/view/animation/ScaleAnimation;->(FFFFIFIF)V .line 842 .local v0, "scale":Landroid/view/animation/ScaleAnimation; sget-object v1, Landroid/support/v4/app/FragmentManagerImpl;->DECELERATE_QUINT:Landroid/view/animation/Interpolator; invoke-virtual {v0, v1}, Landroid/view/animation/ScaleAnimation;->setInterpolator(Landroid/view/animation/Interpolator;)V .line 843 const-wide/16 v1, 0xdc invoke-virtual {v0, v1, v2}, Landroid/view/animation/ScaleAnimation;->setDuration(J)V .line 844 invoke-virtual {v10, v0}, Landroid/view/animation/AnimationSet;->addAnimation(Landroid/view/animation/Animation;)V .line 845 new-instance v9, Landroid/view/animation/AlphaAnimation; invoke-direct {v9, p3, p4}, Landroid/view/animation/AlphaAnimation;->(FF)V .line 846 .local v9, "alpha":Landroid/view/animation/AlphaAnimation; sget-object v1, Landroid/support/v4/app/FragmentManagerImpl;->DECELERATE_CUBIC:Landroid/view/animation/Interpolator; invoke-virtual {v9, v1}, Landroid/view/animation/AlphaAnimation;->setInterpolator(Landroid/view/animation/Interpolator;)V .line 847 const-wide/16 v1, 0xdc invoke-virtual {v9, v1, v2}, Landroid/view/animation/AlphaAnimation;->setDuration(J)V .line 848 invoke-virtual {v10, v9}, Landroid/view/animation/AnimationSet;->addAnimation(Landroid/view/animation/Animation;)V .line 849 return-object v10 .end method .method static modifiesAlpha(Landroid/view/animation/Animation;)Z .locals 4 .param p0, "anim" # Landroid/view/animation/Animation; .prologue const/4 v2, 0x1 .line 522 instance-of v3, p0, Landroid/view/animation/AlphaAnimation; if-eqz v3, :cond_1 .line 532 .end local p0 # "anim":Landroid/view/animation/Animation; .local v0, "anims":Ljava/util/List;, "Ljava/util/List;" .local v1, "i":I :cond_0 :goto_0 return v2 .line 524 .end local v0 # "anims":Ljava/util/List;, "Ljava/util/List;" .end local v1 # "i":I .restart local p0 # "anim":Landroid/view/animation/Animation; :cond_1 instance-of v3, p0, Landroid/view/animation/AnimationSet; if-eqz v3, :cond_2 .line 525 check-cast p0, Landroid/view/animation/AnimationSet; .end local p0 # "anim":Landroid/view/animation/Animation; invoke-virtual {p0}, Landroid/view/animation/AnimationSet;->getAnimations()Ljava/util/List; move-result-object v0 .line 526 .restart local v0 # "anims":Ljava/util/List;, "Ljava/util/List;" const/4 v1, 0x0 .restart local v1 # "i":I :goto_1 invoke-interface {v0}, Ljava/util/List;->size()I move-result v3 if-ge v1, v3, :cond_2 .line 527 invoke-interface {v0, v1}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v3 instance-of v3, v3, Landroid/view/animation/AlphaAnimation; if-nez v3, :cond_0 .line 526 add-int/lit8 v1, v1, 0x1 goto :goto_1 .line 532 .end local v0 # "anims":Ljava/util/List;, "Ljava/util/List;" .end local v1 # "i":I :cond_2 const/4 v2, 0x0 goto :goto_0 .end method .method public static reverseTransit(I)I .locals 1 .param p0, "transit" # I .prologue .line 2198 const/4 v0, 0x0 .line 2199 .local v0, "rev":I sparse-switch p0, :sswitch_data_0 .line 2210 :goto_0 return v0 .line 2201 :sswitch_0 const/16 v0, 0x2002 .line 2202 goto :goto_0 .line 2204 :sswitch_1 const/16 v0, 0x1001 .line 2205 goto :goto_0 .line 2207 :sswitch_2 const/16 v0, 0x1003 goto :goto_0 .line 2199 :sswitch_data_0 .sparse-switch 0x1001 -> :sswitch_0 0x1003 -> :sswitch_2 0x2002 -> :sswitch_1 .end sparse-switch .end method .method private setHWLayerAnimListenerIfAlpha(Landroid/view/View;Landroid/view/animation/Animation;)V .locals 5 .param p1, "v" # Landroid/view/View; .param p2, "anim" # Landroid/view/animation/Animation; .prologue .line 938 if-eqz p1, :cond_0 if-nez p2, :cond_1 .line 960 :cond_0 :goto_0 return-void .line 941 :cond_1 invoke-static {p1, p2}, Landroid/support/v4/app/FragmentManagerImpl;->shouldRunOnHWLayer(Landroid/view/View;Landroid/view/animation/Animation;)Z move-result v3 if-eqz v3, :cond_0 .line 942 const/4 v2, 0x0 .line 944 .local v2, "originalListener":Landroid/view/animation/Animation$AnimationListener; :try_start_0 sget-object v3, Landroid/support/v4/app/FragmentManagerImpl;->sAnimationListenerField:Ljava/lang/reflect/Field; if-nez v3, :cond_2 .line 945 const-class v3, Landroid/view/animation/Animation; const-string v4, "mListener" invoke-virtual {v3, v4}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field; move-result-object v3 sput-object v3, Landroid/support/v4/app/FragmentManagerImpl;->sAnimationListenerField:Ljava/lang/reflect/Field; .line 946 sget-object v3, Landroid/support/v4/app/FragmentManagerImpl;->sAnimationListenerField:Ljava/lang/reflect/Field; const/4 v4, 0x1 invoke-virtual {v3, v4}, Ljava/lang/reflect/Field;->setAccessible(Z)V .line 948 :cond_2 sget-object v3, Landroid/support/v4/app/FragmentManagerImpl;->sAnimationListenerField:Ljava/lang/reflect/Field; invoke-virtual {v3, p2}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v3 move-object v0, v3 check-cast v0, Landroid/view/animation/Animation$AnimationListener; move-object v2, v0 :try_end_0 .catch Ljava/lang/NoSuchFieldException; {:try_start_0 .. :try_end_0} :catch_0 .catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_1 .line 957 :goto_1 new-instance v3, Landroid/support/v4/app/FragmentManagerImpl$AnimateOnHWLayerIfNeededListener; invoke-direct {v3, p1, p2, v2}, Landroid/support/v4/app/FragmentManagerImpl$AnimateOnHWLayerIfNeededListener;->(Landroid/view/View;Landroid/view/animation/Animation;Landroid/view/animation/Animation$AnimationListener;)V invoke-virtual {p2, v3}, Landroid/view/animation/Animation;->setAnimationListener(Landroid/view/animation/Animation$AnimationListener;)V goto :goto_0 .line 949 :catch_0 move-exception v1 .line 950 .local v1, "e":Ljava/lang/NoSuchFieldException; const-string v3, "FragmentManager" const-string v4, "No field with the name mListener is found in Animation class" invoke-static {v3, v4, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I goto :goto_1 .line 951 .end local v1 # "e":Ljava/lang/NoSuchFieldException; :catch_1 move-exception v1 .line 952 .local v1, "e":Ljava/lang/IllegalAccessException; const-string v3, "FragmentManager" const-string v4, "Cannot access Animation\'s mListener field" invoke-static {v3, v4, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I goto :goto_1 .end method .method static shouldRunOnHWLayer(Landroid/view/View;Landroid/view/animation/Animation;)Z .locals 2 .param p0, "v" # Landroid/view/View; .param p1, "anim" # Landroid/view/animation/Animation; .prologue .line 536 sget v0, Landroid/os/Build$VERSION;->SDK_INT:I const/16 v1, 0x13 if-lt v0, v1, :cond_0 invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->getLayerType(Landroid/view/View;)I move-result v0 if-nez v0, :cond_0 invoke-static {p0}, Landroid/support/v4/view/ViewCompat;->hasOverlappingRendering(Landroid/view/View;)Z move-result v0 if-eqz v0, :cond_0 invoke-static {p1}, Landroid/support/v4/app/FragmentManagerImpl;->modifiesAlpha(Landroid/view/animation/Animation;)Z move-result v0 if-eqz v0, :cond_0 const/4 v0, 0x1 :goto_0 return v0 :cond_0 const/4 v0, 0x0 goto :goto_0 .end method .method private throwException(Ljava/lang/RuntimeException;)V .locals 7 .param p1, "ex" # Ljava/lang/RuntimeException; .prologue .line 543 const-string v3, "FragmentManager" invoke-virtual {p1}, Ljava/lang/RuntimeException;->getMessage()Ljava/lang/String; move-result-object v4 invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I .line 544 const-string v3, "FragmentManager" const-string v4, "Activity state:" invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I .line 545 new-instance v1, Landroid/support/v4/util/LogWriter; const-string v3, "FragmentManager" invoke-direct {v1, v3}, Landroid/support/v4/util/LogWriter;->(Ljava/lang/String;)V .line 546 .local v1, "logw":Landroid/support/v4/util/LogWriter; new-instance v2, Ljava/io/PrintWriter; invoke-direct {v2, v1}, Ljava/io/PrintWriter;->(Ljava/io/Writer;)V .line 547 .local v2, "pw":Ljava/io/PrintWriter; iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; if-eqz v3, :cond_0 .line 549 :try_start_0 iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; const-string v4, " " const/4 v5, 0x0 const/4 v6, 0x0 new-array v6, v6, [Ljava/lang/String; invoke-virtual {v3, v4, v5, v2, v6}, Landroid/support/v4/app/FragmentHostCallback;->onDump(Ljava/lang/String;Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 .line 560 :goto_0 throw p1 .line 550 :catch_0 move-exception v0 .line 551 .local v0, "e":Ljava/lang/Exception; const-string v3, "FragmentManager" const-string v4, "Failed dumping state" invoke-static {v3, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I goto :goto_0 .line 555 .end local v0 # "e":Ljava/lang/Exception; :cond_0 :try_start_1 const-string v3, " " const/4 v4, 0x0 const/4 v5, 0x0 new-array v5, v5, [Ljava/lang/String; invoke-virtual {p0, v3, v4, v2, v5}, Landroid/support/v4/app/FragmentManagerImpl;->dump(Ljava/lang/String;Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V :try_end_1 .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1 goto :goto_0 .line 556 :catch_1 move-exception v0 .line 557 .restart local v0 # "e":Ljava/lang/Exception; const-string v3, "FragmentManager" const-string v4, "Failed dumping state" invoke-static {v3, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I goto :goto_0 .end method .method public static transitToStyleIndex(IZ)I .locals 1 .param p0, "transit" # I .param p1, "enter" # Z .prologue .line 2222 const/4 v0, -0x1 .line 2223 .local v0, "animAttr":I sparse-switch p0, :sswitch_data_0 .line 2234 :goto_0 return v0 .line 2225 :sswitch_0 if-eqz p1, :cond_0 const/4 v0, 0x1 .line 2226 :goto_1 goto :goto_0 .line 2225 :cond_0 const/4 v0, 0x2 goto :goto_1 .line 2228 :sswitch_1 if-eqz p1, :cond_1 const/4 v0, 0x3 .line 2229 :goto_2 goto :goto_0 .line 2228 :cond_1 const/4 v0, 0x4 goto :goto_2 .line 2231 :sswitch_2 if-eqz p1, :cond_2 const/4 v0, 0x5 :goto_3 goto :goto_0 :cond_2 const/4 v0, 0x6 goto :goto_3 .line 2223 nop :sswitch_data_0 .sparse-switch 0x1001 -> :sswitch_0 0x1003 -> :sswitch_2 0x2002 -> :sswitch_1 .end sparse-switch .end method # virtual methods .method addBackStackState(Landroid/support/v4/app/BackStackRecord;)V .locals 1 .param p1, "state" # Landroid/support/v4/app/BackStackRecord; .prologue .line 1649 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; if-nez v0, :cond_0 .line 1650 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; .line 1652 :cond_0 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1653 invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->reportBackStackChanged()V .line 1654 return-void .end method .method public addFragment(Landroid/support/v4/app/Fragment;Z)V .locals 4 .param p1, "fragment" # Landroid/support/v4/app/Fragment; .param p2, "moveToStateNow" # Z .prologue const/4 v3, 0x1 .line 1316 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-nez v0, :cond_0 .line 1317 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; .line 1319 :cond_0 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_1 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "add: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1320 :cond_1 invoke-virtual {p0, p1}, Landroid/support/v4/app/FragmentManagerImpl;->makeActive(Landroid/support/v4/app/Fragment;)V .line 1321 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mDetached:Z if-nez v0, :cond_4 .line 1322 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z move-result v0 if-eqz v0, :cond_2 .line 1323 new-instance v0, Ljava/lang/IllegalStateException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "Fragment already added: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .line 1325 :cond_2 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1326 iput-boolean v3, p1, Landroid/support/v4/app/Fragment;->mAdded:Z .line 1327 const/4 v0, 0x0 iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRemoving:Z .line 1328 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mHasMenu:Z if-eqz v0, :cond_3 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mMenuVisible:Z if-eqz v0, :cond_3 .line 1329 iput-boolean v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z .line 1331 :cond_3 if-eqz p2, :cond_4 .line 1332 invoke-virtual {p0, p1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;)V .line 1335 :cond_4 return-void .end method .method public addOnBackStackChangedListener(Landroid/support/v4/app/FragmentManager$OnBackStackChangedListener;)V .locals 1 .param p1, "listener" # Landroid/support/v4/app/FragmentManager$OnBackStackChangedListener; .prologue .line 639 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackChangeListeners:Ljava/util/ArrayList; if-nez v0, :cond_0 .line 640 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackChangeListeners:Ljava/util/ArrayList; .line 642 :cond_0 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackChangeListeners:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 643 return-void .end method .method public allocBackStackIndex(Landroid/support/v4/app/BackStackRecord;)I .locals 5 .param p1, "bse" # Landroid/support/v4/app/BackStackRecord; .prologue .line 1529 monitor-enter p0 .line 1530 :try_start_0 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; if-eqz v2, :cond_0 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 if-gtz v2, :cond_3 .line 1531 :cond_0 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; if-nez v2, :cond_1 .line 1532 new-instance v2, Ljava/util/ArrayList; invoke-direct {v2}, Ljava/util/ArrayList;->()V iput-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; .line 1534 :cond_1 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v0 .line 1535 .local v0, "index":I sget-boolean v2, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v2, :cond_2 const-string v2, "FragmentManager" new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v4, "Setting back stack index " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v3 const-string v4, " to " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-static {v2, v3}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1536 :cond_2 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; invoke-virtual {v2, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1537 monitor-exit p0 move v1, v0 .line 1543 .end local v0 # "index":I .local v1, "index":I :goto_0 return v1 .line 1540 .end local v1 # "index":I :cond_3 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; invoke-virtual {v3}, Ljava/util/ArrayList;->size()I move-result v3 add-int/lit8 v3, v3, -0x1 invoke-virtual {v2, v3}, Ljava/util/ArrayList;->remove(I)Ljava/lang/Object; move-result-object v2 check-cast v2, Ljava/lang/Integer; invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I move-result v0 .line 1541 .restart local v0 # "index":I sget-boolean v2, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v2, :cond_4 const-string v2, "FragmentManager" new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v4, "Adding back stack index " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v3 const-string v4, " with " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-static {v2, v3}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1542 :cond_4 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; invoke-virtual {v2, v0, p1}, Ljava/util/ArrayList;->set(ILjava/lang/Object;)Ljava/lang/Object; .line 1543 monitor-exit p0 move v1, v0 .end local v0 # "index":I .restart local v1 # "index":I goto :goto_0 .line 1545 .end local v1 # "index":I :catchall_0 move-exception v2 monitor-exit p0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v2 .end method .method public attachController(Landroid/support/v4/app/FragmentHostCallback;Landroid/support/v4/app/FragmentContainer;Landroid/support/v4/app/Fragment;)V .locals 2 .param p1, "host" # Landroid/support/v4/app/FragmentHostCallback; .param p2, "container" # Landroid/support/v4/app/FragmentContainer; .param p3, "parent" # Landroid/support/v4/app/Fragment; .prologue .line 2029 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; if-eqz v0, :cond_0 new-instance v0, Ljava/lang/IllegalStateException; const-string v1, "Already attached" invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .line 2030 :cond_0 iput-object p1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; .line 2031 iput-object p2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mContainer:Landroid/support/v4/app/FragmentContainer; .line 2032 iput-object p3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment; .line 2033 return-void .end method .method public attachFragment(Landroid/support/v4/app/Fragment;II)V .locals 6 .param p1, "fragment" # Landroid/support/v4/app/Fragment; .param p2, "transition" # I .param p3, "transitionStyle" # I .prologue const/4 v3, 0x1 const/4 v5, 0x0 .line 1414 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_0 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "attach: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1415 :cond_0 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mDetached:Z if-eqz v0, :cond_5 .line 1416 iput-boolean v5, p1, Landroid/support/v4/app/Fragment;->mDetached:Z .line 1417 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mAdded:Z if-nez v0, :cond_5 .line 1418 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-nez v0, :cond_1 .line 1419 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; .line 1421 :cond_1 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z move-result v0 if-eqz v0, :cond_2 .line 1422 new-instance v0, Ljava/lang/IllegalStateException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "Fragment already added: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .line 1424 :cond_2 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_3 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "add from attach: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1425 :cond_3 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1426 iput-boolean v3, p1, Landroid/support/v4/app/Fragment;->mAdded:Z .line 1427 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mHasMenu:Z if-eqz v0, :cond_4 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mMenuVisible:Z if-eqz v0, :cond_4 .line 1428 iput-boolean v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z .line 1430 :cond_4 iget v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I move-object v0, p0 move-object v1, p1 move v3, p2 move v4, p3 invoke-virtual/range {v0 .. v5}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;IIIZ)V .line 1433 :cond_5 return-void .end method .method public beginTransaction()Landroid/support/v4/app/FragmentTransaction; .locals 1 .prologue .line 565 new-instance v0, Landroid/support/v4/app/BackStackRecord; invoke-direct {v0, p0}, Landroid/support/v4/app/BackStackRecord;->(Landroid/support/v4/app/FragmentManagerImpl;)V return-object v0 .end method .method public detachFragment(Landroid/support/v4/app/Fragment;II)V .locals 6 .param p1, "fragment" # Landroid/support/v4/app/Fragment; .param p2, "transition" # I .param p3, "transitionStyle" # I .prologue const/4 v5, 0x0 const/4 v2, 0x1 .line 1395 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_0 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v3, "detach: " invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1396 :cond_0 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mDetached:Z if-nez v0, :cond_4 .line 1397 iput-boolean v2, p1, Landroid/support/v4/app/Fragment;->mDetached:Z .line 1398 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mAdded:Z if-eqz v0, :cond_4 .line 1400 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v0, :cond_2 .line 1401 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_1 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v3, "remove from detach: " invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1402 :cond_1 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z .line 1404 :cond_2 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mHasMenu:Z if-eqz v0, :cond_3 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mMenuVisible:Z if-eqz v0, :cond_3 .line 1405 iput-boolean v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z .line 1407 :cond_3 iput-boolean v5, p1, Landroid/support/v4/app/Fragment;->mAdded:Z move-object v0, p0 move-object v1, p1 move v3, p2 move v4, p3 .line 1408 invoke-virtual/range {v0 .. v5}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;IIIZ)V .line 1411 :cond_4 return-void .end method .method public dispatchActivityCreated()V .locals 2 .prologue const/4 v1, 0x0 .line 2045 iput-boolean v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z .line 2046 const/4 v0, 0x2 invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V .line 2047 return-void .end method .method public dispatchConfigurationChanged(Landroid/content/res/Configuration;)V .locals 3 .param p1, "newConfig" # Landroid/content/res/Configuration; .prologue .line 2090 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v2, :cond_1 .line 2091 const/4 v1, 0x0 .local v1, "i":I :goto_0 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 if-ge v1, v2, :cond_1 .line 2092 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 2093 .local v0, "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_0 .line 2094 invoke-virtual {v0, p1}, Landroid/support/v4/app/Fragment;->performConfigurationChanged(Landroid/content/res/Configuration;)V .line 2091 :cond_0 add-int/lit8 v1, v1, 0x1 goto :goto_0 .line 2098 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_1 return-void .end method .method public dispatchContextItemSelected(Landroid/view/MenuItem;)Z .locals 3 .param p1, "item" # Landroid/view/MenuItem; .prologue .line 2173 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v2, :cond_1 .line 2174 const/4 v1, 0x0 .local v1, "i":I :goto_0 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 if-ge v1, v2, :cond_1 .line 2175 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 2176 .local v0, "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_0 .line 2177 invoke-virtual {v0, p1}, Landroid/support/v4/app/Fragment;->performContextItemSelected(Landroid/view/MenuItem;)Z move-result v2 if-eqz v2, :cond_0 .line 2178 const/4 v2, 0x1 .line 2183 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :goto_1 return v2 .line 2174 .restart local v0 # "f":Landroid/support/v4/app/Fragment; .restart local v1 # "i":I :cond_0 add-int/lit8 v1, v1, 0x1 goto :goto_0 .line 2183 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_1 const/4 v2, 0x0 goto :goto_1 .end method .method public dispatchCreate()V .locals 2 .prologue const/4 v1, 0x0 .line 2040 iput-boolean v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z .line 2041 const/4 v0, 0x1 invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V .line 2042 return-void .end method .method public dispatchCreateOptionsMenu(Landroid/view/Menu;Landroid/view/MenuInflater;)Z .locals 5 .param p1, "menu" # Landroid/view/Menu; .param p2, "inflater" # Landroid/view/MenuInflater; .prologue .line 2112 const/4 v3, 0x0 .line 2113 .local v3, "show":Z const/4 v2, 0x0 .line 2114 .local v2, "newMenus":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v4, :cond_2 .line 2115 const/4 v1, 0x0 .local v1, "i":I :goto_0 iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v4}, Ljava/util/ArrayList;->size()I move-result v4 if-ge v1, v4, :cond_2 .line 2116 iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v4, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 2117 .local v0, "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_1 .line 2118 invoke-virtual {v0, p1, p2}, Landroid/support/v4/app/Fragment;->performCreateOptionsMenu(Landroid/view/Menu;Landroid/view/MenuInflater;)Z move-result v4 if-eqz v4, :cond_1 .line 2119 const/4 v3, 0x1 .line 2120 if-nez v2, :cond_0 .line 2121 new-instance v2, Ljava/util/ArrayList; .end local v2 # "newMenus":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" invoke-direct {v2}, Ljava/util/ArrayList;->()V .line 2123 .restart local v2 # "newMenus":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" :cond_0 invoke-virtual {v2, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 2115 :cond_1 add-int/lit8 v1, v1, 0x1 goto :goto_0 .line 2129 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_2 iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCreatedMenus:Ljava/util/ArrayList; if-eqz v4, :cond_5 .line 2130 const/4 v1, 0x0 .restart local v1 # "i":I :goto_1 iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCreatedMenus:Ljava/util/ArrayList; invoke-virtual {v4}, Ljava/util/ArrayList;->size()I move-result v4 if-ge v1, v4, :cond_5 .line 2131 iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCreatedMenus:Ljava/util/ArrayList; invoke-virtual {v4, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 2132 .restart local v0 # "f":Landroid/support/v4/app/Fragment; if-eqz v2, :cond_3 invoke-virtual {v2, v0}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z move-result v4 if-nez v4, :cond_4 .line 2133 :cond_3 invoke-virtual {v0}, Landroid/support/v4/app/Fragment;->onDestroyOptionsMenu()V .line 2130 :cond_4 add-int/lit8 v1, v1, 0x1 goto :goto_1 .line 2138 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_5 iput-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCreatedMenus:Ljava/util/ArrayList; .line 2140 return v3 .end method .method public dispatchDestroy()V .locals 3 .prologue const/4 v2, 0x0 const/4 v1, 0x0 .line 2081 const/4 v0, 0x1 iput-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mDestroyed:Z .line 2082 invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->execPendingActions()Z .line 2083 invoke-virtual {p0, v2, v2}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V .line 2084 iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; .line 2085 iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mContainer:Landroid/support/v4/app/FragmentContainer; .line 2086 iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment; .line 2087 return-void .end method .method public dispatchDestroyView()V .locals 2 .prologue .line 2077 const/4 v0, 0x1 const/4 v1, 0x0 invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V .line 2078 return-void .end method .method public dispatchLowMemory()V .locals 3 .prologue .line 2101 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v2, :cond_1 .line 2102 const/4 v1, 0x0 .local v1, "i":I :goto_0 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 if-ge v1, v2, :cond_1 .line 2103 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 2104 .local v0, "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_0 .line 2105 invoke-virtual {v0}, Landroid/support/v4/app/Fragment;->performLowMemory()V .line 2102 :cond_0 add-int/lit8 v1, v1, 0x1 goto :goto_0 .line 2109 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_1 return-void .end method .method public dispatchOptionsItemSelected(Landroid/view/MenuItem;)Z .locals 3 .param p1, "item" # Landroid/view/MenuItem; .prologue .line 2159 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v2, :cond_1 .line 2160 const/4 v1, 0x0 .local v1, "i":I :goto_0 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 if-ge v1, v2, :cond_1 .line 2161 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 2162 .local v0, "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_0 .line 2163 invoke-virtual {v0, p1}, Landroid/support/v4/app/Fragment;->performOptionsItemSelected(Landroid/view/MenuItem;)Z move-result v2 if-eqz v2, :cond_0 .line 2164 const/4 v2, 0x1 .line 2169 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :goto_1 return v2 .line 2160 .restart local v0 # "f":Landroid/support/v4/app/Fragment; .restart local v1 # "i":I :cond_0 add-int/lit8 v1, v1, 0x1 goto :goto_0 .line 2169 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_1 const/4 v2, 0x0 goto :goto_1 .end method .method public dispatchOptionsMenuClosed(Landroid/view/Menu;)V .locals 3 .param p1, "menu" # Landroid/view/Menu; .prologue .line 2187 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v2, :cond_1 .line 2188 const/4 v1, 0x0 .local v1, "i":I :goto_0 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 if-ge v1, v2, :cond_1 .line 2189 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 2190 .local v0, "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_0 .line 2191 invoke-virtual {v0, p1}, Landroid/support/v4/app/Fragment;->performOptionsMenuClosed(Landroid/view/Menu;)V .line 2188 :cond_0 add-int/lit8 v1, v1, 0x1 goto :goto_0 .line 2195 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_1 return-void .end method .method public dispatchPause()V .locals 2 .prologue .line 2060 const/4 v0, 0x4 const/4 v1, 0x0 invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V .line 2061 return-void .end method .method public dispatchPrepareOptionsMenu(Landroid/view/Menu;)Z .locals 4 .param p1, "menu" # Landroid/view/Menu; .prologue .line 2144 const/4 v2, 0x0 .line 2145 .local v2, "show":Z iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v3, :cond_1 .line 2146 const/4 v1, 0x0 .local v1, "i":I :goto_0 iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v3}, Ljava/util/ArrayList;->size()I move-result v3 if-ge v1, v3, :cond_1 .line 2147 iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v3, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 2148 .local v0, "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_0 .line 2149 invoke-virtual {v0, p1}, Landroid/support/v4/app/Fragment;->performPrepareOptionsMenu(Landroid/view/Menu;)Z move-result v3 if-eqz v3, :cond_0 .line 2150 const/4 v2, 0x1 .line 2146 :cond_0 add-int/lit8 v1, v1, 0x1 goto :goto_0 .line 2155 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_1 return v2 .end method .method public dispatchReallyStop()V .locals 2 .prologue .line 2073 const/4 v0, 0x2 const/4 v1, 0x0 invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V .line 2074 return-void .end method .method public dispatchResume()V .locals 2 .prologue const/4 v1, 0x0 .line 2055 iput-boolean v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z .line 2056 const/4 v0, 0x5 invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V .line 2057 return-void .end method .method public dispatchStart()V .locals 2 .prologue const/4 v1, 0x0 .line 2050 iput-boolean v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z .line 2051 const/4 v0, 0x4 invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V .line 2052 return-void .end method .method public dispatchStop()V .locals 2 .prologue .line 2067 const/4 v0, 0x1 iput-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z .line 2069 const/4 v0, 0x3 const/4 v1, 0x0 invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V .line 2070 return-void .end method .method public dump(Ljava/lang/String;Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V .locals 8 .param p1, "prefix" # Ljava/lang/String; .param p2, "fd" # Ljava/io/FileDescriptor; .param p3, "writer" # Ljava/io/PrintWriter; .param p4, "args" # [Ljava/lang/String; .prologue .line 719 new-instance v6, Ljava/lang/StringBuilder; invoke-direct {v6}, Ljava/lang/StringBuilder;->()V invoke-virtual {v6, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v6 const-string v7, " " invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v6 invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v4 .line 722 .local v4, "innerPrefix":Ljava/lang/String; iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; if-eqz v6, :cond_1 .line 723 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v6}, Ljava/util/ArrayList;->size()I move-result v0 .line 724 .local v0, "N":I if-lez v0, :cond_1 .line 725 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, "Active Fragments in " invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V .line 726 invoke-static {p0}, Ljava/lang/System;->identityHashCode(Ljava/lang/Object;)I move-result v6 invoke-static {v6}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String; move-result-object v6 invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V .line 727 const-string v6, ":" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 728 const/4 v3, 0x0 .local v3, "i":I :goto_0 if-ge v3, v0, :cond_1 .line 729 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v6, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v2 check-cast v2, Landroid/support/v4/app/Fragment; .line 730 .local v2, "f":Landroid/support/v4/app/Fragment; invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " #" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V invoke-virtual {p3, v3}, Ljava/io/PrintWriter;->print(I)V .line 731 const-string v6, ": " invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V invoke-virtual {p3, v2}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V .line 732 if-eqz v2, :cond_0 .line 733 invoke-virtual {v2, v4, p2, p3, p4}, Landroid/support/v4/app/Fragment;->dump(Ljava/lang/String;Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V .line 728 :cond_0 add-int/lit8 v3, v3, 0x1 goto :goto_0 .line 739 .end local v0 # "N":I .end local v2 # "f":Landroid/support/v4/app/Fragment; .end local v3 # "i":I :cond_1 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v6, :cond_2 .line 740 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v6}, Ljava/util/ArrayList;->size()I move-result v0 .line 741 .restart local v0 # "N":I if-lez v0, :cond_2 .line 742 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, "Added Fragments:" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 743 const/4 v3, 0x0 .restart local v3 # "i":I :goto_1 if-ge v3, v0, :cond_2 .line 744 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v6, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v2 check-cast v2, Landroid/support/v4/app/Fragment; .line 745 .restart local v2 # "f":Landroid/support/v4/app/Fragment; invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " #" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V invoke-virtual {p3, v3}, Ljava/io/PrintWriter;->print(I)V .line 746 const-string v6, ": " invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V invoke-virtual {v2}, Landroid/support/v4/app/Fragment;->toString()Ljava/lang/String; move-result-object v6 invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 743 add-int/lit8 v3, v3, 0x1 goto :goto_1 .line 751 .end local v0 # "N":I .end local v2 # "f":Landroid/support/v4/app/Fragment; .end local v3 # "i":I :cond_2 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCreatedMenus:Ljava/util/ArrayList; if-eqz v6, :cond_3 .line 752 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCreatedMenus:Ljava/util/ArrayList; invoke-virtual {v6}, Ljava/util/ArrayList;->size()I move-result v0 .line 753 .restart local v0 # "N":I if-lez v0, :cond_3 .line 754 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, "Fragments Created Menus:" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 755 const/4 v3, 0x0 .restart local v3 # "i":I :goto_2 if-ge v3, v0, :cond_3 .line 756 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCreatedMenus:Ljava/util/ArrayList; invoke-virtual {v6, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v2 check-cast v2, Landroid/support/v4/app/Fragment; .line 757 .restart local v2 # "f":Landroid/support/v4/app/Fragment; invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " #" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V invoke-virtual {p3, v3}, Ljava/io/PrintWriter;->print(I)V .line 758 const-string v6, ": " invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V invoke-virtual {v2}, Landroid/support/v4/app/Fragment;->toString()Ljava/lang/String; move-result-object v6 invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 755 add-int/lit8 v3, v3, 0x1 goto :goto_2 .line 763 .end local v0 # "N":I .end local v2 # "f":Landroid/support/v4/app/Fragment; .end local v3 # "i":I :cond_3 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; if-eqz v6, :cond_4 .line 764 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v6}, Ljava/util/ArrayList;->size()I move-result v0 .line 765 .restart local v0 # "N":I if-lez v0, :cond_4 .line 766 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, "Back Stack:" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 767 const/4 v3, 0x0 .restart local v3 # "i":I :goto_3 if-ge v3, v0, :cond_4 .line 768 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v6, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/app/BackStackRecord; .line 769 .local v1, "bs":Landroid/support/v4/app/BackStackRecord; invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " #" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V invoke-virtual {p3, v3}, Ljava/io/PrintWriter;->print(I)V .line 770 const-string v6, ": " invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V invoke-virtual {v1}, Landroid/support/v4/app/BackStackRecord;->toString()Ljava/lang/String; move-result-object v6 invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 771 invoke-virtual {v1, v4, p2, p3, p4}, Landroid/support/v4/app/BackStackRecord;->dump(Ljava/lang/String;Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V .line 767 add-int/lit8 v3, v3, 0x1 goto :goto_3 .line 776 .end local v0 # "N":I .end local v1 # "bs":Landroid/support/v4/app/BackStackRecord; .end local v3 # "i":I :cond_4 monitor-enter p0 .line 777 :try_start_0 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; if-eqz v6, :cond_5 .line 778 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; invoke-virtual {v6}, Ljava/util/ArrayList;->size()I move-result v0 .line 779 .restart local v0 # "N":I if-lez v0, :cond_5 .line 780 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, "Back Stack Indices:" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 781 const/4 v3, 0x0 .restart local v3 # "i":I :goto_4 if-ge v3, v0, :cond_5 .line 782 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; invoke-virtual {v6, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/app/BackStackRecord; .line 783 .restart local v1 # "bs":Landroid/support/v4/app/BackStackRecord; invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " #" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V invoke-virtual {p3, v3}, Ljava/io/PrintWriter;->print(I)V .line 784 const-string v6, ": " invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V invoke-virtual {p3, v1}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V .line 781 add-int/lit8 v3, v3, 0x1 goto :goto_4 .line 789 .end local v0 # "N":I .end local v1 # "bs":Landroid/support/v4/app/BackStackRecord; .end local v3 # "i":I :cond_5 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; if-eqz v6, :cond_6 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; invoke-virtual {v6}, Ljava/util/ArrayList;->size()I move-result v6 if-lez v6, :cond_6 .line 790 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, "mAvailBackStackIndices: " invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V .line 791 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; invoke-virtual {v6}, Ljava/util/ArrayList;->toArray()[Ljava/lang/Object; move-result-object v6 invoke-static {v6}, Ljava/util/Arrays;->toString([Ljava/lang/Object;)Ljava/lang/String; move-result-object v6 invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 793 :cond_6 monitor-exit p0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 795 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList; if-eqz v6, :cond_7 .line 796 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList; invoke-virtual {v6}, Ljava/util/ArrayList;->size()I move-result v0 .line 797 .restart local v0 # "N":I if-lez v0, :cond_7 .line 798 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, "Pending Actions:" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 799 const/4 v3, 0x0 .restart local v3 # "i":I :goto_5 if-ge v3, v0, :cond_7 .line 800 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList; invoke-virtual {v6, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v5 check-cast v5, Ljava/lang/Runnable; .line 801 .local v5, "r":Ljava/lang/Runnable; invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " #" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V invoke-virtual {p3, v3}, Ljava/io/PrintWriter;->print(I)V .line 802 const-string v6, ": " invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V invoke-virtual {p3, v5}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V .line 799 add-int/lit8 v3, v3, 0x1 goto :goto_5 .line 793 .end local v0 # "N":I .end local v3 # "i":I .end local v5 # "r":Ljava/lang/Runnable; :catchall_0 move-exception v6 :try_start_1 monitor-exit p0 :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_0 throw v6 .line 807 :cond_7 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, "FragmentManager misc state:" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 808 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " mHost=" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V .line 809 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " mContainer=" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mContainer:Landroid/support/v4/app/FragmentContainer; invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V .line 810 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment; if-eqz v6, :cond_8 .line 811 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " mParent=" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment; invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V .line 813 :cond_8 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " mCurState=" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V iget v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(I)V .line 814 const-string v6, " mStateSaved=" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V iget-boolean v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Z)V .line 815 const-string v6, " mDestroyed=" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V iget-boolean v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mDestroyed:Z invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Z)V .line 816 iget-boolean v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z if-eqz v6, :cond_9 .line 817 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " mNeedMenuInvalidate=" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V .line 818 iget-boolean v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Z)V .line 820 :cond_9 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNoTransactionsBecause:Ljava/lang/String; if-eqz v6, :cond_a .line 821 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " mNoTransactionsBecause=" invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V .line 822 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNoTransactionsBecause:Ljava/lang/String; invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 824 :cond_a iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; if-eqz v6, :cond_b iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; invoke-virtual {v6}, Ljava/util/ArrayList;->size()I move-result v6 if-lez v6, :cond_b .line 825 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V const-string v6, " mAvailIndices: " invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V .line 826 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; invoke-virtual {v6}, Ljava/util/ArrayList;->toArray()[Ljava/lang/Object; move-result-object v6 invoke-static {v6}, Ljava/util/Arrays;->toString([Ljava/lang/Object;)Ljava/lang/String; move-result-object v6 invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V .line 828 :cond_b return-void .end method .method public enqueueAction(Ljava/lang/Runnable;Z)V .locals 2 .param p1, "action" # Ljava/lang/Runnable; .param p2, "allowStateLoss" # Z .prologue .line 1510 if-nez p2, :cond_0 .line 1511 invoke-direct {p0}, Landroid/support/v4/app/FragmentManagerImpl;->checkStateLoss()V .line 1513 :cond_0 monitor-enter p0 .line 1514 :try_start_0 iget-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mDestroyed:Z if-nez v0, :cond_1 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; if-nez v0, :cond_2 .line 1515 :cond_1 new-instance v0, Ljava/lang/IllegalStateException; const-string v1, "Activity has been destroyed" invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .line 1525 :catchall_0 move-exception v0 monitor-exit p0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v0 .line 1517 :cond_2 :try_start_1 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList; if-nez v0, :cond_3 .line 1518 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList; .line 1520 :cond_3 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1521 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 const/4 v1, 0x1 if-ne v0, v1, :cond_4 .line 1522 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v0}, Landroid/support/v4/app/FragmentHostCallback;->getHandler()Landroid/os/Handler; move-result-object v0 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecCommit:Ljava/lang/Runnable; invoke-virtual {v0, v1}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V .line 1523 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v0}, Landroid/support/v4/app/FragmentHostCallback;->getHandler()Landroid/os/Handler; move-result-object v0 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecCommit:Ljava/lang/Runnable; invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z .line 1525 :cond_4 monitor-exit p0 :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_0 .line 1526 return-void .end method .method public execPendingActions()Z .locals 8 .prologue const/4 v7, 0x0 .line 1588 iget-boolean v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecutingActions:Z if-eqz v5, :cond_0 .line 1589 new-instance v5, Ljava/lang/IllegalStateException; const-string v6, "Recursive entry to executePendingTransactions" invoke-direct {v5, v6}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v5 .line 1592 :cond_0 invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper; move-result-object v5 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v6}, Landroid/support/v4/app/FragmentHostCallback;->getHandler()Landroid/os/Handler; move-result-object v6 invoke-virtual {v6}, Landroid/os/Handler;->getLooper()Landroid/os/Looper; move-result-object v6 if-eq v5, v6, :cond_1 .line 1593 new-instance v5, Ljava/lang/IllegalStateException; const-string v6, "Must be called from main thread of process" invoke-direct {v5, v6}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v5 .line 1596 :cond_1 const/4 v0, 0x0 .line 1601 .local v0, "didSomething":Z :goto_0 monitor-enter p0 .line 1602 :try_start_0 iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList; if-eqz v5, :cond_2 iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList; invoke-virtual {v5}, Ljava/util/ArrayList;->size()I move-result v5 if-nez v5, :cond_4 .line 1603 :cond_2 monitor-exit p0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 1624 iget-boolean v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHavePendingDeferredStart:Z if-eqz v5, :cond_9 .line 1625 const/4 v3, 0x0 .line 1626 .local v3, "loadersRunning":Z const/4 v2, 0x0 .local v2, "i":I :goto_1 iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v5}, Ljava/util/ArrayList;->size()I move-result v5 if-ge v2, v5, :cond_8 .line 1627 iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v5, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/app/Fragment; .line 1628 .local v1, "f":Landroid/support/v4/app/Fragment; if-eqz v1, :cond_3 iget-object v5, v1, Landroid/support/v4/app/Fragment;->mLoaderManager:Landroid/support/v4/app/LoaderManagerImpl; if-eqz v5, :cond_3 .line 1629 iget-object v5, v1, Landroid/support/v4/app/Fragment;->mLoaderManager:Landroid/support/v4/app/LoaderManagerImpl; invoke-virtual {v5}, Landroid/support/v4/app/LoaderManagerImpl;->hasRunningLoaders()Z move-result v5 or-int/2addr v3, v5 .line 1626 :cond_3 add-int/lit8 v2, v2, 0x1 goto :goto_1 .line 1606 .end local v1 # "f":Landroid/support/v4/app/Fragment; .end local v2 # "i":I .end local v3 # "loadersRunning":Z :cond_4 :try_start_1 iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList; invoke-virtual {v5}, Ljava/util/ArrayList;->size()I move-result v4 .line 1607 .local v4, "numActions":I iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mTmpActions:[Ljava/lang/Runnable; if-eqz v5, :cond_5 iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mTmpActions:[Ljava/lang/Runnable; array-length v5, v5 if-ge v5, v4, :cond_6 .line 1608 :cond_5 new-array v5, v4, [Ljava/lang/Runnable; iput-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mTmpActions:[Ljava/lang/Runnable; .line 1610 :cond_6 iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList; iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mTmpActions:[Ljava/lang/Runnable; invoke-virtual {v5, v6}, Ljava/util/ArrayList;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; .line 1611 iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList; invoke-virtual {v5}, Ljava/util/ArrayList;->clear()V .line 1612 iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v5}, Landroid/support/v4/app/FragmentHostCallback;->getHandler()Landroid/os/Handler; move-result-object v5 iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecCommit:Ljava/lang/Runnable; invoke-virtual {v5, v6}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V .line 1613 monitor-exit p0 :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_0 .line 1615 const/4 v5, 0x1 iput-boolean v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecutingActions:Z .line 1616 const/4 v2, 0x0 .restart local v2 # "i":I :goto_2 if-ge v2, v4, :cond_7 .line 1617 iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mTmpActions:[Ljava/lang/Runnable; aget-object v5, v5, v2 invoke-interface {v5}, Ljava/lang/Runnable;->run()V .line 1618 iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mTmpActions:[Ljava/lang/Runnable; const/4 v6, 0x0 aput-object v6, v5, v2 .line 1616 add-int/lit8 v2, v2, 0x1 goto :goto_2 .line 1613 .end local v2 # "i":I .end local v4 # "numActions":I :catchall_0 move-exception v5 :try_start_2 monitor-exit p0 :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 throw v5 .line 1620 .restart local v2 # "i":I .restart local v4 # "numActions":I :cond_7 iput-boolean v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecutingActions:Z .line 1621 const/4 v0, 0x1 .line 1622 goto :goto_0 .line 1632 .end local v4 # "numActions":I .restart local v3 # "loadersRunning":Z :cond_8 if-nez v3, :cond_9 .line 1633 iput-boolean v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHavePendingDeferredStart:Z .line 1634 invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->startPendingDeferredFragments()V .line 1637 .end local v2 # "i":I .end local v3 # "loadersRunning":Z :cond_9 return v0 .end method .method public executePendingTransactions()Z .locals 1 .prologue .line 570 invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->execPendingActions()Z move-result v0 return v0 .end method .method public findFragmentById(I)Landroid/support/v4/app/Fragment; .locals 3 .param p1, "id" # I .prologue .line 1436 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v2, :cond_2 .line 1438 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 add-int/lit8 v1, v2, -0x1 .local v1, "i":I :goto_0 if-ltz v1, :cond_2 .line 1439 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 1440 .local v0, "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_1 iget v2, v0, Landroid/support/v4/app/Fragment;->mFragmentId:I if-ne v2, p1, :cond_1 .line 1454 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_0 :goto_1 return-object v0 .line 1438 .restart local v0 # "f":Landroid/support/v4/app/Fragment; .restart local v1 # "i":I :cond_1 add-int/lit8 v1, v1, -0x1 goto :goto_0 .line 1445 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_2 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; if-eqz v2, :cond_4 .line 1447 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 add-int/lit8 v1, v2, -0x1 .restart local v1 # "i":I :goto_2 if-ltz v1, :cond_4 .line 1448 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 1449 .restart local v0 # "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_3 iget v2, v0, Landroid/support/v4/app/Fragment;->mFragmentId:I if-eq v2, p1, :cond_0 .line 1447 :cond_3 add-int/lit8 v1, v1, -0x1 goto :goto_2 .line 1454 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_4 const/4 v0, 0x0 goto :goto_1 .end method .method public findFragmentByTag(Ljava/lang/String;)Landroid/support/v4/app/Fragment; .locals 3 .param p1, "tag" # Ljava/lang/String; .prologue .line 1458 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v2, :cond_2 if-eqz p1, :cond_2 .line 1460 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 add-int/lit8 v1, v2, -0x1 .local v1, "i":I :goto_0 if-ltz v1, :cond_2 .line 1461 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 1462 .local v0, "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_1 iget-object v2, v0, Landroid/support/v4/app/Fragment;->mTag:Ljava/lang/String; invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2 if-eqz v2, :cond_1 .line 1476 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_0 :goto_1 return-object v0 .line 1460 .restart local v0 # "f":Landroid/support/v4/app/Fragment; .restart local v1 # "i":I :cond_1 add-int/lit8 v1, v1, -0x1 goto :goto_0 .line 1467 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_2 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; if-eqz v2, :cond_4 if-eqz p1, :cond_4 .line 1469 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 add-int/lit8 v1, v2, -0x1 .restart local v1 # "i":I :goto_2 if-ltz v1, :cond_4 .line 1470 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 1471 .restart local v0 # "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_3 iget-object v2, v0, Landroid/support/v4/app/Fragment;->mTag:Ljava/lang/String; invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v2 if-nez v2, :cond_0 .line 1469 :cond_3 add-int/lit8 v1, v1, -0x1 goto :goto_2 .line 1476 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_4 const/4 v0, 0x0 goto :goto_1 .end method .method public findFragmentByWho(Ljava/lang/String;)Landroid/support/v4/app/Fragment; .locals 3 .param p1, "who" # Ljava/lang/String; .prologue .line 1480 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; if-eqz v2, :cond_1 if-eqz p1, :cond_1 .line 1481 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 add-int/lit8 v1, v2, -0x1 .local v1, "i":I :goto_0 if-ltz v1, :cond_1 .line 1482 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 1483 .local v0, "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_0 invoke-virtual {v0, p1}, Landroid/support/v4/app/Fragment;->findFragmentByWho(Ljava/lang/String;)Landroid/support/v4/app/Fragment; move-result-object v0 if-eqz v0, :cond_0 .line 1488 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :goto_1 return-object v0 .line 1481 .restart local v0 # "f":Landroid/support/v4/app/Fragment; .restart local v1 # "i":I :cond_0 add-int/lit8 v1, v1, -0x1 goto :goto_0 .line 1488 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v1 # "i":I :cond_1 const/4 v0, 0x0 goto :goto_1 .end method .method public freeBackStackIndex(I)V .locals 3 .param p1, "index" # I .prologue .line 1574 monitor-enter p0 .line 1575 :try_start_0 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; const/4 v1, 0x0 invoke-virtual {v0, p1, v1}, Ljava/util/ArrayList;->set(ILjava/lang/Object;)Ljava/lang/Object; .line 1576 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; if-nez v0, :cond_0 .line 1577 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; .line 1579 :cond_0 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_1 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "Freeing back stack index " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1580 :cond_1 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v1 invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1581 monitor-exit p0 .line 1582 return-void .line 1581 :catchall_0 move-exception v0 monitor-exit p0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v0 .end method .method public getBackStackEntryAt(I)Landroid/support/v4/app/FragmentManager$BackStackEntry; .locals 1 .param p1, "index" # I .prologue .line 634 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/FragmentManager$BackStackEntry; return-object v0 .end method .method public getBackStackEntryCount()I .locals 1 .prologue .line 629 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; if-eqz v0, :cond_0 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 :goto_0 return v0 :cond_0 const/4 v0, 0x0 goto :goto_0 .end method .method public getFragment(Landroid/os/Bundle;Ljava/lang/String;)Landroid/support/v4/app/Fragment; .locals 5 .param p1, "bundle" # Landroid/os/Bundle; .param p2, "key" # Ljava/lang/String; .prologue const/4 v2, -0x1 .line 663 invoke-virtual {p1, p2, v2}, Landroid/os/Bundle;->getInt(Ljava/lang/String;I)I move-result v1 .line 664 .local v1, "index":I if-ne v1, v2, :cond_1 .line 665 const/4 v0, 0x0 .line 676 :cond_0 :goto_0 return-object v0 .line 667 :cond_1 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 if-lt v1, v2, :cond_2 .line 668 new-instance v2, Ljava/lang/IllegalStateException; new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v4, "Fragment no longer exists for key " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 const-string v4, ": index " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-direct {v2, v3}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V invoke-direct {p0, v2}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V .line 671 :cond_2 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 672 .local v0, "f":Landroid/support/v4/app/Fragment; if-nez v0, :cond_0 .line 673 new-instance v2, Ljava/lang/IllegalStateException; new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v4, "Fragment no longer exists for key " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 const-string v4, ": index " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-direct {v2, v3}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V invoke-direct {p0, v2}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V goto :goto_0 .end method .method public getFragments()Ljava/util/List; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/List", "<", "Landroid/support/v4/app/Fragment;", ">;" } .end annotation .prologue .line 681 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; return-object v0 .end method .method getLayoutInflaterFactory()Landroid/support/v4/view/LayoutInflaterFactory; .locals 0 .prologue .line 2332 return-object p0 .end method .method public hideFragment(Landroid/support/v4/app/Fragment;II)V .locals 5 .param p1, "fragment" # Landroid/support/v4/app/Fragment; .param p2, "transition" # I .param p3, "transitionStyle" # I .prologue const/4 v4, 0x1 .line 1355 sget-boolean v1, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v1, :cond_0 const-string v1, "FragmentManager" new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "hide: " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-static {v1, v2}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1356 :cond_0 iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mHidden:Z if-nez v1, :cond_4 .line 1357 iput-boolean v4, p1, Landroid/support/v4/app/Fragment;->mHidden:Z .line 1358 iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; if-eqz v1, :cond_2 .line 1359 const/4 v1, 0x0 invoke-virtual {p0, p1, p2, v1, p3}, Landroid/support/v4/app/FragmentManagerImpl;->loadAnimation(Landroid/support/v4/app/Fragment;IZI)Landroid/view/animation/Animation; move-result-object v0 .line 1361 .local v0, "anim":Landroid/view/animation/Animation; if-eqz v0, :cond_1 .line 1362 iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-direct {p0, v1, v0}, Landroid/support/v4/app/FragmentManagerImpl;->setHWLayerAnimListenerIfAlpha(Landroid/view/View;Landroid/view/animation/Animation;)V .line 1363 iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-virtual {v1, v0}, Landroid/view/View;->startAnimation(Landroid/view/animation/Animation;)V .line 1365 :cond_1 iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; const/16 v2, 0x8 invoke-virtual {v1, v2}, Landroid/view/View;->setVisibility(I)V .line 1367 .end local v0 # "anim":Landroid/view/animation/Animation; :cond_2 iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mAdded:Z if-eqz v1, :cond_3 iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mHasMenu:Z if-eqz v1, :cond_3 iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mMenuVisible:Z if-eqz v1, :cond_3 .line 1368 iput-boolean v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z .line 1370 :cond_3 invoke-virtual {p1, v4}, Landroid/support/v4/app/Fragment;->onHiddenChanged(Z)V .line 1372 :cond_4 return-void .end method .method public isDestroyed()Z .locals 1 .prologue .line 699 iget-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mDestroyed:Z return v0 .end method .method loadAnimation(Landroid/support/v4/app/Fragment;IZI)Landroid/view/animation/Animation; .locals 9 .param p1, "fragment" # Landroid/support/v4/app/Fragment; .param p2, "transit" # I .param p3, "enter" # Z .param p4, "transitionStyle" # I .prologue const v8, 0x3f79999a # 0.975f const/4 v3, 0x0 const/4 v7, 0x0 const/high16 v6, 0x3f800000 # 1.0f .line 861 iget v4, p1, Landroid/support/v4/app/Fragment;->mNextAnim:I invoke-virtual {p1, p2, p3, v4}, Landroid/support/v4/app/Fragment;->onCreateAnimation(IZI)Landroid/view/animation/Animation; move-result-object v1 .line 863 .local v1, "animObj":Landroid/view/animation/Animation; if-eqz v1, :cond_0 .line 915 .end local v1 # "animObj":Landroid/view/animation/Animation; :goto_0 return-object v1 .line 867 .restart local v1 # "animObj":Landroid/view/animation/Animation; :cond_0 iget v4, p1, Landroid/support/v4/app/Fragment;->mNextAnim:I if-eqz v4, :cond_1 .line 868 iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v4}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v4 iget v5, p1, Landroid/support/v4/app/Fragment;->mNextAnim:I invoke-static {v4, v5}, Landroid/view/animation/AnimationUtils;->loadAnimation(Landroid/content/Context;I)Landroid/view/animation/Animation; move-result-object v0 .line 869 .local v0, "anim":Landroid/view/animation/Animation; if-eqz v0, :cond_1 move-object v1, v0 .line 870 goto :goto_0 .line 874 .end local v0 # "anim":Landroid/view/animation/Animation; :cond_1 if-nez p2, :cond_2 move-object v1, v3 .line 875 goto :goto_0 .line 878 :cond_2 invoke-static {p2, p3}, Landroid/support/v4/app/FragmentManagerImpl;->transitToStyleIndex(IZ)I move-result v2 .line 879 .local v2, "styleIndex":I if-gez v2, :cond_3 move-object v1, v3 .line 880 goto :goto_0 .line 883 :cond_3 packed-switch v2, :pswitch_data_0 .line 898 if-nez p4, :cond_4 iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v4}, Landroid/support/v4/app/FragmentHostCallback;->onHasWindowAnimations()Z move-result v4 if-eqz v4, :cond_4 .line 899 iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v4}, Landroid/support/v4/app/FragmentHostCallback;->onGetWindowAnimations()I move-result p4 .line 901 :cond_4 if-nez p4, :cond_5 move-object v1, v3 .line 902 goto :goto_0 .line 885 :pswitch_0 iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v3}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v3 const/high16 v4, 0x3f900000 # 1.125f invoke-static {v3, v4, v6, v7, v6}, Landroid/support/v4/app/FragmentManagerImpl;->makeOpenCloseAnimation(Landroid/content/Context;FFFF)Landroid/view/animation/Animation; move-result-object v1 goto :goto_0 .line 887 :pswitch_1 iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v3}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v3 invoke-static {v3, v6, v8, v6, v7}, Landroid/support/v4/app/FragmentManagerImpl;->makeOpenCloseAnimation(Landroid/content/Context;FFFF)Landroid/view/animation/Animation; move-result-object v1 goto :goto_0 .line 889 :pswitch_2 iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v3}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v3 invoke-static {v3, v8, v6, v7, v6}, Landroid/support/v4/app/FragmentManagerImpl;->makeOpenCloseAnimation(Landroid/content/Context;FFFF)Landroid/view/animation/Animation; move-result-object v1 goto :goto_0 .line 891 :pswitch_3 iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v3}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v3 const v4, 0x3f89999a # 1.075f invoke-static {v3, v6, v4, v6, v7}, Landroid/support/v4/app/FragmentManagerImpl;->makeOpenCloseAnimation(Landroid/content/Context;FFFF)Landroid/view/animation/Animation; move-result-object v1 goto :goto_0 .line 893 :pswitch_4 iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v3}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v3 invoke-static {v3, v7, v6}, Landroid/support/v4/app/FragmentManagerImpl;->makeFadeAnimation(Landroid/content/Context;FF)Landroid/view/animation/Animation; move-result-object v1 goto :goto_0 .line 895 :pswitch_5 iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v3}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v3 invoke-static {v3, v6, v7}, Landroid/support/v4/app/FragmentManagerImpl;->makeFadeAnimation(Landroid/content/Context;FF)Landroid/view/animation/Animation; move-result-object v1 goto :goto_0 :cond_5 move-object v1, v3 .line 915 goto :goto_0 .line 883 :pswitch_data_0 .packed-switch 0x1 :pswitch_0 :pswitch_1 :pswitch_2 :pswitch_3 :pswitch_4 :pswitch_5 .end packed-switch .end method .method makeActive(Landroid/support/v4/app/Fragment;)V .locals 3 .param p1, "f" # Landroid/support/v4/app/Fragment; .prologue .line 1282 iget v0, p1, Landroid/support/v4/app/Fragment;->mIndex:I if-ltz v0, :cond_1 .line 1298 :cond_0 :goto_0 return-void .line 1286 :cond_1 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; if-eqz v0, :cond_2 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 if-gtz v0, :cond_4 .line 1287 :cond_2 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; if-nez v0, :cond_3 .line 1288 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; .line 1290 :cond_3 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment; invoke-virtual {p1, v0, v1}, Landroid/support/v4/app/Fragment;->setIndex(ILandroid/support/v4/app/Fragment;)V .line 1291 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1297 :goto_1 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_0 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "Allocated fragment index " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I goto :goto_0 .line 1294 :cond_4 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; invoke-virtual {v1}, Ljava/util/ArrayList;->size()I move-result v1 add-int/lit8 v1, v1, -0x1 invoke-virtual {v0, v1}, Ljava/util/ArrayList;->remove(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/lang/Integer; invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I move-result v0 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment; invoke-virtual {p1, v0, v1}, Landroid/support/v4/app/Fragment;->setIndex(ILandroid/support/v4/app/Fragment;)V .line 1295 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; iget v1, p1, Landroid/support/v4/app/Fragment;->mIndex:I invoke-virtual {v0, v1, p1}, Ljava/util/ArrayList;->set(ILjava/lang/Object;)Ljava/lang/Object; goto :goto_1 .end method .method makeInactive(Landroid/support/v4/app/Fragment;)V .locals 3 .param p1, "f" # Landroid/support/v4/app/Fragment; .prologue .line 1301 iget v0, p1, Landroid/support/v4/app/Fragment;->mIndex:I if-gez v0, :cond_0 .line 1313 :goto_0 return-void .line 1305 :cond_0 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_1 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "Freeing fragment index " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1306 :cond_1 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; iget v1, p1, Landroid/support/v4/app/Fragment;->mIndex:I const/4 v2, 0x0 invoke-virtual {v0, v1, v2}, Ljava/util/ArrayList;->set(ILjava/lang/Object;)Ljava/lang/Object; .line 1307 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; if-nez v0, :cond_2 .line 1308 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; .line 1310 :cond_2 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; iget v1, p1, Landroid/support/v4/app/Fragment;->mIndex:I invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v1 invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1311 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; iget-object v1, p1, Landroid/support/v4/app/Fragment;->mWho:Ljava/lang/String; invoke-virtual {v0, v1}, Landroid/support/v4/app/FragmentHostCallback;->inactivateFragment(Ljava/lang/String;)V .line 1312 invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->initState()V goto :goto_0 .end method .method moveToState(IIIZ)V .locals 8 .param p1, "newState" # I .param p2, "transit" # I .param p3, "transitStyle" # I .param p4, "always" # Z .prologue const/4 v5, 0x0 .line 1238 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; if-nez v0, :cond_0 if-eqz p1, :cond_0 .line 1239 new-instance v0, Ljava/lang/IllegalStateException; const-string v2, "No host" invoke-direct {v0, v2}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .line 1242 :cond_0 if-nez p4, :cond_2 iget v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I if-ne v0, p1, :cond_2 .line 1268 :cond_1 :goto_0 return-void .line 1246 :cond_2 iput p1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I .line 1247 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; if-eqz v0, :cond_1 .line 1248 const/4 v7, 0x0 .line 1249 .local v7, "loadersRunning":Z const/4 v6, 0x0 .local v6, "i":I :goto_1 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v0 if-ge v6, v0, :cond_4 .line 1250 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v0, v6}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/app/Fragment; .line 1251 .local v1, "f":Landroid/support/v4/app/Fragment; if-eqz v1, :cond_3 move-object v0, p0 move v2, p1 move v3, p2 move v4, p3 .line 1252 invoke-virtual/range {v0 .. v5}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;IIIZ)V .line 1253 iget-object v0, v1, Landroid/support/v4/app/Fragment;->mLoaderManager:Landroid/support/v4/app/LoaderManagerImpl; if-eqz v0, :cond_3 .line 1254 iget-object v0, v1, Landroid/support/v4/app/Fragment;->mLoaderManager:Landroid/support/v4/app/LoaderManagerImpl; invoke-virtual {v0}, Landroid/support/v4/app/LoaderManagerImpl;->hasRunningLoaders()Z move-result v0 or-int/2addr v7, v0 .line 1249 :cond_3 add-int/lit8 v6, v6, 0x1 goto :goto_1 .line 1259 .end local v1 # "f":Landroid/support/v4/app/Fragment; :cond_4 if-nez v7, :cond_5 .line 1260 invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->startPendingDeferredFragments()V .line 1263 :cond_5 iget-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z if-eqz v0, :cond_1 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; if-eqz v0, :cond_1 iget v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I const/4 v2, 0x5 if-ne v0, v2, :cond_1 .line 1264 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v0}, Landroid/support/v4/app/FragmentHostCallback;->onSupportInvalidateOptionsMenu()V .line 1265 iput-boolean v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z goto :goto_0 .end method .method moveToState(IZ)V .locals 1 .param p1, "newState" # I .param p2, "always" # Z .prologue const/4 v0, 0x0 .line 1234 invoke-virtual {p0, p1, v0, v0, p2}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IIIZ)V .line 1235 return-void .end method .method moveToState(Landroid/support/v4/app/Fragment;)V .locals 6 .param p1, "f" # Landroid/support/v4/app/Fragment; .prologue const/4 v3, 0x0 .line 1230 iget v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I move-object v0, p0 move-object v1, p1 move v4, v3 move v5, v3 invoke-virtual/range {v0 .. v5}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;IIIZ)V .line 1231 return-void .end method .method moveToState(Landroid/support/v4/app/Fragment;IIIZ)V .locals 11 .param p1, "f" # Landroid/support/v4/app/Fragment; .param p2, "newState" # I .param p3, "transit" # I .param p4, "transitionStyle" # I .param p5, "keepActive" # Z .prologue .line 965 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mAdded:Z if-eqz v0, :cond_0 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mDetached:Z if-eqz v0, :cond_1 :cond_0 const/4 v0, 0x1 if-le p2, v0, :cond_1 .line 966 const/4 p2, 0x1 .line 968 :cond_1 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRemoving:Z if-eqz v0, :cond_2 iget v0, p1, Landroid/support/v4/app/Fragment;->mState:I if-le p2, v0, :cond_2 .line 970 iget p2, p1, Landroid/support/v4/app/Fragment;->mState:I .line 974 :cond_2 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mDeferStart:Z if-eqz v0, :cond_3 iget v0, p1, Landroid/support/v4/app/Fragment;->mState:I const/4 v1, 0x4 if-ge v0, v1, :cond_3 const/4 v0, 0x3 if-le p2, v0, :cond_3 .line 975 const/4 p2, 0x3 .line 977 :cond_3 iget v0, p1, Landroid/support/v4/app/Fragment;->mState:I if-ge v0, p2, :cond_20 .line 981 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mFromLayout:Z if-eqz v0, :cond_5 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mInLayout:Z if-nez v0, :cond_5 .line 1227 :cond_4 :goto_0 return-void .line 984 :cond_5 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View; if-eqz v0, :cond_6 .line 989 const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View; .line 990 iget v2, p1, Landroid/support/v4/app/Fragment;->mStateAfterAnimating:I const/4 v3, 0x0 const/4 v4, 0x0 const/4 v5, 0x1 move-object v0, p0 move-object v1, p1 invoke-virtual/range {v0 .. v5}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;IIIZ)V .line 992 :cond_6 iget v0, p1, Landroid/support/v4/app/Fragment;->mState:I packed-switch v0, :pswitch_data_0 .line 1222 :cond_7 :goto_1 iget v0, p1, Landroid/support/v4/app/Fragment;->mState:I if-eq v0, p2, :cond_4 .line 1223 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "moveToState: Fragment state for " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 const-string v2, " not updated inline; " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 const-string v2, "expected state " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v1 const-string v2, " found " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 iget v2, p1, Landroid/support/v4/app/Fragment;->mState:I invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I .line 1225 iput p2, p1, Landroid/support/v4/app/Fragment;->mState:I goto :goto_0 .line 994 :pswitch_0 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_8 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "moveto CREATED: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 995 :cond_8 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; if-eqz v0, :cond_a .line 996 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v1}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v1 invoke-virtual {v1}, Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader; move-result-object v1 invoke-virtual {v0, v1}, Landroid/os/Bundle;->setClassLoader(Ljava/lang/ClassLoader;)V .line 997 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; const-string v1, "android:view_state" invoke-virtual {v0, v1}, Landroid/os/Bundle;->getSparseParcelableArray(Ljava/lang/String;)Landroid/util/SparseArray; move-result-object v0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedViewState:Landroid/util/SparseArray; .line 999 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; const-string v1, "android:target_state" invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->getFragment(Landroid/os/Bundle;Ljava/lang/String;)Landroid/support/v4/app/Fragment; move-result-object v0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment; .line 1001 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment; if-eqz v0, :cond_9 .line 1002 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; const-string v1, "android:target_req_state" const/4 v2, 0x0 invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->getInt(Ljava/lang/String;I)I move-result v0 iput v0, p1, Landroid/support/v4/app/Fragment;->mTargetRequestCode:I .line 1005 :cond_9 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; const-string v1, "android:user_visible_hint" const/4 v2, 0x1 invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->getBoolean(Ljava/lang/String;Z)Z move-result v0 iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mUserVisibleHint:Z .line 1007 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mUserVisibleHint:Z if-nez v0, :cond_a .line 1008 const/4 v0, 0x1 iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mDeferStart:Z .line 1009 const/4 v0, 0x3 if-le p2, v0, :cond_a .line 1010 const/4 p2, 0x3 .line 1014 :cond_a iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; iput-object v0, p1, Landroid/support/v4/app/Fragment;->mHost:Landroid/support/v4/app/FragmentHostCallback; .line 1015 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment; iput-object v0, p1, Landroid/support/v4/app/Fragment;->mParentFragment:Landroid/support/v4/app/Fragment; .line 1016 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment; if-eqz v0, :cond_b iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment; iget-object v0, v0, Landroid/support/v4/app/Fragment;->mChildFragmentManager:Landroid/support/v4/app/FragmentManagerImpl; :goto_2 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mFragmentManager:Landroid/support/v4/app/FragmentManagerImpl; .line 1018 const/4 v0, 0x0 iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mCalled:Z .line 1019 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v0}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v0 invoke-virtual {p1, v0}, Landroid/support/v4/app/Fragment;->onAttach(Landroid/content/Context;)V .line 1020 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mCalled:Z if-nez v0, :cond_c .line 1021 new-instance v0, Landroid/support/v4/app/SuperNotCalledException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "Fragment " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 const-string v2, " did not call through to super.onAttach()" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Landroid/support/v4/app/SuperNotCalledException;->(Ljava/lang/String;)V throw v0 .line 1016 :cond_b iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v0}, Landroid/support/v4/app/FragmentHostCallback;->getFragmentManagerImpl()Landroid/support/v4/app/FragmentManagerImpl; move-result-object v0 goto :goto_2 .line 1024 :cond_c iget-object v0, p1, Landroid/support/v4/app/Fragment;->mParentFragment:Landroid/support/v4/app/Fragment; if-nez v0, :cond_d .line 1025 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v0, p1}, Landroid/support/v4/app/FragmentHostCallback;->onAttachFragment(Landroid/support/v4/app/Fragment;)V .line 1028 :cond_d iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRetaining:Z if-nez v0, :cond_e .line 1029 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; invoke-virtual {p1, v0}, Landroid/support/v4/app/Fragment;->performCreate(Landroid/os/Bundle;)V .line 1031 :cond_e const/4 v0, 0x0 iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRetaining:Z .line 1032 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mFromLayout:Z if-eqz v0, :cond_10 .line 1036 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; invoke-virtual {p1, v0}, Landroid/support/v4/app/Fragment;->getLayoutInflater(Landroid/os/Bundle;)Landroid/view/LayoutInflater; move-result-object v0 const/4 v1, 0x0 iget-object v2, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; invoke-virtual {p1, v0, v1, v2}, Landroid/support/v4/app/Fragment;->performCreateView(Landroid/view/LayoutInflater;Landroid/view/ViewGroup;Landroid/os/Bundle;)Landroid/view/View; move-result-object v0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; .line 1038 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; if-eqz v0, :cond_1d .line 1039 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; iput-object v0, p1, Landroid/support/v4/app/Fragment;->mInnerView:Landroid/view/View; .line 1040 sget v0, Landroid/os/Build$VERSION;->SDK_INT:I const/16 v1, 0xb if-lt v0, v1, :cond_1c .line 1041 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; const/4 v1, 0x0 invoke-static {v0, v1}, Landroid/support/v4/view/ViewCompat;->setSaveFromParentEnabled(Landroid/view/View;Z)V .line 1045 :goto_3 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mHidden:Z if-eqz v0, :cond_f iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; const/16 v1, 0x8 invoke-virtual {v0, v1}, Landroid/view/View;->setVisibility(I)V .line 1046 :cond_f iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; iget-object v1, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; invoke-virtual {p1, v0, v1}, Landroid/support/v4/app/Fragment;->onViewCreated(Landroid/view/View;Landroid/os/Bundle;)V .line 1052 :cond_10 :goto_4 :pswitch_1 const/4 v0, 0x1 if-le p2, v0, :cond_18 .line 1053 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_11 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "moveto ACTIVITY_CREATED: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1054 :cond_11 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mFromLayout:Z if-nez v0, :cond_16 .line 1055 const/4 v7, 0x0 .line 1056 .local v7, "container":Landroid/view/ViewGroup; iget v0, p1, Landroid/support/v4/app/Fragment;->mContainerId:I if-eqz v0, :cond_12 .line 1057 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mContainer:Landroid/support/v4/app/FragmentContainer; iget v1, p1, Landroid/support/v4/app/Fragment;->mContainerId:I invoke-virtual {v0, v1}, Landroid/support/v4/app/FragmentContainer;->onFindViewById(I)Landroid/view/View; move-result-object v7 .end local v7 # "container":Landroid/view/ViewGroup; check-cast v7, Landroid/view/ViewGroup; .line 1058 .restart local v7 # "container":Landroid/view/ViewGroup; if-nez v7, :cond_12 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRestored:Z if-nez v0, :cond_12 .line 1059 new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "No view found for id 0x" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 iget v2, p1, Landroid/support/v4/app/Fragment;->mContainerId:I invoke-static {v2}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String; move-result-object v2 invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 const-string v2, " (" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->getResources()Landroid/content/res/Resources; move-result-object v2 iget v3, p1, Landroid/support/v4/app/Fragment;->mContainerId:I invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getResourceName(I)Ljava/lang/String; move-result-object v2 invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 const-string v2, ") for fragment " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V invoke-direct {p0, v0}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V .line 1066 :cond_12 iput-object v7, p1, Landroid/support/v4/app/Fragment;->mContainer:Landroid/view/ViewGroup; .line 1067 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; invoke-virtual {p1, v0}, Landroid/support/v4/app/Fragment;->getLayoutInflater(Landroid/os/Bundle;)Landroid/view/LayoutInflater; move-result-object v0 iget-object v1, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; invoke-virtual {p1, v0, v7, v1}, Landroid/support/v4/app/Fragment;->performCreateView(Landroid/view/LayoutInflater;Landroid/view/ViewGroup;Landroid/os/Bundle;)Landroid/view/View; move-result-object v0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; .line 1069 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; if-eqz v0, :cond_1f .line 1070 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; iput-object v0, p1, Landroid/support/v4/app/Fragment;->mInnerView:Landroid/view/View; .line 1071 sget v0, Landroid/os/Build$VERSION;->SDK_INT:I const/16 v1, 0xb if-lt v0, v1, :cond_1e .line 1072 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; const/4 v1, 0x0 invoke-static {v0, v1}, Landroid/support/v4/view/ViewCompat;->setSaveFromParentEnabled(Landroid/view/View;Z)V .line 1076 :goto_5 if-eqz v7, :cond_14 .line 1077 const/4 v0, 0x1 invoke-virtual {p0, p1, p3, v0, p4}, Landroid/support/v4/app/FragmentManagerImpl;->loadAnimation(Landroid/support/v4/app/Fragment;IZI)Landroid/view/animation/Animation; move-result-object v6 .line 1079 .local v6, "anim":Landroid/view/animation/Animation; if-eqz v6, :cond_13 .line 1080 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-direct {p0, v0, v6}, Landroid/support/v4/app/FragmentManagerImpl;->setHWLayerAnimListenerIfAlpha(Landroid/view/View;Landroid/view/animation/Animation;)V .line 1081 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-virtual {v0, v6}, Landroid/view/View;->startAnimation(Landroid/view/animation/Animation;)V .line 1083 :cond_13 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-virtual {v7, v0}, Landroid/view/ViewGroup;->addView(Landroid/view/View;)V .line 1085 .end local v6 # "anim":Landroid/view/animation/Animation; :cond_14 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mHidden:Z if-eqz v0, :cond_15 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; const/16 v1, 0x8 invoke-virtual {v0, v1}, Landroid/view/View;->setVisibility(I)V .line 1086 :cond_15 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; iget-object v1, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; invoke-virtual {p1, v0, v1}, Landroid/support/v4/app/Fragment;->onViewCreated(Landroid/view/View;Landroid/os/Bundle;)V .line 1092 .end local v7 # "container":Landroid/view/ViewGroup; :cond_16 :goto_6 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; invoke-virtual {p1, v0}, Landroid/support/v4/app/Fragment;->performActivityCreated(Landroid/os/Bundle;)V .line 1093 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; if-eqz v0, :cond_17 .line 1094 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; invoke-virtual {p1, v0}, Landroid/support/v4/app/Fragment;->restoreViewState(Landroid/os/Bundle;)V .line 1096 :cond_17 const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; .line 1100 :cond_18 :pswitch_2 const/4 v0, 0x3 if-le p2, v0, :cond_1a .line 1101 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_19 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "moveto STARTED: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1102 :cond_19 invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performStart()V .line 1105 :cond_1a :pswitch_3 const/4 v0, 0x4 if-le p2, v0, :cond_7 .line 1106 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_1b const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "moveto RESUMED: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1107 :cond_1b invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performResume()V .line 1108 const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; .line 1109 const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedViewState:Landroid/util/SparseArray; goto/16 :goto_1 .line 1043 :cond_1c iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-static {v0}, Landroid/support/v4/app/NoSaveStateFrameLayout;->wrap(Landroid/view/View;)Landroid/view/ViewGroup; move-result-object v0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; goto/16 :goto_3 .line 1048 :cond_1d const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mInnerView:Landroid/view/View; goto/16 :goto_4 .line 1074 .restart local v7 # "container":Landroid/view/ViewGroup; :cond_1e iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-static {v0}, Landroid/support/v4/app/NoSaveStateFrameLayout;->wrap(Landroid/view/View;)Landroid/view/ViewGroup; move-result-object v0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; goto/16 :goto_5 .line 1088 :cond_1f const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mInnerView:Landroid/view/View; goto :goto_6 .line 1112 .end local v7 # "container":Landroid/view/ViewGroup; :cond_20 iget v0, p1, Landroid/support/v4/app/Fragment;->mState:I if-le v0, p2, :cond_7 .line 1113 iget v0, p1, Landroid/support/v4/app/Fragment;->mState:I packed-switch v0, :pswitch_data_1 goto/16 :goto_1 .line 1172 :cond_21 :goto_7 :pswitch_4 const/4 v0, 0x1 if-ge p2, v0, :cond_7 .line 1173 iget-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mDestroyed:Z if-eqz v0, :cond_22 .line 1174 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View; if-eqz v0, :cond_22 .line 1181 iget-object v9, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View; .line 1182 .local v9, "v":Landroid/view/View; const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View; .line 1183 invoke-virtual {v9}, Landroid/view/View;->clearAnimation()V .line 1186 .end local v9 # "v":Landroid/view/View; :cond_22 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View; if-eqz v0, :cond_2e .line 1191 iput p2, p1, Landroid/support/v4/app/Fragment;->mStateAfterAnimating:I .line 1192 const/4 p2, 0x1 goto/16 :goto_1 .line 1115 :pswitch_5 const/4 v0, 0x5 if-ge p2, v0, :cond_24 .line 1116 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_23 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "movefrom RESUMED: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1117 :cond_23 invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performPause()V .line 1120 :cond_24 :pswitch_6 const/4 v0, 0x4 if-ge p2, v0, :cond_26 .line 1121 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_25 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "movefrom STARTED: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1122 :cond_25 invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performStop()V .line 1125 :cond_26 :pswitch_7 const/4 v0, 0x3 if-ge p2, v0, :cond_28 .line 1126 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_27 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "movefrom STOPPED: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1127 :cond_27 invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performReallyStop()V .line 1130 :cond_28 :pswitch_8 const/4 v0, 0x2 if-ge p2, v0, :cond_21 .line 1131 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_29 const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "movefrom ACTIVITY_CREATED: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1132 :cond_29 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; if-eqz v0, :cond_2a .line 1135 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v0, p1}, Landroid/support/v4/app/FragmentHostCallback;->onShouldSaveFragmentState(Landroid/support/v4/app/Fragment;)Z move-result v0 if-eqz v0, :cond_2a iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedViewState:Landroid/util/SparseArray; if-nez v0, :cond_2a .line 1136 invoke-virtual {p0, p1}, Landroid/support/v4/app/FragmentManagerImpl;->saveFragmentViewState(Landroid/support/v4/app/Fragment;)V .line 1139 :cond_2a invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performDestroyView()V .line 1140 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; if-eqz v0, :cond_2d iget-object v0, p1, Landroid/support/v4/app/Fragment;->mContainer:Landroid/view/ViewGroup; if-eqz v0, :cond_2d .line 1141 const/4 v6, 0x0 .line 1142 .restart local v6 # "anim":Landroid/view/animation/Animation; iget v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I if-lez v0, :cond_2b iget-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mDestroyed:Z if-nez v0, :cond_2b .line 1143 const/4 v0, 0x0 invoke-virtual {p0, p1, p3, v0, p4}, Landroid/support/v4/app/FragmentManagerImpl;->loadAnimation(Landroid/support/v4/app/Fragment;IZI)Landroid/view/animation/Animation; move-result-object v6 .line 1146 :cond_2b if-eqz v6, :cond_2c .line 1147 move-object v8, p1 .line 1148 .local v8, "fragment":Landroid/support/v4/app/Fragment; iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; iput-object v0, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View; .line 1149 iput p2, p1, Landroid/support/v4/app/Fragment;->mStateAfterAnimating:I .line 1150 iget-object v10, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; .line 1151 .local v10, "viewToAnimate":Landroid/view/View; new-instance v0, Landroid/support/v4/app/FragmentManagerImpl$5; invoke-direct {v0, p0, v10, v6, v8}, Landroid/support/v4/app/FragmentManagerImpl$5;->(Landroid/support/v4/app/FragmentManagerImpl;Landroid/view/View;Landroid/view/animation/Animation;Landroid/support/v4/app/Fragment;)V invoke-virtual {v6, v0}, Landroid/view/animation/Animation;->setAnimationListener(Landroid/view/animation/Animation$AnimationListener;)V .line 1163 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-virtual {v0, v6}, Landroid/view/View;->startAnimation(Landroid/view/animation/Animation;)V .line 1165 .end local v8 # "fragment":Landroid/support/v4/app/Fragment; .end local v10 # "viewToAnimate":Landroid/view/View; :cond_2c iget-object v0, p1, Landroid/support/v4/app/Fragment;->mContainer:Landroid/view/ViewGroup; iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-virtual {v0, v1}, Landroid/view/ViewGroup;->removeView(Landroid/view/View;)V .line 1167 .end local v6 # "anim":Landroid/view/animation/Animation; :cond_2d const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mContainer:Landroid/view/ViewGroup; .line 1168 const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; .line 1169 const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mInnerView:Landroid/view/View; goto/16 :goto_7 .line 1194 :cond_2e sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_2f const-string v0, "FragmentManager" new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "movefrom CREATED: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v0, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1195 :cond_2f iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRetaining:Z if-nez v0, :cond_30 .line 1196 invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performDestroy()V .line 1201 :goto_8 const/4 v0, 0x0 iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mCalled:Z .line 1202 invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->onDetach()V .line 1203 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mCalled:Z if-nez v0, :cond_31 .line 1204 new-instance v0, Landroid/support/v4/app/SuperNotCalledException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "Fragment " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 const-string v2, " did not call through to super.onDetach()" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Landroid/support/v4/app/SuperNotCalledException;->(Ljava/lang/String;)V throw v0 .line 1198 :cond_30 const/4 v0, 0x0 iput v0, p1, Landroid/support/v4/app/Fragment;->mState:I goto :goto_8 .line 1207 :cond_31 if-nez p5, :cond_7 .line 1208 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRetaining:Z if-nez v0, :cond_32 .line 1209 invoke-virtual {p0, p1}, Landroid/support/v4/app/FragmentManagerImpl;->makeInactive(Landroid/support/v4/app/Fragment;)V goto/16 :goto_1 .line 1211 :cond_32 const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mHost:Landroid/support/v4/app/FragmentHostCallback; .line 1212 const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mParentFragment:Landroid/support/v4/app/Fragment; .line 1213 const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mFragmentManager:Landroid/support/v4/app/FragmentManagerImpl; .line 1214 const/4 v0, 0x0 iput-object v0, p1, Landroid/support/v4/app/Fragment;->mChildFragmentManager:Landroid/support/v4/app/FragmentManagerImpl; goto/16 :goto_1 .line 992 nop :pswitch_data_0 .packed-switch 0x0 :pswitch_0 :pswitch_1 :pswitch_2 :pswitch_2 :pswitch_3 .end packed-switch .line 1113 :pswitch_data_1 .packed-switch 0x1 :pswitch_4 :pswitch_8 :pswitch_7 :pswitch_6 :pswitch_5 .end packed-switch .end method .method public noteStateNotSaved()V .locals 1 .prologue .line 2036 const/4 v0, 0x0 iput-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z .line 2037 return-void .end method .method public onCreateView(Landroid/view/View;Ljava/lang/String;Landroid/content/Context;Landroid/util/AttributeSet;)Landroid/view/View; .locals 11 .param p1, "parent" # Landroid/view/View; .param p2, "name" # Ljava/lang/String; .param p3, "context" # Landroid/content/Context; .param p4, "attrs" # Landroid/util/AttributeSet; .prologue const/4 v0, 0x0 const/4 v3, 0x0 const/4 v5, -0x1 const/4 v2, 0x1 .line 2239 const-string v4, "fragment" invoke-virtual {v4, p2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v4 if-nez v4, :cond_1 .line 2328 :cond_0 :goto_0 return-object v0 .line 2243 :cond_1 const-string v4, "class" invoke-interface {p4, v0, v4}, Landroid/util/AttributeSet;->getAttributeValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; move-result-object v8 .line 2244 .local v8, "fname":Ljava/lang/String; sget-object v4, Landroid/support/v4/app/FragmentManagerImpl$FragmentTag;->Fragment:[I invoke-virtual {p3, p4, v4}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; move-result-object v6 .line 2245 .local v6, "a":Landroid/content/res/TypedArray; if-nez v8, :cond_2 .line 2246 invoke-virtual {v6, v3}, Landroid/content/res/TypedArray;->getString(I)Ljava/lang/String; move-result-object v8 .line 2248 :cond_2 invoke-virtual {v6, v2, v5}, Landroid/content/res/TypedArray;->getResourceId(II)I move-result v9 .line 2249 .local v9, "id":I const/4 v4, 0x2 invoke-virtual {v6, v4}, Landroid/content/res/TypedArray;->getString(I)Ljava/lang/String; move-result-object v10 .line 2250 .local v10, "tag":Ljava/lang/String; invoke-virtual {v6}, Landroid/content/res/TypedArray;->recycle()V .line 2252 iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v4}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v4 invoke-static {v4, v8}, Landroid/support/v4/app/Fragment;->isSupportFragmentClass(Landroid/content/Context;Ljava/lang/String;)Z move-result v4 if-eqz v4, :cond_0 .line 2258 if-eqz p1, :cond_3 invoke-virtual {p1}, Landroid/view/View;->getId()I move-result v7 .line 2259 .local v7, "containerId":I :goto_1 if-ne v7, v5, :cond_4 if-ne v9, v5, :cond_4 if-nez v10, :cond_4 .line 2260 new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V invoke-interface {p4}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String; move-result-object v3 invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 const-string v3, ": Must specify unique android:id, android:tag, or have a parent with an id for " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-direct {v0, v2}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw v0 .end local v7 # "containerId":I :cond_3 move v7, v3 .line 2258 goto :goto_1 .line 2267 .restart local v7 # "containerId":I :cond_4 if-eq v9, v5, :cond_9 invoke-virtual {p0, v9}, Landroid/support/v4/app/FragmentManagerImpl;->findFragmentById(I)Landroid/support/v4/app/Fragment; move-result-object v1 .line 2268 .local v1, "fragment":Landroid/support/v4/app/Fragment; :goto_2 if-nez v1, :cond_5 if-eqz v10, :cond_5 .line 2269 invoke-virtual {p0, v10}, Landroid/support/v4/app/FragmentManagerImpl;->findFragmentByTag(Ljava/lang/String;)Landroid/support/v4/app/Fragment; move-result-object v1 .line 2271 :cond_5 if-nez v1, :cond_6 if-eq v7, v5, :cond_6 .line 2272 invoke-virtual {p0, v7}, Landroid/support/v4/app/FragmentManagerImpl;->findFragmentById(I)Landroid/support/v4/app/Fragment; move-result-object v1 .line 2275 :cond_6 sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v0, :cond_7 const-string v0, "FragmentManager" new-instance v4, Ljava/lang/StringBuilder; invoke-direct {v4}, Ljava/lang/StringBuilder;->()V const-string v5, "onCreateView: id=0x" invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 invoke-static {v9}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String; move-result-object v5 invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 const-string v5, " fname=" invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 invoke-virtual {v4, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 const-string v5, " existing=" invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 invoke-virtual {v4, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v4 invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v4 invoke-static {v0, v4}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 2278 :cond_7 if-nez v1, :cond_b .line 2279 invoke-static {p3, v8}, Landroid/support/v4/app/Fragment;->instantiate(Landroid/content/Context;Ljava/lang/String;)Landroid/support/v4/app/Fragment; move-result-object v1 .line 2280 iput-boolean v2, v1, Landroid/support/v4/app/Fragment;->mFromLayout:Z .line 2281 if-eqz v9, :cond_a move v0, v9 :goto_3 iput v0, v1, Landroid/support/v4/app/Fragment;->mFragmentId:I .line 2282 iput v7, v1, Landroid/support/v4/app/Fragment;->mContainerId:I .line 2283 iput-object v10, v1, Landroid/support/v4/app/Fragment;->mTag:Ljava/lang/String; .line 2284 iput-boolean v2, v1, Landroid/support/v4/app/Fragment;->mInLayout:Z .line 2285 iput-object p0, v1, Landroid/support/v4/app/Fragment;->mFragmentManager:Landroid/support/v4/app/FragmentManagerImpl; .line 2286 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; iput-object v0, v1, Landroid/support/v4/app/Fragment;->mHost:Landroid/support/v4/app/FragmentHostCallback; .line 2287 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v0}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v0 iget-object v4, v1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; invoke-virtual {v1, v0, p4, v4}, Landroid/support/v4/app/Fragment;->onInflate(Landroid/content/Context;Landroid/util/AttributeSet;Landroid/os/Bundle;)V .line 2288 invoke-virtual {p0, v1, v2}, Landroid/support/v4/app/FragmentManagerImpl;->addFragment(Landroid/support/v4/app/Fragment;Z)V .line 2312 :cond_8 :goto_4 iget v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I if-ge v0, v2, :cond_d iget-boolean v0, v1, Landroid/support/v4/app/Fragment;->mFromLayout:Z if-eqz v0, :cond_d move-object v0, p0 move v4, v3 move v5, v3 .line 2313 invoke-virtual/range {v0 .. v5}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;IIIZ)V .line 2318 :goto_5 iget-object v0, v1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; if-nez v0, :cond_e .line 2319 new-instance v0, Ljava/lang/IllegalStateException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "Fragment " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 const-string v3, " did not create a view." invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-direct {v0, v2}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .end local v1 # "fragment":Landroid/support/v4/app/Fragment; :cond_9 move-object v1, v0 .line 2267 goto/16 :goto_2 .restart local v1 # "fragment":Landroid/support/v4/app/Fragment; :cond_a move v0, v7 .line 2281 goto :goto_3 .line 2290 :cond_b iget-boolean v0, v1, Landroid/support/v4/app/Fragment;->mInLayout:Z if-eqz v0, :cond_c .line 2293 new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V invoke-interface {p4}, Landroid/util/AttributeSet;->getPositionDescription()Ljava/lang/String; move-result-object v3 invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 const-string v3, ": Duplicate id 0x" invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-static {v9}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String; move-result-object v3 invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 const-string v3, ", tag " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 const-string v3, ", or parent id 0x" invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-static {v7}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String; move-result-object v3 invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 const-string v3, " with another fragment for " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-direct {v0, v2}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw v0 .line 2300 :cond_c iput-boolean v2, v1, Landroid/support/v4/app/Fragment;->mInLayout:Z .line 2301 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; iput-object v0, v1, Landroid/support/v4/app/Fragment;->mHost:Landroid/support/v4/app/FragmentHostCallback; .line 2305 iget-boolean v0, v1, Landroid/support/v4/app/Fragment;->mRetaining:Z if-nez v0, :cond_8 .line 2306 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v0}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v0 iget-object v4, v1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; invoke-virtual {v1, v0, p4, v4}, Landroid/support/v4/app/Fragment;->onInflate(Landroid/content/Context;Landroid/util/AttributeSet;Landroid/os/Bundle;)V goto/16 :goto_4 .line 2315 :cond_d invoke-virtual {p0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;)V goto/16 :goto_5 .line 2322 :cond_e if-eqz v9, :cond_f .line 2323 iget-object v0, v1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-virtual {v0, v9}, Landroid/view/View;->setId(I)V .line 2325 :cond_f iget-object v0, v1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-virtual {v0}, Landroid/view/View;->getTag()Ljava/lang/Object; move-result-object v0 if-nez v0, :cond_10 .line 2326 iget-object v0, v1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-virtual {v0, v10}, Landroid/view/View;->setTag(Ljava/lang/Object;)V .line 2328 :cond_10 iget-object v0, v1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; goto/16 :goto_0 .end method .method public performPendingDeferredStart(Landroid/support/v4/app/Fragment;)V .locals 6 .param p1, "f" # Landroid/support/v4/app/Fragment; .prologue const/4 v3, 0x0 .line 919 iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mDeferStart:Z if-eqz v0, :cond_0 .line 920 iget-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecutingActions:Z if-eqz v0, :cond_1 .line 922 const/4 v0, 0x1 iput-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHavePendingDeferredStart:Z .line 928 :cond_0 :goto_0 return-void .line 925 :cond_1 iput-boolean v3, p1, Landroid/support/v4/app/Fragment;->mDeferStart:Z .line 926 iget v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I move-object v0, p0 move-object v1, p1 move v4, v3 move v5, v3 invoke-virtual/range {v0 .. v5}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;IIIZ)V goto :goto_0 .end method .method public popBackStack()V .locals 2 .prologue .line 575 new-instance v0, Landroid/support/v4/app/FragmentManagerImpl$2; invoke-direct {v0, p0}, Landroid/support/v4/app/FragmentManagerImpl$2;->(Landroid/support/v4/app/FragmentManagerImpl;)V const/4 v1, 0x0 invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->enqueueAction(Ljava/lang/Runnable;Z)V .line 580 return-void .end method .method public popBackStack(II)V .locals 3 .param p1, "id" # I .param p2, "flags" # I .prologue .line 607 if-gez p1, :cond_0 .line 608 new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "Bad id: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw v0 .line 610 :cond_0 new-instance v0, Landroid/support/v4/app/FragmentManagerImpl$4; invoke-direct {v0, p0, p1, p2}, Landroid/support/v4/app/FragmentManagerImpl$4;->(Landroid/support/v4/app/FragmentManagerImpl;II)V const/4 v1, 0x0 invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->enqueueAction(Ljava/lang/Runnable;Z)V .line 615 return-void .end method .method public popBackStack(Ljava/lang/String;I)V .locals 2 .param p1, "name" # Ljava/lang/String; .param p2, "flags" # I .prologue .line 591 new-instance v0, Landroid/support/v4/app/FragmentManagerImpl$3; invoke-direct {v0, p0, p1, p2}, Landroid/support/v4/app/FragmentManagerImpl$3;->(Landroid/support/v4/app/FragmentManagerImpl;Ljava/lang/String;I)V const/4 v1, 0x0 invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->enqueueAction(Ljava/lang/Runnable;Z)V .line 596 return-void .end method .method public popBackStackImmediate()Z .locals 4 .prologue .line 584 invoke-direct {p0}, Landroid/support/v4/app/FragmentManagerImpl;->checkStateLoss()V .line 585 invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->executePendingTransactions()Z .line 586 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v0}, Landroid/support/v4/app/FragmentHostCallback;->getHandler()Landroid/os/Handler; move-result-object v0 const/4 v1, 0x0 const/4 v2, -0x1 const/4 v3, 0x0 invoke-virtual {p0, v0, v1, v2, v3}, Landroid/support/v4/app/FragmentManagerImpl;->popBackStackState(Landroid/os/Handler;Ljava/lang/String;II)Z move-result v0 return v0 .end method .method public popBackStackImmediate(II)Z .locals 3 .param p1, "id" # I .param p2, "flags" # I .prologue .line 619 invoke-direct {p0}, Landroid/support/v4/app/FragmentManagerImpl;->checkStateLoss()V .line 620 invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->executePendingTransactions()Z .line 621 if-gez p1, :cond_0 .line 622 new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "Bad id: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw v0 .line 624 :cond_0 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v0}, Landroid/support/v4/app/FragmentHostCallback;->getHandler()Landroid/os/Handler; move-result-object v0 const/4 v1, 0x0 invoke-virtual {p0, v0, v1, p1, p2}, Landroid/support/v4/app/FragmentManagerImpl;->popBackStackState(Landroid/os/Handler;Ljava/lang/String;II)Z move-result v0 return v0 .end method .method public popBackStackImmediate(Ljava/lang/String;I)Z .locals 2 .param p1, "name" # Ljava/lang/String; .param p2, "flags" # I .prologue .line 600 invoke-direct {p0}, Landroid/support/v4/app/FragmentManagerImpl;->checkStateLoss()V .line 601 invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->executePendingTransactions()Z .line 602 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v0}, Landroid/support/v4/app/FragmentHostCallback;->getHandler()Landroid/os/Handler; move-result-object v0 const/4 v1, -0x1 invoke-virtual {p0, v0, p1, v1, p2}, Landroid/support/v4/app/FragmentManagerImpl;->popBackStackState(Landroid/os/Handler;Ljava/lang/String;II)Z move-result v0 return v0 .end method .method popBackStackState(Landroid/os/Handler;Ljava/lang/String;II)Z .locals 12 .param p1, "handler" # Landroid/os/Handler; .param p2, "name" # Ljava/lang/String; .param p3, "id" # I .param p4, "flags" # I .prologue .line 1658 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; if-nez v9, :cond_0 .line 1659 const/4 v9, 0x0 .line 1727 :goto_0 return v9 .line 1661 :cond_0 if-nez p2, :cond_2 if-gez p3, :cond_2 and-int/lit8 v9, p4, 0x1 if-nez v9, :cond_2 .line 1662 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v9}, Ljava/util/ArrayList;->size()I move-result v9 add-int/lit8 v5, v9, -0x1 .line 1663 .local v5, "last":I if-gez v5, :cond_1 .line 1664 const/4 v9, 0x0 goto :goto_0 .line 1666 :cond_1 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v9, v5}, Ljava/util/ArrayList;->remove(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/app/BackStackRecord; .line 1667 .local v1, "bss":Landroid/support/v4/app/BackStackRecord; new-instance v2, Landroid/util/SparseArray; invoke-direct {v2}, Landroid/util/SparseArray;->()V .line 1668 .local v2, "firstOutFragments":Landroid/util/SparseArray;, "Landroid/util/SparseArray;" new-instance v6, Landroid/util/SparseArray; invoke-direct {v6}, Landroid/util/SparseArray;->()V .line 1669 .local v6, "lastInFragments":Landroid/util/SparseArray;, "Landroid/util/SparseArray;" invoke-virtual {v1, v2, v6}, Landroid/support/v4/app/BackStackRecord;->calculateBackFragments(Landroid/util/SparseArray;Landroid/util/SparseArray;)V .line 1670 const/4 v9, 0x1 const/4 v10, 0x0 invoke-virtual {v1, v9, v10, v2, v6}, Landroid/support/v4/app/BackStackRecord;->popFromBackStack(ZLandroid/support/v4/app/BackStackRecord$TransitionState;Landroid/util/SparseArray;Landroid/util/SparseArray;)Landroid/support/v4/app/BackStackRecord$TransitionState; .line 1671 invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->reportBackStackChanged()V .line 1727 .end local v1 # "bss":Landroid/support/v4/app/BackStackRecord; .end local v5 # "last":I :goto_1 const/4 v9, 0x1 goto :goto_0 .line 1673 .end local v2 # "firstOutFragments":Landroid/util/SparseArray;, "Landroid/util/SparseArray;" .end local v6 # "lastInFragments":Landroid/util/SparseArray;, "Landroid/util/SparseArray;" :cond_2 const/4 v4, -0x1 .line 1674 .local v4, "index":I if-nez p2, :cond_3 if-ltz p3, :cond_a .line 1677 :cond_3 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v9}, Ljava/util/ArrayList;->size()I move-result v9 add-int/lit8 v4, v9, -0x1 .line 1678 :goto_2 if-ltz v4, :cond_4 .line 1679 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v9, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/app/BackStackRecord; .line 1680 .restart local v1 # "bss":Landroid/support/v4/app/BackStackRecord; if-eqz p2, :cond_5 invoke-virtual {v1}, Landroid/support/v4/app/BackStackRecord;->getName()Ljava/lang/String; move-result-object v9 invoke-virtual {p2, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v9 if-eqz v9, :cond_5 .line 1688 .end local v1 # "bss":Landroid/support/v4/app/BackStackRecord; :cond_4 if-gez v4, :cond_7 .line 1689 const/4 v9, 0x0 goto :goto_0 .line 1683 .restart local v1 # "bss":Landroid/support/v4/app/BackStackRecord; :cond_5 if-ltz p3, :cond_6 iget v9, v1, Landroid/support/v4/app/BackStackRecord;->mIndex:I if-eq p3, v9, :cond_4 .line 1686 :cond_6 add-int/lit8 v4, v4, -0x1 .line 1687 goto :goto_2 .line 1691 .end local v1 # "bss":Landroid/support/v4/app/BackStackRecord; :cond_7 and-int/lit8 v9, p4, 0x1 if-eqz v9, :cond_a .line 1692 add-int/lit8 v4, v4, -0x1 .line 1694 :goto_3 if-ltz v4, :cond_a .line 1695 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v9, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/app/BackStackRecord; .line 1696 .restart local v1 # "bss":Landroid/support/v4/app/BackStackRecord; if-eqz p2, :cond_8 invoke-virtual {v1}, Landroid/support/v4/app/BackStackRecord;->getName()Ljava/lang/String; move-result-object v9 invoke-virtual {p2, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v9 if-nez v9, :cond_9 :cond_8 if-ltz p3, :cond_a iget v9, v1, Landroid/support/v4/app/BackStackRecord;->mIndex:I if-ne p3, v9, :cond_a .line 1698 :cond_9 add-int/lit8 v4, v4, -0x1 .line 1699 goto :goto_3 .line 1705 .end local v1 # "bss":Landroid/support/v4/app/BackStackRecord; :cond_a iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v9}, Ljava/util/ArrayList;->size()I move-result v9 add-int/lit8 v9, v9, -0x1 if-ne v4, v9, :cond_b .line 1706 const/4 v9, 0x0 goto/16 :goto_0 .line 1708 :cond_b new-instance v8, Ljava/util/ArrayList; invoke-direct {v8}, Ljava/util/ArrayList;->()V .line 1710 .local v8, "states":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v9}, Ljava/util/ArrayList;->size()I move-result v9 add-int/lit8 v3, v9, -0x1 .local v3, "i":I :goto_4 if-le v3, v4, :cond_c .line 1711 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v9, v3}, Ljava/util/ArrayList;->remove(I)Ljava/lang/Object; move-result-object v9 invoke-virtual {v8, v9}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1710 add-int/lit8 v3, v3, -0x1 goto :goto_4 .line 1713 :cond_c invoke-virtual {v8}, Ljava/util/ArrayList;->size()I move-result v9 add-int/lit8 v0, v9, -0x1 .line 1714 .local v0, "LAST":I new-instance v2, Landroid/util/SparseArray; invoke-direct {v2}, Landroid/util/SparseArray;->()V .line 1715 .restart local v2 # "firstOutFragments":Landroid/util/SparseArray;, "Landroid/util/SparseArray;" new-instance v6, Landroid/util/SparseArray; invoke-direct {v6}, Landroid/util/SparseArray;->()V .line 1716 .restart local v6 # "lastInFragments":Landroid/util/SparseArray;, "Landroid/util/SparseArray;" const/4 v3, 0x0 :goto_5 if-gt v3, v0, :cond_d .line 1717 invoke-virtual {v8, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v9 check-cast v9, Landroid/support/v4/app/BackStackRecord; invoke-virtual {v9, v2, v6}, Landroid/support/v4/app/BackStackRecord;->calculateBackFragments(Landroid/util/SparseArray;Landroid/util/SparseArray;)V .line 1716 add-int/lit8 v3, v3, 0x1 goto :goto_5 .line 1719 :cond_d const/4 v7, 0x0 .line 1720 .local v7, "state":Landroid/support/v4/app/BackStackRecord$TransitionState; const/4 v3, 0x0 :goto_6 if-gt v3, v0, :cond_10 .line 1721 sget-boolean v9, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v9, :cond_e const-string v9, "FragmentManager" new-instance v10, Ljava/lang/StringBuilder; invoke-direct {v10}, Ljava/lang/StringBuilder;->()V const-string v11, "Popping back stack state: " invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v8, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v11 invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v10 invoke-static {v9, v10}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1722 :cond_e invoke-virtual {v8, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v9 check-cast v9, Landroid/support/v4/app/BackStackRecord; if-ne v3, v0, :cond_f const/4 v10, 0x1 :goto_7 invoke-virtual {v9, v10, v7, v2, v6}, Landroid/support/v4/app/BackStackRecord;->popFromBackStack(ZLandroid/support/v4/app/BackStackRecord$TransitionState;Landroid/util/SparseArray;Landroid/util/SparseArray;)Landroid/support/v4/app/BackStackRecord$TransitionState; move-result-object v7 .line 1720 add-int/lit8 v3, v3, 0x1 goto :goto_6 .line 1722 :cond_f const/4 v10, 0x0 goto :goto_7 .line 1725 :cond_10 invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->reportBackStackChanged()V goto/16 :goto_1 .end method .method public putFragment(Landroid/os/Bundle;Ljava/lang/String;Landroid/support/v4/app/Fragment;)V .locals 3 .param p1, "bundle" # Landroid/os/Bundle; .param p2, "key" # Ljava/lang/String; .param p3, "fragment" # Landroid/support/v4/app/Fragment; .prologue .line 654 iget v0, p3, Landroid/support/v4/app/Fragment;->mIndex:I if-gez v0, :cond_0 .line 655 new-instance v0, Ljava/lang/IllegalStateException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "Fragment " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v1 const-string v2, " is not currently in the FragmentManager" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V invoke-direct {p0, v0}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V .line 658 :cond_0 iget v0, p3, Landroid/support/v4/app/Fragment;->mIndex:I invoke-virtual {p1, p2, v0}, Landroid/os/Bundle;->putInt(Ljava/lang/String;I)V .line 659 return-void .end method .method public removeFragment(Landroid/support/v4/app/Fragment;II)V .locals 7 .param p1, "fragment" # Landroid/support/v4/app/Fragment; .param p2, "transition" # I .param p3, "transitionStyle" # I .prologue const/4 v0, 0x1 const/4 v5, 0x0 .line 1338 sget-boolean v1, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v1, :cond_0 const-string v1, "FragmentManager" new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "remove: " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v2 const-string v3, " nesting=" invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 iget v3, p1, Landroid/support/v4/app/Fragment;->mBackStackNesting:I invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-static {v1, v2}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1339 :cond_0 invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->isInBackStack()Z move-result v1 if-nez v1, :cond_5 move v6, v0 .line 1340 .local v6, "inactive":Z :goto_0 iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mDetached:Z if-eqz v1, :cond_1 if-eqz v6, :cond_4 .line 1341 :cond_1 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v1, :cond_2 .line 1342 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v1, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z .line 1344 :cond_2 iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mHasMenu:Z if-eqz v1, :cond_3 iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mMenuVisible:Z if-eqz v1, :cond_3 .line 1345 iput-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z .line 1347 :cond_3 iput-boolean v5, p1, Landroid/support/v4/app/Fragment;->mAdded:Z .line 1348 iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRemoving:Z .line 1349 if-eqz v6, :cond_6 move v2, v5 :goto_1 move-object v0, p0 move-object v1, p1 move v3, p2 move v4, p3 invoke-virtual/range {v0 .. v5}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;IIIZ)V .line 1352 :cond_4 return-void .end local v6 # "inactive":Z :cond_5 move v6, v5 .line 1339 goto :goto_0 .restart local v6 # "inactive":Z :cond_6 move v2, v0 .line 1349 goto :goto_1 .end method .method public removeOnBackStackChangedListener(Landroid/support/v4/app/FragmentManager$OnBackStackChangedListener;)V .locals 1 .param p1, "listener" # Landroid/support/v4/app/FragmentManager$OnBackStackChangedListener; .prologue .line 647 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackChangeListeners:Ljava/util/ArrayList; if-eqz v0, :cond_0 .line 648 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackChangeListeners:Ljava/util/ArrayList; invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z .line 650 :cond_0 return-void .end method .method reportBackStackChanged()V .locals 2 .prologue .line 1641 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackChangeListeners:Ljava/util/ArrayList; if-eqz v1, :cond_0 .line 1642 const/4 v0, 0x0 .local v0, "i":I :goto_0 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackChangeListeners:Ljava/util/ArrayList; invoke-virtual {v1}, Ljava/util/ArrayList;->size()I move-result v1 if-ge v0, v1, :cond_0 .line 1643 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackChangeListeners:Ljava/util/ArrayList; invoke-virtual {v1, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/app/FragmentManager$OnBackStackChangedListener; invoke-interface {v1}, Landroid/support/v4/app/FragmentManager$OnBackStackChangedListener;->onBackStackChanged()V .line 1642 add-int/lit8 v0, v0, 0x1 goto :goto_0 .line 1646 .end local v0 # "i":I :cond_0 return-void .end method .method restoreAllState(Landroid/os/Parcelable;Ljava/util/List;)V .locals 12 .param p1, "state" # Landroid/os/Parcelable; .annotation system Ldalvik/annotation/Signature; value = { "(", "Landroid/os/Parcelable;", "Ljava/util/List", "<", "Landroid/support/v4/app/Fragment;", ">;)V" } .end annotation .prologue .local p2, "nonConfig":Ljava/util/List;, "Ljava/util/List;" const/4 v11, 0x0 const/4 v10, 0x0 .line 1917 if-nez p1, :cond_1 .line 2025 :cond_0 :goto_0 return-void :cond_1 move-object v2, p1 .line 1918 check-cast v2, Landroid/support/v4/app/FragmentManagerState; .line 1919 .local v2, "fms":Landroid/support/v4/app/FragmentManagerState; iget-object v7, v2, Landroid/support/v4/app/FragmentManagerState;->mActive:[Landroid/support/v4/app/FragmentState; if-eqz v7, :cond_0 .line 1923 if-eqz p2, :cond_4 .line 1924 const/4 v4, 0x0 .local v4, "i":I :goto_1 invoke-interface {p2}, Ljava/util/List;->size()I move-result v7 if-ge v4, v7, :cond_4 .line 1925 invoke-interface {p2, v4}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/app/Fragment; .line 1926 .local v1, "f":Landroid/support/v4/app/Fragment; sget-boolean v7, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v7, :cond_2 const-string v7, "FragmentManager" new-instance v8, Ljava/lang/StringBuilder; invoke-direct {v8}, Ljava/lang/StringBuilder;->()V const-string v9, "restoreAllState: re-attaching retained " invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v8 invoke-static {v7, v8}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1927 :cond_2 iget-object v7, v2, Landroid/support/v4/app/FragmentManagerState;->mActive:[Landroid/support/v4/app/FragmentState; iget v8, v1, Landroid/support/v4/app/Fragment;->mIndex:I aget-object v3, v7, v8 .line 1928 .local v3, "fs":Landroid/support/v4/app/FragmentState; iput-object v1, v3, Landroid/support/v4/app/FragmentState;->mInstance:Landroid/support/v4/app/Fragment; .line 1929 iput-object v10, v1, Landroid/support/v4/app/Fragment;->mSavedViewState:Landroid/util/SparseArray; .line 1930 iput v11, v1, Landroid/support/v4/app/Fragment;->mBackStackNesting:I .line 1931 iput-boolean v11, v1, Landroid/support/v4/app/Fragment;->mInLayout:Z .line 1932 iput-boolean v11, v1, Landroid/support/v4/app/Fragment;->mAdded:Z .line 1933 iput-object v10, v1, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment; .line 1934 iget-object v7, v3, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle; if-eqz v7, :cond_3 .line 1935 iget-object v7, v3, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle; iget-object v8, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-virtual {v8}, Landroid/support/v4/app/FragmentHostCallback;->getContext()Landroid/content/Context; move-result-object v8 invoke-virtual {v8}, Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader; move-result-object v8 invoke-virtual {v7, v8}, Landroid/os/Bundle;->setClassLoader(Ljava/lang/ClassLoader;)V .line 1936 iget-object v7, v3, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle; const-string v8, "android:view_state" invoke-virtual {v7, v8}, Landroid/os/Bundle;->getSparseParcelableArray(Ljava/lang/String;)Landroid/util/SparseArray; move-result-object v7 iput-object v7, v1, Landroid/support/v4/app/Fragment;->mSavedViewState:Landroid/util/SparseArray; .line 1938 iget-object v7, v3, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle; iput-object v7, v1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; .line 1924 :cond_3 add-int/lit8 v4, v4, 0x1 goto :goto_1 .line 1945 .end local v1 # "f":Landroid/support/v4/app/Fragment; .end local v3 # "fs":Landroid/support/v4/app/FragmentState; .end local v4 # "i":I :cond_4 new-instance v7, Ljava/util/ArrayList; iget-object v8, v2, Landroid/support/v4/app/FragmentManagerState;->mActive:[Landroid/support/v4/app/FragmentState; array-length v8, v8 invoke-direct {v7, v8}, Ljava/util/ArrayList;->(I)V iput-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; .line 1946 iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; if-eqz v7, :cond_5 .line 1947 iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; invoke-virtual {v7}, Ljava/util/ArrayList;->clear()V .line 1949 :cond_5 const/4 v4, 0x0 .restart local v4 # "i":I :goto_2 iget-object v7, v2, Landroid/support/v4/app/FragmentManagerState;->mActive:[Landroid/support/v4/app/FragmentState; array-length v7, v7 if-ge v4, v7, :cond_a .line 1950 iget-object v7, v2, Landroid/support/v4/app/FragmentManagerState;->mActive:[Landroid/support/v4/app/FragmentState; aget-object v3, v7, v4 .line 1951 .restart local v3 # "fs":Landroid/support/v4/app/FragmentState; if-eqz v3, :cond_7 .line 1952 iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; iget-object v8, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment; invoke-virtual {v3, v7, v8}, Landroid/support/v4/app/FragmentState;->instantiate(Landroid/support/v4/app/FragmentHostCallback;Landroid/support/v4/app/Fragment;)Landroid/support/v4/app/Fragment; move-result-object v1 .line 1953 .restart local v1 # "f":Landroid/support/v4/app/Fragment; sget-boolean v7, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v7, :cond_6 const-string v7, "FragmentManager" new-instance v8, Ljava/lang/StringBuilder; invoke-direct {v8}, Ljava/lang/StringBuilder;->()V const-string v9, "restoreAllState: active #" invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v8 const-string v9, ": " invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v8 invoke-static {v7, v8}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1954 :cond_6 iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v7, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1958 iput-object v10, v3, Landroid/support/v4/app/FragmentState;->mInstance:Landroid/support/v4/app/Fragment; .line 1949 .end local v1 # "f":Landroid/support/v4/app/Fragment; :goto_3 add-int/lit8 v4, v4, 0x1 goto :goto_2 .line 1960 :cond_7 iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v7, v10}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1961 iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; if-nez v7, :cond_8 .line 1962 new-instance v7, Ljava/util/ArrayList; invoke-direct {v7}, Ljava/util/ArrayList;->()V iput-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; .line 1964 :cond_8 sget-boolean v7, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v7, :cond_9 const-string v7, "FragmentManager" new-instance v8, Ljava/lang/StringBuilder; invoke-direct {v8}, Ljava/lang/StringBuilder;->()V const-string v9, "restoreAllState: avail #" invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v8 invoke-static {v7, v8}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1965 :cond_9 iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList; invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v8 invoke-virtual {v7, v8}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z goto :goto_3 .line 1970 .end local v3 # "fs":Landroid/support/v4/app/FragmentState; :cond_a if-eqz p2, :cond_d .line 1971 const/4 v4, 0x0 :goto_4 invoke-interface {p2}, Ljava/util/List;->size()I move-result v7 if-ge v4, v7, :cond_d .line 1972 invoke-interface {p2, v4}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/app/Fragment; .line 1973 .restart local v1 # "f":Landroid/support/v4/app/Fragment; iget v7, v1, Landroid/support/v4/app/Fragment;->mTargetIndex:I if-ltz v7, :cond_b .line 1974 iget v7, v1, Landroid/support/v4/app/Fragment;->mTargetIndex:I iget-object v8, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v8}, Ljava/util/ArrayList;->size()I move-result v8 if-ge v7, v8, :cond_c .line 1975 iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; iget v8, v1, Landroid/support/v4/app/Fragment;->mTargetIndex:I invoke-virtual {v7, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v7 check-cast v7, Landroid/support/v4/app/Fragment; iput-object v7, v1, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment; .line 1971 :cond_b :goto_5 add-int/lit8 v4, v4, 0x1 goto :goto_4 .line 1977 :cond_c const-string v7, "FragmentManager" new-instance v8, Ljava/lang/StringBuilder; invoke-direct {v8}, Ljava/lang/StringBuilder;->()V const-string v9, "Re-attaching retained fragment " invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v8 const-string v9, " target no longer exists: " invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v8 iget v9, v1, Landroid/support/v4/app/Fragment;->mTargetIndex:I invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v8 invoke-static {v7, v8}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I .line 1979 iput-object v10, v1, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment; goto :goto_5 .line 1986 .end local v1 # "f":Landroid/support/v4/app/Fragment; :cond_d iget-object v7, v2, Landroid/support/v4/app/FragmentManagerState;->mAdded:[I if-eqz v7, :cond_11 .line 1987 new-instance v7, Ljava/util/ArrayList; iget-object v8, v2, Landroid/support/v4/app/FragmentManagerState;->mAdded:[I array-length v8, v8 invoke-direct {v7, v8}, Ljava/util/ArrayList;->(I)V iput-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; .line 1988 const/4 v4, 0x0 :goto_6 iget-object v7, v2, Landroid/support/v4/app/FragmentManagerState;->mAdded:[I array-length v7, v7 if-ge v4, v7, :cond_12 .line 1989 iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; iget-object v8, v2, Landroid/support/v4/app/FragmentManagerState;->mAdded:[I aget v8, v8, v4 invoke-virtual {v7, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/app/Fragment; .line 1990 .restart local v1 # "f":Landroid/support/v4/app/Fragment; if-nez v1, :cond_e .line 1991 new-instance v7, Ljava/lang/IllegalStateException; new-instance v8, Ljava/lang/StringBuilder; invoke-direct {v8}, Ljava/lang/StringBuilder;->()V const-string v9, "No instantiated fragment for index #" invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v8 iget-object v9, v2, Landroid/support/v4/app/FragmentManagerState;->mAdded:[I aget v9, v9, v4 invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v8 invoke-direct {v7, v8}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V invoke-direct {p0, v7}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V .line 1994 :cond_e const/4 v7, 0x1 iput-boolean v7, v1, Landroid/support/v4/app/Fragment;->mAdded:Z .line 1995 sget-boolean v7, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v7, :cond_f const-string v7, "FragmentManager" new-instance v8, Ljava/lang/StringBuilder; invoke-direct {v8}, Ljava/lang/StringBuilder;->()V const-string v9, "restoreAllState: added #" invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v8 const-string v9, ": " invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v8 invoke-static {v7, v8}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1996 :cond_f iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v7, v1}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z move-result v7 if-eqz v7, :cond_10 .line 1997 new-instance v7, Ljava/lang/IllegalStateException; const-string v8, "Already added!" invoke-direct {v7, v8}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v7 .line 1999 :cond_10 iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v7, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1988 add-int/lit8 v4, v4, 0x1 goto :goto_6 .line 2002 .end local v1 # "f":Landroid/support/v4/app/Fragment; :cond_11 iput-object v10, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; .line 2006 :cond_12 iget-object v7, v2, Landroid/support/v4/app/FragmentManagerState;->mBackStack:[Landroid/support/v4/app/BackStackState; if-eqz v7, :cond_15 .line 2007 new-instance v7, Ljava/util/ArrayList; iget-object v8, v2, Landroid/support/v4/app/FragmentManagerState;->mBackStack:[Landroid/support/v4/app/BackStackState; array-length v8, v8 invoke-direct {v7, v8}, Ljava/util/ArrayList;->(I)V iput-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; .line 2008 const/4 v4, 0x0 :goto_7 iget-object v7, v2, Landroid/support/v4/app/FragmentManagerState;->mBackStack:[Landroid/support/v4/app/BackStackState; array-length v7, v7 if-ge v4, v7, :cond_0 .line 2009 iget-object v7, v2, Landroid/support/v4/app/FragmentManagerState;->mBackStack:[Landroid/support/v4/app/BackStackState; aget-object v7, v7, v4 invoke-virtual {v7, p0}, Landroid/support/v4/app/BackStackState;->instantiate(Landroid/support/v4/app/FragmentManagerImpl;)Landroid/support/v4/app/BackStackRecord; move-result-object v0 .line 2010 .local v0, "bse":Landroid/support/v4/app/BackStackRecord; sget-boolean v7, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v7, :cond_13 .line 2011 const-string v7, "FragmentManager" new-instance v8, Ljava/lang/StringBuilder; invoke-direct {v8}, Ljava/lang/StringBuilder;->()V const-string v9, "restoreAllState: back stack #" invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v8 const-string v9, " (index " invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v8 iget v9, v0, Landroid/support/v4/app/BackStackRecord;->mIndex:I invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v8 const-string v9, "): " invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v8 invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v8 invoke-static {v7, v8}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 2013 new-instance v5, Landroid/support/v4/util/LogWriter; const-string v7, "FragmentManager" invoke-direct {v5, v7}, Landroid/support/v4/util/LogWriter;->(Ljava/lang/String;)V .line 2014 .local v5, "logw":Landroid/support/v4/util/LogWriter; new-instance v6, Ljava/io/PrintWriter; invoke-direct {v6, v5}, Ljava/io/PrintWriter;->(Ljava/io/Writer;)V .line 2015 .local v6, "pw":Ljava/io/PrintWriter; const-string v7, " " invoke-virtual {v0, v7, v6, v11}, Landroid/support/v4/app/BackStackRecord;->dump(Ljava/lang/String;Ljava/io/PrintWriter;Z)V .line 2017 .end local v5 # "logw":Landroid/support/v4/util/LogWriter; .end local v6 # "pw":Ljava/io/PrintWriter; :cond_13 iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v7, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 2018 iget v7, v0, Landroid/support/v4/app/BackStackRecord;->mIndex:I if-ltz v7, :cond_14 .line 2019 iget v7, v0, Landroid/support/v4/app/BackStackRecord;->mIndex:I invoke-virtual {p0, v7, v0}, Landroid/support/v4/app/FragmentManagerImpl;->setBackStackIndex(ILandroid/support/v4/app/BackStackRecord;)V .line 2008 :cond_14 add-int/lit8 v4, v4, 0x1 goto :goto_7 .line 2023 .end local v0 # "bse":Landroid/support/v4/app/BackStackRecord; :cond_15 iput-object v10, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; goto/16 :goto_0 .end method .method retainNonConfig()Ljava/util/ArrayList; .locals 6 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/ArrayList", "<", "Landroid/support/v4/app/Fragment;", ">;" } .end annotation .prologue .line 1731 const/4 v1, 0x0 .line 1732 .local v1, "fragments":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; if-eqz v3, :cond_3 .line 1733 const/4 v2, 0x0 .local v2, "i":I :goto_0 iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v3}, Ljava/util/ArrayList;->size()I move-result v3 if-ge v2, v3, :cond_3 .line 1734 iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v3, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 1735 .local v0, "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_1 iget-boolean v3, v0, Landroid/support/v4/app/Fragment;->mRetainInstance:Z if-eqz v3, :cond_1 .line 1736 if-nez v1, :cond_0 .line 1737 new-instance v1, Ljava/util/ArrayList; .end local v1 # "fragments":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" invoke-direct {v1}, Ljava/util/ArrayList;->()V .line 1739 .restart local v1 # "fragments":Ljava/util/ArrayList;, "Ljava/util/ArrayList;" :cond_0 invoke-virtual {v1, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1740 const/4 v3, 0x1 iput-boolean v3, v0, Landroid/support/v4/app/Fragment;->mRetaining:Z .line 1741 iget-object v3, v0, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment; if-eqz v3, :cond_2 iget-object v3, v0, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment; iget v3, v3, Landroid/support/v4/app/Fragment;->mIndex:I :goto_1 iput v3, v0, Landroid/support/v4/app/Fragment;->mTargetIndex:I .line 1742 sget-boolean v3, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v3, :cond_1 const-string v3, "FragmentManager" new-instance v4, Ljava/lang/StringBuilder; invoke-direct {v4}, Ljava/lang/StringBuilder;->()V const-string v5, "retainNonConfig: keeping retained " invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v4 invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v4 invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v4 invoke-static {v3, v4}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1733 :cond_1 add-int/lit8 v2, v2, 0x1 goto :goto_0 .line 1741 :cond_2 const/4 v3, -0x1 goto :goto_1 .line 1746 .end local v0 # "f":Landroid/support/v4/app/Fragment; .end local v2 # "i":I :cond_3 return-object v1 .end method .method saveAllState()Landroid/os/Parcelable; .locals 12 .prologue const/4 v5, 0x0 .line 1801 invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->execPendingActions()Z .line 1803 sget-boolean v9, Landroid/support/v4/app/FragmentManagerImpl;->HONEYCOMB:Z if-eqz v9, :cond_0 .line 1813 const/4 v9, 0x1 iput-boolean v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z .line 1816 :cond_0 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; if-eqz v9, :cond_1 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v9}, Ljava/util/ArrayList;->size()I move-result v9 if-gtz v9, :cond_2 .line 1911 :cond_1 :goto_0 return-object v5 .line 1821 :cond_2 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v9}, Ljava/util/ArrayList;->size()I move-result v0 .line 1822 .local v0, "N":I new-array v1, v0, [Landroid/support/v4/app/FragmentState; .line 1823 .local v1, "active":[Landroid/support/v4/app/FragmentState; const/4 v7, 0x0 .line 1824 .local v7, "haveFragments":Z const/4 v8, 0x0 .local v8, "i":I :goto_1 if-ge v8, v0, :cond_9 .line 1825 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v9, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v4 check-cast v4, Landroid/support/v4/app/Fragment; .line 1826 .local v4, "f":Landroid/support/v4/app/Fragment; if-eqz v4, :cond_7 .line 1827 iget v9, v4, Landroid/support/v4/app/Fragment;->mIndex:I if-gez v9, :cond_3 .line 1828 new-instance v9, Ljava/lang/IllegalStateException; new-instance v10, Ljava/lang/StringBuilder; invoke-direct {v10}, Ljava/lang/StringBuilder;->()V const-string v11, "Failure saving state: active " invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v10 const-string v11, " has cleared index: " invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 iget v11, v4, Landroid/support/v4/app/Fragment;->mIndex:I invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v10 invoke-direct {v9, v10}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V invoke-direct {p0, v9}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V .line 1833 :cond_3 const/4 v7, 0x1 .line 1835 new-instance v6, Landroid/support/v4/app/FragmentState; invoke-direct {v6, v4}, Landroid/support/v4/app/FragmentState;->(Landroid/support/v4/app/Fragment;)V .line 1836 .local v6, "fs":Landroid/support/v4/app/FragmentState; aput-object v6, v1, v8 .line 1838 iget v9, v4, Landroid/support/v4/app/Fragment;->mState:I if-lez v9, :cond_8 iget-object v9, v6, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle; if-nez v9, :cond_8 .line 1839 invoke-virtual {p0, v4}, Landroid/support/v4/app/FragmentManagerImpl;->saveFragmentBasicState(Landroid/support/v4/app/Fragment;)Landroid/os/Bundle; move-result-object v9 iput-object v9, v6, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle; .line 1841 iget-object v9, v4, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment; if-eqz v9, :cond_6 .line 1842 iget-object v9, v4, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment; iget v9, v9, Landroid/support/v4/app/Fragment;->mIndex:I if-gez v9, :cond_4 .line 1843 new-instance v9, Ljava/lang/IllegalStateException; new-instance v10, Ljava/lang/StringBuilder; invoke-direct {v10}, Ljava/lang/StringBuilder;->()V const-string v11, "Failure saving state: " invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v10 const-string v11, " has target not in fragment manager: " invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 iget-object v11, v4, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment; invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v10 invoke-direct {v9, v10}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V invoke-direct {p0, v9}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V .line 1847 :cond_4 iget-object v9, v6, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle; if-nez v9, :cond_5 .line 1848 new-instance v9, Landroid/os/Bundle; invoke-direct {v9}, Landroid/os/Bundle;->()V iput-object v9, v6, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle; .line 1850 :cond_5 iget-object v9, v6, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle; const-string v10, "android:target_state" iget-object v11, v4, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment; invoke-virtual {p0, v9, v10, v11}, Landroid/support/v4/app/FragmentManagerImpl;->putFragment(Landroid/os/Bundle;Ljava/lang/String;Landroid/support/v4/app/Fragment;)V .line 1852 iget v9, v4, Landroid/support/v4/app/Fragment;->mTargetRequestCode:I if-eqz v9, :cond_6 .line 1853 iget-object v9, v6, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle; const-string v10, "android:target_req_state" iget v11, v4, Landroid/support/v4/app/Fragment;->mTargetRequestCode:I invoke-virtual {v9, v10, v11}, Landroid/os/Bundle;->putInt(Ljava/lang/String;I)V .line 1863 :cond_6 :goto_2 sget-boolean v9, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v9, :cond_7 const-string v9, "FragmentManager" new-instance v10, Ljava/lang/StringBuilder; invoke-direct {v10}, Ljava/lang/StringBuilder;->()V const-string v11, "Saved state of " invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v10 const-string v11, ": " invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 iget-object v11, v6, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle; invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v10 invoke-static {v9, v10}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1824 .end local v6 # "fs":Landroid/support/v4/app/FragmentState; :cond_7 add-int/lit8 v8, v8, 0x1 goto/16 :goto_1 .line 1860 .restart local v6 # "fs":Landroid/support/v4/app/FragmentState; :cond_8 iget-object v9, v4, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle; iput-object v9, v6, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle; goto :goto_2 .line 1868 .end local v4 # "f":Landroid/support/v4/app/Fragment; .end local v6 # "fs":Landroid/support/v4/app/FragmentState; :cond_9 if-nez v7, :cond_a .line 1869 sget-boolean v9, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v9, :cond_1 const-string v9, "FragmentManager" const-string v10, "saveAllState: no fragments!" invoke-static {v9, v10}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I goto/16 :goto_0 .line 1873 :cond_a const/4 v2, 0x0 .line 1874 .local v2, "added":[I const/4 v3, 0x0 .line 1877 .local v3, "backStack":[Landroid/support/v4/app/BackStackState; iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; if-eqz v9, :cond_d .line 1878 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v9}, Ljava/util/ArrayList;->size()I move-result v0 .line 1879 if-lez v0, :cond_d .line 1880 new-array v2, v0, [I .line 1881 const/4 v8, 0x0 :goto_3 if-ge v8, v0, :cond_d .line 1882 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v9, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v9 check-cast v9, Landroid/support/v4/app/Fragment; iget v9, v9, Landroid/support/v4/app/Fragment;->mIndex:I aput v9, v2, v8 .line 1883 aget v9, v2, v8 if-gez v9, :cond_b .line 1884 new-instance v9, Ljava/lang/IllegalStateException; new-instance v10, Ljava/lang/StringBuilder; invoke-direct {v10}, Ljava/lang/StringBuilder;->()V const-string v11, "Failure saving state: active " invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 iget-object v11, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v11, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v11 invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v10 const-string v11, " has cleared index: " invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 aget v11, v2, v8 invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v10 invoke-direct {v9, v10}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V invoke-direct {p0, v9}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V .line 1888 :cond_b sget-boolean v9, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v9, :cond_c const-string v9, "FragmentManager" new-instance v10, Ljava/lang/StringBuilder; invoke-direct {v10}, Ljava/lang/StringBuilder;->()V const-string v11, "saveAllState: adding fragment #" invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v10 const-string v11, ": " invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 iget-object v11, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList; invoke-virtual {v11, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v11 invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v10 invoke-static {v9, v10}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1881 :cond_c add-int/lit8 v8, v8, 0x1 goto :goto_3 .line 1895 :cond_d iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; if-eqz v9, :cond_f .line 1896 iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v9}, Ljava/util/ArrayList;->size()I move-result v0 .line 1897 if-lez v0, :cond_f .line 1898 new-array v3, v0, [Landroid/support/v4/app/BackStackState; .line 1899 const/4 v8, 0x0 :goto_4 if-ge v8, v0, :cond_f .line 1900 new-instance v10, Landroid/support/v4/app/BackStackState; iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v9, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v9 check-cast v9, Landroid/support/v4/app/BackStackRecord; invoke-direct {v10, v9}, Landroid/support/v4/app/BackStackState;->(Landroid/support/v4/app/BackStackRecord;)V aput-object v10, v3, v8 .line 1901 sget-boolean v9, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v9, :cond_e const-string v9, "FragmentManager" new-instance v10, Ljava/lang/StringBuilder; invoke-direct {v10}, Ljava/lang/StringBuilder;->()V const-string v11, "saveAllState: adding back stack #" invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v10 const-string v11, ": " invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v10 iget-object v11, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList; invoke-virtual {v11, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v11 invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v10 invoke-virtual {v10}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v10 invoke-static {v9, v10}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1899 :cond_e add-int/lit8 v8, v8, 0x1 goto :goto_4 .line 1907 :cond_f new-instance v5, Landroid/support/v4/app/FragmentManagerState; invoke-direct {v5}, Landroid/support/v4/app/FragmentManagerState;->()V .line 1908 .local v5, "fms":Landroid/support/v4/app/FragmentManagerState; iput-object v1, v5, Landroid/support/v4/app/FragmentManagerState;->mActive:[Landroid/support/v4/app/FragmentState; .line 1909 iput-object v2, v5, Landroid/support/v4/app/FragmentManagerState;->mAdded:[I .line 1910 iput-object v3, v5, Landroid/support/v4/app/FragmentManagerState;->mBackStack:[Landroid/support/v4/app/BackStackState; goto/16 :goto_0 .end method .method saveFragmentBasicState(Landroid/support/v4/app/Fragment;)Landroid/os/Bundle; .locals 3 .param p1, "f" # Landroid/support/v4/app/Fragment; .prologue .line 1766 const/4 v0, 0x0 .line 1768 .local v0, "result":Landroid/os/Bundle; iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateBundle:Landroid/os/Bundle; if-nez v1, :cond_0 .line 1769 new-instance v1, Landroid/os/Bundle; invoke-direct {v1}, Landroid/os/Bundle;->()V iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateBundle:Landroid/os/Bundle; .line 1771 :cond_0 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateBundle:Landroid/os/Bundle; invoke-virtual {p1, v1}, Landroid/support/v4/app/Fragment;->performSaveInstanceState(Landroid/os/Bundle;)V .line 1772 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateBundle:Landroid/os/Bundle; invoke-virtual {v1}, Landroid/os/Bundle;->isEmpty()Z move-result v1 if-nez v1, :cond_1 .line 1773 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateBundle:Landroid/os/Bundle; .line 1774 const/4 v1, 0x0 iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateBundle:Landroid/os/Bundle; .line 1777 :cond_1 iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; if-eqz v1, :cond_2 .line 1778 invoke-virtual {p0, p1}, Landroid/support/v4/app/FragmentManagerImpl;->saveFragmentViewState(Landroid/support/v4/app/Fragment;)V .line 1780 :cond_2 iget-object v1, p1, Landroid/support/v4/app/Fragment;->mSavedViewState:Landroid/util/SparseArray; if-eqz v1, :cond_4 .line 1781 if-nez v0, :cond_3 .line 1782 new-instance v0, Landroid/os/Bundle; .end local v0 # "result":Landroid/os/Bundle; invoke-direct {v0}, Landroid/os/Bundle;->()V .line 1784 .restart local v0 # "result":Landroid/os/Bundle; :cond_3 const-string v1, "android:view_state" iget-object v2, p1, Landroid/support/v4/app/Fragment;->mSavedViewState:Landroid/util/SparseArray; invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->putSparseParcelableArray(Ljava/lang/String;Landroid/util/SparseArray;)V .line 1787 :cond_4 iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mUserVisibleHint:Z if-nez v1, :cond_6 .line 1788 if-nez v0, :cond_5 .line 1789 new-instance v0, Landroid/os/Bundle; .end local v0 # "result":Landroid/os/Bundle; invoke-direct {v0}, Landroid/os/Bundle;->()V .line 1792 .restart local v0 # "result":Landroid/os/Bundle; :cond_5 const-string v1, "android:user_visible_hint" iget-boolean v2, p1, Landroid/support/v4/app/Fragment;->mUserVisibleHint:Z invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->putBoolean(Ljava/lang/String;Z)V .line 1795 :cond_6 return-object v0 .end method .method public saveFragmentInstanceState(Landroid/support/v4/app/Fragment;)Landroid/support/v4/app/Fragment$SavedState; .locals 5 .param p1, "fragment" # Landroid/support/v4/app/Fragment; .prologue const/4 v1, 0x0 .line 686 iget v2, p1, Landroid/support/v4/app/Fragment;->mIndex:I if-gez v2, :cond_0 .line 687 new-instance v2, Ljava/lang/IllegalStateException; new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;->()V const-string v4, "Fragment " invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v3 const-string v4, " is not currently in the FragmentManager" invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v3 invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-direct {v2, v3}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V invoke-direct {p0, v2}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V .line 690 :cond_0 iget v2, p1, Landroid/support/v4/app/Fragment;->mState:I if-lez v2, :cond_1 .line 691 invoke-virtual {p0, p1}, Landroid/support/v4/app/FragmentManagerImpl;->saveFragmentBasicState(Landroid/support/v4/app/Fragment;)Landroid/os/Bundle; move-result-object v0 .line 692 .local v0, "result":Landroid/os/Bundle; if-eqz v0, :cond_1 new-instance v1, Landroid/support/v4/app/Fragment$SavedState; invoke-direct {v1, v0}, Landroid/support/v4/app/Fragment$SavedState;->(Landroid/os/Bundle;)V .line 694 .end local v0 # "result":Landroid/os/Bundle; :cond_1 return-object v1 .end method .method saveFragmentViewState(Landroid/support/v4/app/Fragment;)V .locals 2 .param p1, "f" # Landroid/support/v4/app/Fragment; .prologue .line 1750 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mInnerView:Landroid/view/View; if-nez v0, :cond_1 .line 1763 :cond_0 :goto_0 return-void .line 1753 :cond_1 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateArray:Landroid/util/SparseArray; if-nez v0, :cond_2 .line 1754 new-instance v0, Landroid/util/SparseArray; invoke-direct {v0}, Landroid/util/SparseArray;->()V iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateArray:Landroid/util/SparseArray; .line 1758 :goto_1 iget-object v0, p1, Landroid/support/v4/app/Fragment;->mInnerView:Landroid/view/View; iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateArray:Landroid/util/SparseArray; invoke-virtual {v0, v1}, Landroid/view/View;->saveHierarchyState(Landroid/util/SparseArray;)V .line 1759 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateArray:Landroid/util/SparseArray; invoke-virtual {v0}, Landroid/util/SparseArray;->size()I move-result v0 if-lez v0, :cond_0 .line 1760 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateArray:Landroid/util/SparseArray; iput-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedViewState:Landroid/util/SparseArray; .line 1761 const/4 v0, 0x0 iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateArray:Landroid/util/SparseArray; goto :goto_0 .line 1756 :cond_2 iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateArray:Landroid/util/SparseArray; invoke-virtual {v0}, Landroid/util/SparseArray;->clear()V goto :goto_1 .end method .method public setBackStackIndex(ILandroid/support/v4/app/BackStackRecord;)V .locals 4 .param p1, "index" # I .param p2, "bse" # Landroid/support/v4/app/BackStackRecord; .prologue .line 1549 monitor-enter p0 .line 1550 :try_start_0 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; if-nez v1, :cond_0 .line 1551 new-instance v1, Ljava/util/ArrayList; invoke-direct {v1}, Ljava/util/ArrayList;->()V iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; .line 1553 :cond_0 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; invoke-virtual {v1}, Ljava/util/ArrayList;->size()I move-result v0 .line 1554 .local v0, "N":I if-ge p1, v0, :cond_2 .line 1555 sget-boolean v1, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v1, :cond_1 const-string v1, "FragmentManager" new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "Setting back stack index " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v2 const-string v3, " to " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-static {v1, v2}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1556 :cond_1 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; invoke-virtual {v1, p1, p2}, Ljava/util/ArrayList;->set(ILjava/lang/Object;)Ljava/lang/Object; .line 1570 :goto_0 monitor-exit p0 .line 1571 return-void .line 1558 :cond_2 :goto_1 if-ge v0, p1, :cond_5 .line 1559 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; const/4 v2, 0x0 invoke-virtual {v1, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1560 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; if-nez v1, :cond_3 .line 1561 new-instance v1, Ljava/util/ArrayList; invoke-direct {v1}, Ljava/util/ArrayList;->()V iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; .line 1563 :cond_3 sget-boolean v1, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v1, :cond_4 const-string v1, "FragmentManager" new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "Adding available back stack index " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-static {v1, v2}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1564 :cond_4 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList; invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v2 invoke-virtual {v1, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z .line 1565 add-int/lit8 v0, v0, 0x1 goto :goto_1 .line 1567 :cond_5 sget-boolean v1, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v1, :cond_6 const-string v1, "FragmentManager" new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "Adding back stack index " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v2 const-string v3, " with " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-static {v1, v2}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1568 :cond_6 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList; invoke-virtual {v1, p2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z goto :goto_0 .line 1570 .end local v0 # "N":I :catchall_0 move-exception v1 monitor-exit p0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public showFragment(Landroid/support/v4/app/Fragment;II)V .locals 6 .param p1, "fragment" # Landroid/support/v4/app/Fragment; .param p2, "transition" # I .param p3, "transitionStyle" # I .prologue const/4 v5, 0x1 const/4 v4, 0x0 .line 1375 sget-boolean v1, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z if-eqz v1, :cond_0 const-string v1, "FragmentManager" new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "show: " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-static {v1, v2}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I .line 1376 :cond_0 iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mHidden:Z if-eqz v1, :cond_4 .line 1377 iput-boolean v4, p1, Landroid/support/v4/app/Fragment;->mHidden:Z .line 1378 iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; if-eqz v1, :cond_2 .line 1379 invoke-virtual {p0, p1, p2, v5, p3}, Landroid/support/v4/app/FragmentManagerImpl;->loadAnimation(Landroid/support/v4/app/Fragment;IZI)Landroid/view/animation/Animation; move-result-object v0 .line 1381 .local v0, "anim":Landroid/view/animation/Animation; if-eqz v0, :cond_1 .line 1382 iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-direct {p0, v1, v0}, Landroid/support/v4/app/FragmentManagerImpl;->setHWLayerAnimListenerIfAlpha(Landroid/view/View;Landroid/view/animation/Animation;)V .line 1383 iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-virtual {v1, v0}, Landroid/view/View;->startAnimation(Landroid/view/animation/Animation;)V .line 1385 :cond_1 iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View; invoke-virtual {v1, v4}, Landroid/view/View;->setVisibility(I)V .line 1387 .end local v0 # "anim":Landroid/view/animation/Animation; :cond_2 iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mAdded:Z if-eqz v1, :cond_3 iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mHasMenu:Z if-eqz v1, :cond_3 iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mMenuVisible:Z if-eqz v1, :cond_3 .line 1388 iput-boolean v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z .line 1390 :cond_3 invoke-virtual {p1, v4}, Landroid/support/v4/app/Fragment;->onHiddenChanged(Z)V .line 1392 :cond_4 return-void .end method .method startPendingDeferredFragments()V .locals 3 .prologue .line 1271 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; if-nez v2, :cond_1 .line 1279 :cond_0 return-void .line 1273 :cond_1 const/4 v1, 0x0 .local v1, "i":I :goto_0 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v2}, Ljava/util/ArrayList;->size()I move-result v2 if-ge v1, v2, :cond_0 .line 1274 iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList; invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/app/Fragment; .line 1275 .local v0, "f":Landroid/support/v4/app/Fragment; if-eqz v0, :cond_2 .line 1276 invoke-virtual {p0, v0}, Landroid/support/v4/app/FragmentManagerImpl;->performPendingDeferredStart(Landroid/support/v4/app/Fragment;)V .line 1273 :cond_2 add-int/lit8 v1, v1, 0x1 goto :goto_0 .end method .method public toString()Ljava/lang/String; .locals 2 .prologue .line 704 new-instance v0, Ljava/lang/StringBuilder; const/16 v1, 0x80 invoke-direct {v0, v1}, Ljava/lang/StringBuilder;->(I)V .line 705 .local v0, "sb":Ljava/lang/StringBuilder; const-string v1, "FragmentManager{" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 706 invoke-static {p0}, Ljava/lang/System;->identityHashCode(Ljava/lang/Object;)I move-result v1 invoke-static {v1}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 707 const-string v1, " in " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 708 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment; if-eqz v1, :cond_0 .line 709 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment; invoke-static {v1, v0}, Landroid/support/v4/util/DebugUtils;->buildShortClassTag(Ljava/lang/Object;Ljava/lang/StringBuilder;)V .line 713 :goto_0 const-string v1, "}}" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; .line 714 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 return-object v1 .line 711 :cond_0 iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHost:Landroid/support/v4/app/FragmentHostCallback; invoke-static {v1, v0}, Landroid/support/v4/util/DebugUtils;->buildShortClassTag(Ljava/lang/Object;Ljava/lang/StringBuilder;)V goto :goto_0 .end method