pegasus_spyware/sample1/decompiled_raw/smali/android/support/v4/app/FragmentManagerImpl.smali

8373 wiersze
220 KiB
Plaintext

.class final Landroid/support/v4/app/FragmentManagerImpl;
.super Landroid/support/v4/app/FragmentManager;
.source "FragmentManager.java"
# 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"
# 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 mActivity:Landroid/support/v4/app/FragmentActivity;
.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 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 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 <clinit>()V
.locals 5
.prologue
const/4 v0, 0x0
const/high16 v4, 0x40200000 # 2.5f
const/high16 v3, 0x3fc00000 # 1.5f
.line 396
sput-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z
.line 399
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 727
new-instance v0, Landroid/view/animation/DecelerateInterpolator;
invoke-direct {v0, v4}, Landroid/view/animation/DecelerateInterpolator;-><init>(F)V
sput-object v0, Landroid/support/v4/app/FragmentManagerImpl;->DECELERATE_QUINT:Landroid/view/animation/Interpolator;
.line 728
new-instance v0, Landroid/view/animation/DecelerateInterpolator;
invoke-direct {v0, v3}, Landroid/view/animation/DecelerateInterpolator;-><init>(F)V
sput-object v0, Landroid/support/v4/app/FragmentManagerImpl;->DECELERATE_CUBIC:Landroid/view/animation/Interpolator;
.line 729
new-instance v0, Landroid/view/animation/AccelerateInterpolator;
invoke-direct {v0, v4}, Landroid/view/animation/AccelerateInterpolator;-><init>(F)V
sput-object v0, Landroid/support/v4/app/FragmentManagerImpl;->ACCELERATE_QUINT:Landroid/view/animation/Interpolator;
.line 730
new-instance v0, Landroid/view/animation/AccelerateInterpolator;
invoke-direct {v0, v3}, Landroid/view/animation/AccelerateInterpolator;-><init>(F)V
sput-object v0, Landroid/support/v4/app/FragmentManagerImpl;->ACCELERATE_CUBIC:Landroid/view/animation/Interpolator;
return-void
.end method
.method constructor <init>()V
.locals 2
.prologue
const/4 v1, 0x0
.line 395
invoke-direct {p0}, Landroid/support/v4/app/FragmentManager;-><init>()V
.line 422
const/4 v0, 0x0
iput v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I
.line 434
iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateBundle:Landroid/os/Bundle;
.line 435
iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateArray:Landroid/util/SparseArray;
.line 437
new-instance v0, Landroid/support/v4/app/FragmentManagerImpl$1;
invoke-direct {v0, p0}, Landroid/support/v4/app/FragmentManagerImpl$1;-><init>(Landroid/support/v4/app/FragmentManagerImpl;)V
iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecCommit:Ljava/lang/Runnable;
return-void
.end method
.method private checkStateLoss()V
.locals 3
.prologue
.line 1342
iget-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z
if-eqz v0, :cond_0
.line 1343
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Can not perform this action after onSaveInstanceState"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 1346
:cond_0
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNoTransactionsBecause:Ljava/lang/String;
if-eqz v0, :cond_1
.line 1347
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
throw v0
.line 1350
: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 750
new-instance v0, Landroid/view/animation/AlphaAnimation;
invoke-direct {v0, p1, p2}, Landroid/view/animation/AlphaAnimation;-><init>(FF)V
.line 751
.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 752
const-wide/16 v1, 0xdc
invoke-virtual {v0, v1, v2}, Landroid/view/animation/AlphaAnimation;->setDuration(J)V
.line 753
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 736
new-instance v10, Landroid/view/animation/AnimationSet;
const/4 v1, 0x0
invoke-direct {v10, v1}, Landroid/view/animation/AnimationSet;-><init>(Z)V
.line 737
.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;-><init>(FFFFIFIF)V
.line 739
.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 740
const-wide/16 v1, 0xdc
invoke-virtual {v0, v1, v2}, Landroid/view/animation/ScaleAnimation;->setDuration(J)V
.line 741
invoke-virtual {v10, v0}, Landroid/view/animation/AnimationSet;->addAnimation(Landroid/view/animation/Animation;)V
.line 742
new-instance v9, Landroid/view/animation/AlphaAnimation;
invoke-direct {v9, p3, p4}, Landroid/view/animation/AlphaAnimation;-><init>(FF)V
.line 743
.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 744
const-wide/16 v1, 0xdc
invoke-virtual {v9, v1, v2}, Landroid/view/animation/AlphaAnimation;->setDuration(J)V
.line 745
invoke-virtual {v10, v9}, Landroid/view/animation/AnimationSet;->addAnimation(Landroid/view/animation/Animation;)V
.line 746
return-object v10
.end method
.method public static reverseTransit(I)I
.locals 1
.param p0, "transit" # I
.prologue
.line 2029
const/4 v0, 0x0
.line 2030
.local v0, "rev":I
sparse-switch p0, :sswitch_data_0
.line 2041
:goto_0
return v0
.line 2032
:sswitch_0
const/16 v0, 0x2002
.line 2033
goto :goto_0
.line 2035
:sswitch_1
const/16 v0, 0x1001
.line 2036
goto :goto_0
.line 2038
:sswitch_2
const/16 v0, 0x1003
goto :goto_0
.line 2030
:sswitch_data_0
.sparse-switch
0x1001 -> :sswitch_0
0x1003 -> :sswitch_2
0x2002 -> :sswitch_1
.end sparse-switch
.end method
.method private throwException(Ljava/lang/RuntimeException;)V
.locals 7
.param p1, "ex" # Ljava/lang/RuntimeException;
.prologue
.line 445
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 446
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 447
new-instance v1, Landroid/support/v4/util/LogWriter;
const-string v3, "FragmentManager"
invoke-direct {v1, v3}, Landroid/support/v4/util/LogWriter;-><init>(Ljava/lang/String;)V
.line 448
.local v1, "logw":Landroid/support/v4/util/LogWriter;
new-instance v2, Ljava/io/PrintWriter;
invoke-direct {v2, v1}, Ljava/io/PrintWriter;-><init>(Ljava/io/Writer;)V
.line 449
.local v2, "pw":Ljava/io/PrintWriter;
iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
if-eqz v3, :cond_0
.line 451
:try_start_0
iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
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/FragmentActivity;->dump(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 462
:goto_0
throw p1
.line 452
:catch_0
move-exception v0
.line 453
.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 457
.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 458
:catch_1
move-exception v0
.line 459
.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 2053
const/4 v0, -0x1
.line 2054
.local v0, "animAttr":I
sparse-switch p0, :sswitch_data_0
.line 2065
:goto_0
return v0
.line 2056
:sswitch_0
if-eqz p1, :cond_0
const/4 v0, 0x1
.line 2057
:goto_1
goto :goto_0
.line 2056
:cond_0
const/4 v0, 0x2
goto :goto_1
.line 2059
:sswitch_1
if-eqz p1, :cond_1
const/4 v0, 0x3
.line 2060
:goto_2
goto :goto_0
.line 2059
:cond_1
const/4 v0, 0x4
goto :goto_2
.line 2062
: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 2054
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 1492
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList;
if-nez v0, :cond_0
.line 1493
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList;
.line 1495
: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 1496
invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->reportBackStackChanged()V
.line 1497
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 1168
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-nez v0, :cond_0
.line 1169
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
.line 1171
: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;-><init>()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 1172
:cond_1
invoke-virtual {p0, p1}, Landroid/support/v4/app/FragmentManagerImpl;->makeActive(Landroid/support/v4/app/Fragment;)V
.line 1173
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mDetached:Z
if-nez v0, :cond_4
.line 1174
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 1175
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
throw v0
.line 1177
: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 1178
iput-boolean v3, p1, Landroid/support/v4/app/Fragment;->mAdded:Z
.line 1179
const/4 v0, 0x0
iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRemoving:Z
.line 1180
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 1181
iput-boolean v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z
.line 1183
:cond_3
if-eqz p2, :cond_4
.line 1184
invoke-virtual {p0, p1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;)V
.line 1187
: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 541
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackChangeListeners:Ljava/util/ArrayList;
if-nez v0, :cond_0
.line 542
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackChangeListeners:Ljava/util/ArrayList;
.line 544
: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 545
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 1372
monitor-enter p0
.line 1373
: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 1374
:cond_0
iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList;
if-nez v2, :cond_1
.line 1375
new-instance v2, Ljava/util/ArrayList;
invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V
iput-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList;
.line 1377
: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 1378
.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;-><init>()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 1379
: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 1380
monitor-exit p0
move v1, v0
.line 1386
.end local v0 # "index":I
.local v1, "index":I
:goto_0
return v1
.line 1383
.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 1384
.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;-><init>()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 1385
: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 1386
monitor-exit p0
move v1, v0
.end local v0 # "index":I
.restart local v1 # "index":I
goto :goto_0
.line 1388
.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 attachActivity(Landroid/support/v4/app/FragmentActivity;Landroid/support/v4/app/FragmentContainer;Landroid/support/v4/app/Fragment;)V
.locals 2
.param p1, "activity" # Landroid/support/v4/app/FragmentActivity;
.param p2, "container" # Landroid/support/v4/app/FragmentContainer;
.param p3, "parent" # Landroid/support/v4/app/Fragment;
.prologue
.line 1860
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
if-eqz v0, :cond_0
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Already attached"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 1861
:cond_0
iput-object p1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
.line 1862
iput-object p2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mContainer:Landroid/support/v4/app/FragmentContainer;
.line 1863
iput-object p3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment;
.line 1864
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 1264
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;-><init>()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 1265
:cond_0
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mDetached:Z
if-eqz v0, :cond_5
.line 1266
iput-boolean v5, p1, Landroid/support/v4/app/Fragment;->mDetached:Z
.line 1267
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mAdded:Z
if-nez v0, :cond_5
.line 1268
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-nez v0, :cond_1
.line 1269
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
.line 1271
: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 1272
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
throw v0
.line 1274
: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;-><init>()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 1275
: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 1276
iput-boolean v3, p1, Landroid/support/v4/app/Fragment;->mAdded:Z
.line 1277
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 1278
iput-boolean v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z
.line 1280
: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 1283
:cond_5
return-void
.end method
.method public beginTransaction()Landroid/support/v4/app/FragmentTransaction;
.locals 1
.prologue
.line 467
new-instance v0, Landroid/support/v4/app/BackStackRecord;
invoke-direct {v0, p0}, Landroid/support/v4/app/BackStackRecord;-><init>(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 1245
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;-><init>()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 1246
:cond_0
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mDetached:Z
if-nez v0, :cond_4
.line 1247
iput-boolean v2, p1, Landroid/support/v4/app/Fragment;->mDetached:Z
.line 1248
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mAdded:Z
if-eqz v0, :cond_4
.line 1250
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-eqz v0, :cond_2
.line 1251
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;-><init>()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 1252
: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 1254
: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 1255
iput-boolean v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z
.line 1257
: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 1258
invoke-virtual/range {v0 .. v5}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;IIIZ)V
.line 1261
:cond_4
return-void
.end method
.method public dispatchActivityCreated()V
.locals 2
.prologue
const/4 v1, 0x0
.line 1876
iput-boolean v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z
.line 1877
const/4 v0, 0x2
invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V
.line 1878
return-void
.end method
.method public dispatchConfigurationChanged(Landroid/content/res/Configuration;)V
.locals 3
.param p1, "newConfig" # Landroid/content/res/Configuration;
.prologue
.line 1921
iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-eqz v2, :cond_1
.line 1922
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 1923
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 1924
.local v0, "f":Landroid/support/v4/app/Fragment;
if-eqz v0, :cond_0
.line 1925
invoke-virtual {v0, p1}, Landroid/support/v4/app/Fragment;->performConfigurationChanged(Landroid/content/res/Configuration;)V
.line 1922
:cond_0
add-int/lit8 v1, v1, 0x1
goto :goto_0
.line 1929
.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 2004
iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-eqz v2, :cond_1
.line 2005
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 2006
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 2007
.local v0, "f":Landroid/support/v4/app/Fragment;
if-eqz v0, :cond_0
.line 2008
invoke-virtual {v0, p1}, Landroid/support/v4/app/Fragment;->performContextItemSelected(Landroid/view/MenuItem;)Z
move-result v2
if-eqz v2, :cond_0
.line 2009
const/4 v2, 0x1
.line 2014
.end local v0 # "f":Landroid/support/v4/app/Fragment;
.end local v1 # "i":I
:goto_1
return v2
.line 2005
.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 2014
.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 1871
iput-boolean v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z
.line 1872
const/4 v0, 0x1
invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V
.line 1873
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 1943
const/4 v3, 0x0
.line 1944
.local v3, "show":Z
const/4 v2, 0x0
.line 1945
.local v2, "newMenus":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroid/support/v4/app/Fragment;>;"
iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-eqz v4, :cond_2
.line 1946
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 1947
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 1948
.local v0, "f":Landroid/support/v4/app/Fragment;
if-eqz v0, :cond_1
.line 1949
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 1950
const/4 v3, 0x1
.line 1951
if-nez v2, :cond_0
.line 1952
new-instance v2, Ljava/util/ArrayList;
.end local v2 # "newMenus":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroid/support/v4/app/Fragment;>;"
invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V
.line 1954
.restart local v2 # "newMenus":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroid/support/v4/app/Fragment;>;"
:cond_0
invoke-virtual {v2, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 1946
:cond_1
add-int/lit8 v1, v1, 0x1
goto :goto_0
.line 1960
.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 1961
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 1962
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 1963
.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 1964
:cond_3
invoke-virtual {v0}, Landroid/support/v4/app/Fragment;->onDestroyOptionsMenu()V
.line 1961
:cond_4
add-int/lit8 v1, v1, 0x1
goto :goto_1
.line 1969
.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 1971
return v3
.end method
.method public dispatchDestroy()V
.locals 3
.prologue
const/4 v2, 0x0
const/4 v1, 0x0
.line 1912
const/4 v0, 0x1
iput-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mDestroyed:Z
.line 1913
invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->execPendingActions()Z
.line 1914
invoke-virtual {p0, v2, v2}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V
.line 1915
iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
.line 1916
iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mContainer:Landroid/support/v4/app/FragmentContainer;
.line 1917
iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment;
.line 1918
return-void
.end method
.method public dispatchDestroyView()V
.locals 2
.prologue
.line 1908
const/4 v0, 0x1
const/4 v1, 0x0
invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V
.line 1909
return-void
.end method
.method public dispatchLowMemory()V
.locals 3
.prologue
.line 1932
iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-eqz v2, :cond_1
.line 1933
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 1934
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 1935
.local v0, "f":Landroid/support/v4/app/Fragment;
if-eqz v0, :cond_0
.line 1936
invoke-virtual {v0}, Landroid/support/v4/app/Fragment;->performLowMemory()V
.line 1933
:cond_0
add-int/lit8 v1, v1, 0x1
goto :goto_0
.line 1940
.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 1990
iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-eqz v2, :cond_1
.line 1991
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 1992
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 1993
.local v0, "f":Landroid/support/v4/app/Fragment;
if-eqz v0, :cond_0
.line 1994
invoke-virtual {v0, p1}, Landroid/support/v4/app/Fragment;->performOptionsItemSelected(Landroid/view/MenuItem;)Z
move-result v2
if-eqz v2, :cond_0
.line 1995
const/4 v2, 0x1
.line 2000
.end local v0 # "f":Landroid/support/v4/app/Fragment;
.end local v1 # "i":I
:goto_1
return v2
.line 1991
.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 2000
.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 2018
iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-eqz v2, :cond_1
.line 2019
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 2020
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 2021
.local v0, "f":Landroid/support/v4/app/Fragment;
if-eqz v0, :cond_0
.line 2022
invoke-virtual {v0, p1}, Landroid/support/v4/app/Fragment;->performOptionsMenuClosed(Landroid/view/Menu;)V
.line 2019
:cond_0
add-int/lit8 v1, v1, 0x1
goto :goto_0
.line 2026
.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 1891
const/4 v0, 0x4
const/4 v1, 0x0
invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V
.line 1892
return-void
.end method
.method public dispatchPrepareOptionsMenu(Landroid/view/Menu;)Z
.locals 4
.param p1, "menu" # Landroid/view/Menu;
.prologue
.line 1975
const/4 v2, 0x0
.line 1976
.local v2, "show":Z
iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-eqz v3, :cond_1
.line 1977
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 1978
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 1979
.local v0, "f":Landroid/support/v4/app/Fragment;
if-eqz v0, :cond_0
.line 1980
invoke-virtual {v0, p1}, Landroid/support/v4/app/Fragment;->performPrepareOptionsMenu(Landroid/view/Menu;)Z
move-result v3
if-eqz v3, :cond_0
.line 1981
const/4 v2, 0x1
.line 1977
:cond_0
add-int/lit8 v1, v1, 0x1
goto :goto_0
.line 1986
.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 1904
const/4 v0, 0x2
const/4 v1, 0x0
invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V
.line 1905
return-void
.end method
.method public dispatchResume()V
.locals 2
.prologue
const/4 v1, 0x0
.line 1886
iput-boolean v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z
.line 1887
const/4 v0, 0x5
invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V
.line 1888
return-void
.end method
.method public dispatchStart()V
.locals 2
.prologue
const/4 v1, 0x0
.line 1881
iput-boolean v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z
.line 1882
const/4 v0, 0x4
invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V
.line 1883
return-void
.end method
.method public dispatchStop()V
.locals 2
.prologue
.line 1898
const/4 v0, 0x1
iput-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z
.line 1900
const/4 v0, 0x3
const/4 v1, 0x0
invoke-virtual {p0, v0, v1}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IZ)V
.line 1901
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 616
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()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 619
.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 620
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 621
.local v0, "N":I
if-lez v0, :cond_1
.line 622
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 623
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 624
const-string v6, ":"
invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
.line 625
const/4 v3, 0x0
.local v3, "i":I
:goto_0
if-ge v3, v0, :cond_1
.line 626
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 627
.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 628
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 629
if-eqz v2, :cond_0
.line 630
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 625
:cond_0
add-int/lit8 v3, v3, 0x1
goto :goto_0
.line 636
.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 637
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 638
.restart local v0 # "N":I
if-lez v0, :cond_2
.line 639
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 640
const/4 v3, 0x0
.restart local v3 # "i":I
:goto_1
if-ge v3, v0, :cond_2
.line 641
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 642
.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 643
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 640
add-int/lit8 v3, v3, 0x1
goto :goto_1
.line 648
.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 649
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 650
.restart local v0 # "N":I
if-lez v0, :cond_3
.line 651
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 652
const/4 v3, 0x0
.restart local v3 # "i":I
:goto_2
if-ge v3, v0, :cond_3
.line 653
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 654
.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 655
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 652
add-int/lit8 v3, v3, 0x1
goto :goto_2
.line 660
.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 661
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 662
.restart local v0 # "N":I
if-lez v0, :cond_4
.line 663
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 664
const/4 v3, 0x0
.restart local v3 # "i":I
:goto_3
if-ge v3, v0, :cond_4
.line 665
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 666
.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 667
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 668
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 664
add-int/lit8 v3, v3, 0x1
goto :goto_3
.line 673
.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 674
:try_start_0
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList;
if-eqz v6, :cond_5
.line 675
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 676
.restart local v0 # "N":I
if-lez v0, :cond_5
.line 677
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 678
const/4 v3, 0x0
.restart local v3 # "i":I
:goto_4
if-ge v3, v0, :cond_5
.line 679
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 680
.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 681
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 678
add-int/lit8 v3, v3, 0x1
goto :goto_4
.line 686
.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 687
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 688
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 690
:cond_6
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 692
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList;
if-eqz v6, :cond_7
.line 693
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 694
.restart local v0 # "N":I
if-lez v0, :cond_7
.line 695
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 696
const/4 v3, 0x0
.restart local v3 # "i":I
:goto_5
if-ge v3, v0, :cond_7
.line 697
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 698
.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 699
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 696
add-int/lit8 v3, v3, 0x1
goto :goto_5
.line 690
.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 704
: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 705
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string v6, " mActivity="
invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
.line 706
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 707
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment;
if-eqz v6, :cond_8
.line 708
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 710
: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 711
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 712
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 713
iget-boolean v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z
if-eqz v6, :cond_9
.line 714
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 715
iget-boolean v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z
invoke-virtual {p3, v6}, Ljava/io/PrintWriter;->println(Z)V
.line 717
:cond_9
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNoTransactionsBecause:Ljava/lang/String;
if-eqz v6, :cond_a
.line 718
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 719
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 721
: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 722
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 723
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 725
: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 1353
if-nez p2, :cond_0
.line 1354
invoke-direct {p0}, Landroid/support/v4/app/FragmentManagerImpl;->checkStateLoss()V
.line 1356
:cond_0
monitor-enter p0
.line 1357
:try_start_0
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
if-nez v0, :cond_1
.line 1358
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Activity has been destroyed"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 1368
:catchall_0
move-exception v0
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw v0
.line 1360
:cond_1
:try_start_1
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList;
if-nez v0, :cond_2
.line 1361
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList;
.line 1363
:cond_2
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 1364
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_3
.line 1365
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
iget-object v0, v0, Landroid/support/v4/app/FragmentActivity;->mHandler:Landroid/os/Handler;
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 1366
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
iget-object v0, v0, Landroid/support/v4/app/FragmentActivity;->mHandler:Landroid/os/Handler;
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 1368
:cond_3
monitor-exit p0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
.line 1369
return-void
.end method
.method public execPendingActions()Z
.locals 8
.prologue
const/4 v7, 0x0
.line 1431
iget-boolean v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecutingActions:Z
if-eqz v5, :cond_0
.line 1432
new-instance v5, Ljava/lang/IllegalStateException;
const-string v6, "Recursive entry to executePendingTransactions"
invoke-direct {v5, v6}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v5
.line 1435
:cond_0
invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
move-result-object v5
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
iget-object v6, v6, Landroid/support/v4/app/FragmentActivity;->mHandler:Landroid/os/Handler;
invoke-virtual {v6}, Landroid/os/Handler;->getLooper()Landroid/os/Looper;
move-result-object v6
if-eq v5, v6, :cond_1
.line 1436
new-instance v5, Ljava/lang/IllegalStateException;
const-string v6, "Must be called from main thread of process"
invoke-direct {v5, v6}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v5
.line 1439
:cond_1
const/4 v0, 0x0
.line 1444
.local v0, "didSomething":Z
:goto_0
monitor-enter p0
.line 1445
: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 1446
:cond_2
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 1467
iget-boolean v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHavePendingDeferredStart:Z
if-eqz v5, :cond_9
.line 1468
const/4 v3, 0x0
.line 1469
.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 1470
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 1471
.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 1472
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 1469
:cond_3
add-int/lit8 v2, v2, 0x1
goto :goto_1
.line 1449
.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 1450
.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 1451
:cond_5
new-array v5, v4, [Ljava/lang/Runnable;
iput-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mTmpActions:[Ljava/lang/Runnable;
.line 1453
: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 1454
iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mPendingActions:Ljava/util/ArrayList;
invoke-virtual {v5}, Ljava/util/ArrayList;->clear()V
.line 1455
iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
iget-object v5, v5, Landroid/support/v4/app/FragmentActivity;->mHandler:Landroid/os/Handler;
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 1456
monitor-exit p0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
.line 1458
const/4 v5, 0x1
iput-boolean v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecutingActions:Z
.line 1459
const/4 v2, 0x0
.restart local v2 # "i":I
:goto_2
if-ge v2, v4, :cond_7
.line 1460
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 1461
iget-object v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mTmpActions:[Ljava/lang/Runnable;
const/4 v6, 0x0
aput-object v6, v5, v2
.line 1459
add-int/lit8 v2, v2, 0x1
goto :goto_2
.line 1456
.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 1463
.restart local v2 # "i":I
.restart local v4 # "numActions":I
:cond_7
iput-boolean v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecutingActions:Z
.line 1464
const/4 v0, 0x1
.line 1465
goto :goto_0
.line 1475
.end local v4 # "numActions":I
.restart local v3 # "loadersRunning":Z
:cond_8
if-nez v3, :cond_9
.line 1476
iput-boolean v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHavePendingDeferredStart:Z
.line 1477
invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->startPendingDeferredFragments()V
.line 1480
.end local v2 # "i":I
.end local v3 # "loadersRunning":Z
:cond_9
return v0
.end method
.method public executePendingTransactions()Z
.locals 1
.prologue
.line 472
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 1286
iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-eqz v2, :cond_2
.line 1288
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 1289
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 1290
.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 1304
.end local v0 # "f":Landroid/support/v4/app/Fragment;
.end local v1 # "i":I
:cond_0
:goto_1
return-object v0
.line 1288
.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 1295
.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 1297
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 1298
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 1299
.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 1297
:cond_3
add-int/lit8 v1, v1, -0x1
goto :goto_2
.line 1304
.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 1308
iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-eqz v2, :cond_2
if-eqz p1, :cond_2
.line 1310
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 1311
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 1312
.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 1326
.end local v0 # "f":Landroid/support/v4/app/Fragment;
.end local v1 # "i":I
:cond_0
:goto_1
return-object v0
.line 1310
.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 1317
.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 1319
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 1320
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 1321
.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 1319
:cond_3
add-int/lit8 v1, v1, -0x1
goto :goto_2
.line 1326
.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 1330
iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList;
if-eqz v2, :cond_1
if-eqz p1, :cond_1
.line 1331
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 1332
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 1333
.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 1338
.end local v0 # "f":Landroid/support/v4/app/Fragment;
.end local v1 # "i":I
:goto_1
return-object v0
.line 1331
.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 1338
.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 1417
monitor-enter p0
.line 1418
: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 1419
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList;
if-nez v0, :cond_0
.line 1420
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList;
.line 1422
: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;-><init>()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 1423
: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 1424
monitor-exit p0
.line 1425
return-void
.line 1424
: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 536
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 531
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 565
invoke-virtual {p1, p2, v2}, Landroid/os/Bundle;->getInt(Ljava/lang/String;I)I
move-result v1
.line 566
.local v1, "index":I
if-ne v1, v2, :cond_1
.line 567
const/4 v0, 0x0
.line 578
:cond_0
:goto_0
return-object v0
.line 569
: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 570
new-instance v2, Ljava/lang/IllegalStateException;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Fragement 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;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v2}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V
.line 573
: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 574
.local v0, "f":Landroid/support/v4/app/Fragment;
if-nez v0, :cond_0
.line 575
new-instance v2, Ljava/lang/IllegalStateException;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Fragement 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;-><init>(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 583
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList;
return-object v0
.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 1207
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;-><init>()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 1208
:cond_0
iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mHidden:Z
if-nez v1, :cond_4
.line 1209
iput-boolean v4, p1, Landroid/support/v4/app/Fragment;->mHidden:Z
.line 1210
iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View;
if-eqz v1, :cond_2
.line 1211
invoke-virtual {p0, p1, p2, v4, p3}, Landroid/support/v4/app/FragmentManagerImpl;->loadAnimation(Landroid/support/v4/app/Fragment;IZI)Landroid/view/animation/Animation;
move-result-object v0
.line 1213
.local v0, "anim":Landroid/view/animation/Animation;
if-eqz v0, :cond_1
.line 1214
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 1216
: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 1218
.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 1219
iput-boolean v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z
.line 1221
:cond_3
invoke-virtual {p1, v4}, Landroid/support/v4/app/Fragment;->onHiddenChanged(Z)V
.line 1223
:cond_4
return-void
.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 758
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 760
.local v1, "animObj":Landroid/view/animation/Animation;
if-eqz v1, :cond_0
.line 812
.end local v1 # "animObj":Landroid/view/animation/Animation;
:goto_0
return-object v1
.line 764
.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 765
iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
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 766
.local v0, "anim":Landroid/view/animation/Animation;
if-eqz v0, :cond_1
move-object v1, v0
.line 767
goto :goto_0
.line 771
.end local v0 # "anim":Landroid/view/animation/Animation;
:cond_1
if-nez p2, :cond_2
move-object v1, v3
.line 772
goto :goto_0
.line 775
:cond_2
invoke-static {p2, p3}, Landroid/support/v4/app/FragmentManagerImpl;->transitToStyleIndex(IZ)I
move-result v2
.line 776
.local v2, "styleIndex":I
if-gez v2, :cond_3
move-object v1, v3
.line 777
goto :goto_0
.line 780
:cond_3
packed-switch v2, :pswitch_data_0
.line 795
if-nez p4, :cond_4
iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
invoke-virtual {v4}, Landroid/support/v4/app/FragmentActivity;->getWindow()Landroid/view/Window;
move-result-object v4
if-eqz v4, :cond_4
.line 796
iget-object v4, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
invoke-virtual {v4}, Landroid/support/v4/app/FragmentActivity;->getWindow()Landroid/view/Window;
move-result-object v4
invoke-virtual {v4}, Landroid/view/Window;->getAttributes()Landroid/view/WindowManager$LayoutParams;
move-result-object v4
iget p4, v4, Landroid/view/WindowManager$LayoutParams;->windowAnimations:I
.line 798
:cond_4
if-nez p4, :cond_5
move-object v1, v3
.line 799
goto :goto_0
.line 782
:pswitch_0
iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
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 784
:pswitch_1
iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
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 786
:pswitch_2
iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
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 788
:pswitch_3
iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
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 790
:pswitch_4
iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
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 792
:pswitch_5
iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
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 812
goto :goto_0
.line 780
: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 1134
iget v0, p1, Landroid/support/v4/app/Fragment;->mIndex:I
if-ltz v0, :cond_1
.line 1150
:cond_0
:goto_0
return-void
.line 1138
: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 1139
:cond_2
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList;
if-nez v0, :cond_3
.line 1140
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList;
.line 1142
: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 1143
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 1149
: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;-><init>()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 1146
: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 1147
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 1153
iget v0, p1, Landroid/support/v4/app/Fragment;->mIndex:I
if-gez v0, :cond_0
.line 1165
:goto_0
return-void
.line 1157
: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;-><init>()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 1158
: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 1159
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList;
if-nez v0, :cond_2
.line 1160
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList;
.line 1162
: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 1163
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
iget-object v1, p1, Landroid/support/v4/app/Fragment;->mWho:Ljava/lang/String;
invoke-virtual {v0, v1}, Landroid/support/v4/app/FragmentActivity;->invalidateSupportFragment(Ljava/lang/String;)V
.line 1164
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 1090
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
if-nez v0, :cond_0
if-eqz p1, :cond_0
.line 1091
new-instance v0, Ljava/lang/IllegalStateException;
const-string v2, "No activity"
invoke-direct {v0, v2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 1094
:cond_0
if-nez p4, :cond_2
iget v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I
if-ne v0, p1, :cond_2
.line 1120
:cond_1
:goto_0
return-void
.line 1098
:cond_2
iput p1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I
.line 1099
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList;
if-eqz v0, :cond_1
.line 1100
const/4 v7, 0x0
.line 1101
.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 1102
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 1103
.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 1104
invoke-virtual/range {v0 .. v5}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(Landroid/support/v4/app/Fragment;IIIZ)V
.line 1105
iget-object v0, v1, Landroid/support/v4/app/Fragment;->mLoaderManager:Landroid/support/v4/app/LoaderManagerImpl;
if-eqz v0, :cond_3
.line 1106
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 1101
:cond_3
add-int/lit8 v6, v6, 0x1
goto :goto_1
.line 1111
.end local v1 # "f":Landroid/support/v4/app/Fragment;
:cond_4
if-nez v7, :cond_5
.line 1112
invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->startPendingDeferredFragments()V
.line 1115
: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;->mActivity:Landroid/support/v4/app/FragmentActivity;
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 1116
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
invoke-virtual {v0}, Landroid/support/v4/app/FragmentActivity;->supportInvalidateOptionsMenu()V
.line 1117
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 1086
invoke-virtual {p0, p1, v0, v0, p2}, Landroid/support/v4/app/FragmentManagerImpl;->moveToState(IIIZ)V
.line 1087
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 1082
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 1083
return-void
.end method
.method moveToState(Landroid/support/v4/app/Fragment;IIIZ)V
.locals 10
.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 830
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 831
const/4 p2, 0x1
.line 833
: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 835
iget p2, p1, Landroid/support/v4/app/Fragment;->mState:I
.line 839
: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 840
const/4 p2, 0x3
.line 842
:cond_3
iget v0, p1, Landroid/support/v4/app/Fragment;->mState:I
if-ge v0, p2, :cond_1d
.line 846
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mFromLayout:Z
if-eqz v0, :cond_4
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mInLayout:Z
if-nez v0, :cond_4
.line 1079
:goto_0
return-void
.line 849
:cond_4
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View;
if-eqz v0, :cond_5
.line 854
const/4 v0, 0x0
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View;
.line 855
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 857
:cond_5
iget v0, p1, Landroid/support/v4/app/Fragment;->mState:I
packed-switch v0, :pswitch_data_0
.line 1078
:cond_6
:goto_1
iput p2, p1, Landroid/support/v4/app/Fragment;->mState:I
goto :goto_0
.line 859
:pswitch_0
sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z
if-eqz v0, :cond_7
const-string v0, "FragmentManager"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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 860
:cond_7
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle;
if-eqz v0, :cond_9
.line 861
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 863
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 865
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment;
if-eqz v0, :cond_8
.line 866
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 869
:cond_8
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 871
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mUserVisibleHint:Z
if-nez v0, :cond_9
.line 872
const/4 v0, 0x1
iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mDeferStart:Z
.line 873
const/4 v0, 0x3
if-le p2, v0, :cond_9
.line 874
const/4 p2, 0x3
.line 878
:cond_9
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mActivity:Landroid/support/v4/app/FragmentActivity;
.line 879
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 880
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment;
if-eqz v0, :cond_a
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 882
const/4 v0, 0x0
iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mCalled:Z
.line 883
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
invoke-virtual {p1, v0}, Landroid/support/v4/app/Fragment;->onAttach(Landroid/app/Activity;)V
.line 884
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mCalled:Z
if-nez v0, :cond_b
.line 885
new-instance v0, Landroid/support/v4/app/SuperNotCalledException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
throw v0
.line 880
:cond_a
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
iget-object v0, v0, Landroid/support/v4/app/FragmentActivity;->mFragments:Landroid/support/v4/app/FragmentManagerImpl;
goto :goto_2
.line 888
:cond_b
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mParentFragment:Landroid/support/v4/app/Fragment;
if-nez v0, :cond_c
.line 889
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
invoke-virtual {v0, p1}, Landroid/support/v4/app/FragmentActivity;->onAttachFragment(Landroid/support/v4/app/Fragment;)V
.line 892
:cond_c
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRetaining:Z
if-nez v0, :cond_d
.line 893
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 895
:cond_d
const/4 v0, 0x0
iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRetaining:Z
.line 896
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mFromLayout:Z
if-eqz v0, :cond_f
.line 900
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 902
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View;
if-eqz v0, :cond_1b
.line 903
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 904
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;
.line 905
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mHidden:Z
if-eqz v0, :cond_e
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 906
:cond_e
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 912
:cond_f
:goto_3
:pswitch_1
const/4 v0, 0x1
if-le p2, v0, :cond_17
.line 913
sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z
if-eqz v0, :cond_10
const-string v0, "FragmentManager"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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 914
:cond_10
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mFromLayout:Z
if-nez v0, :cond_15
.line 915
const/4 v7, 0x0
.line 916
.local v7, "container":Landroid/view/ViewGroup;
iget v0, p1, Landroid/support/v4/app/Fragment;->mContainerId:I
if-eqz v0, :cond_11
.line 917
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-interface {v0, v1}, Landroid/support/v4/app/FragmentContainer;->findViewById(I)Landroid/view/View;
move-result-object v7
.end local v7 # "container":Landroid/view/ViewGroup;
check-cast v7, Landroid/view/ViewGroup;
.line 918
.restart local v7 # "container":Landroid/view/ViewGroup;
if-nez v7, :cond_11
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRestored:Z
if-nez v0, :cond_11
.line 919
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v0}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V
.line 926
:cond_11
iput-object v7, p1, Landroid/support/v4/app/Fragment;->mContainer:Landroid/view/ViewGroup;
.line 927
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 929
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View;
if-eqz v0, :cond_1c
.line 930
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 931
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;
.line 932
if-eqz v7, :cond_13
.line 933
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 935
.local v6, "anim":Landroid/view/animation/Animation;
if-eqz v6, :cond_12
.line 936
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 938
:cond_12
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 940
.end local v6 # "anim":Landroid/view/animation/Animation;
:cond_13
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mHidden:Z
if-eqz v0, :cond_14
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 941
:cond_14
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 947
.end local v7 # "container":Landroid/view/ViewGroup;
:cond_15
:goto_4
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 948
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View;
if-eqz v0, :cond_16
.line 949
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 951
:cond_16
const/4 v0, 0x0
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle;
.line 955
:cond_17
:pswitch_2
const/4 v0, 0x3
if-le p2, v0, :cond_19
.line 956
sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z
if-eqz v0, :cond_18
const-string v0, "FragmentManager"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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 957
:cond_18
invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performStart()V
.line 960
:cond_19
:pswitch_3
const/4 v0, 0x4
if-le p2, v0, :cond_6
.line 961
sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z
if-eqz v0, :cond_1a
const-string v0, "FragmentManager"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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 962
:cond_1a
const/4 v0, 0x1
iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mResumed:Z
.line 963
invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performResume()V
.line 964
const/4 v0, 0x0
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle;
.line 965
const/4 v0, 0x0
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedViewState:Landroid/util/SparseArray;
goto/16 :goto_1
.line 908
:cond_1b
const/4 v0, 0x0
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mInnerView:Landroid/view/View;
goto/16 :goto_3
.line 943
.restart local v7 # "container":Landroid/view/ViewGroup;
:cond_1c
const/4 v0, 0x0
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mInnerView:Landroid/view/View;
goto :goto_4
.line 968
.end local v7 # "container":Landroid/view/ViewGroup;
:cond_1d
iget v0, p1, Landroid/support/v4/app/Fragment;->mState:I
if-le v0, p2, :cond_6
.line 969
iget v0, p1, Landroid/support/v4/app/Fragment;->mState:I
packed-switch v0, :pswitch_data_1
goto/16 :goto_1
.line 1032
:cond_1e
:goto_5
:pswitch_4
const/4 v0, 0x1
if-ge p2, v0, :cond_6
.line 1033
iget-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mDestroyed:Z
if-eqz v0, :cond_1f
.line 1034
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View;
if-eqz v0, :cond_1f
.line 1041
iget-object v9, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View;
.line 1042
.local v9, "v":Landroid/view/View;
const/4 v0, 0x0
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View;
.line 1043
invoke-virtual {v9}, Landroid/view/View;->clearAnimation()V
.line 1046
.end local v9 # "v":Landroid/view/View;
:cond_1f
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mAnimatingAway:Landroid/view/View;
if-eqz v0, :cond_2b
.line 1051
iput p2, p1, Landroid/support/v4/app/Fragment;->mStateAfterAnimating:I
.line 1052
const/4 p2, 0x1
goto/16 :goto_1
.line 971
:pswitch_5
const/4 v0, 0x5
if-ge p2, v0, :cond_21
.line 972
sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z
if-eqz v0, :cond_20
const-string v0, "FragmentManager"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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 973
:cond_20
invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performPause()V
.line 974
const/4 v0, 0x0
iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mResumed:Z
.line 977
:cond_21
:pswitch_6
const/4 v0, 0x4
if-ge p2, v0, :cond_23
.line 978
sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z
if-eqz v0, :cond_22
const-string v0, "FragmentManager"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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 979
:cond_22
invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performStop()V
.line 982
:cond_23
:pswitch_7
const/4 v0, 0x3
if-ge p2, v0, :cond_25
.line 983
sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z
if-eqz v0, :cond_24
const-string v0, "FragmentManager"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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 984
:cond_24
invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performReallyStop()V
.line 987
:cond_25
:pswitch_8
const/4 v0, 0x2
if-ge p2, v0, :cond_1e
.line 988
sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z
if-eqz v0, :cond_26
const-string v0, "FragmentManager"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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 989
:cond_26
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View;
if-eqz v0, :cond_27
.line 992
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
invoke-virtual {v0}, Landroid/support/v4/app/FragmentActivity;->isFinishing()Z
move-result v0
if-nez v0, :cond_27
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mSavedViewState:Landroid/util/SparseArray;
if-nez v0, :cond_27
.line 993
invoke-virtual {p0, p1}, Landroid/support/v4/app/FragmentManagerImpl;->saveFragmentViewState(Landroid/support/v4/app/Fragment;)V
.line 996
:cond_27
invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performDestroyView()V
.line 997
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View;
if-eqz v0, :cond_2a
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mContainer:Landroid/view/ViewGroup;
if-eqz v0, :cond_2a
.line 998
const/4 v6, 0x0
.line 999
.restart local v6 # "anim":Landroid/view/animation/Animation;
iget v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mCurState:I
if-lez v0, :cond_28
iget-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mDestroyed:Z
if-nez v0, :cond_28
.line 1000
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 1003
:cond_28
if-eqz v6, :cond_29
.line 1004
move-object v8, p1
.line 1005
.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 1006
iput p2, p1, Landroid/support/v4/app/Fragment;->mStateAfterAnimating:I
.line 1007
new-instance v0, Landroid/support/v4/app/FragmentManagerImpl$5;
invoke-direct {v0, p0, v8}, Landroid/support/v4/app/FragmentManagerImpl$5;-><init>(Landroid/support/v4/app/FragmentManagerImpl;Landroid/support/v4/app/Fragment;)V
invoke-virtual {v6, v0}, Landroid/view/animation/Animation;->setAnimationListener(Landroid/view/animation/Animation$AnimationListener;)V
.line 1023
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 1025
.end local v8 # "fragment":Landroid/support/v4/app/Fragment;
:cond_29
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 1027
.end local v6 # "anim":Landroid/view/animation/Animation;
:cond_2a
const/4 v0, 0x0
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mContainer:Landroid/view/ViewGroup;
.line 1028
const/4 v0, 0x0
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View;
.line 1029
const/4 v0, 0x0
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mInnerView:Landroid/view/View;
goto/16 :goto_5
.line 1054
:cond_2b
sget-boolean v0, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z
if-eqz v0, :cond_2c
const-string v0, "FragmentManager"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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 1055
:cond_2c
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRetaining:Z
if-nez v0, :cond_2d
.line 1056
invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->performDestroy()V
.line 1059
:cond_2d
const/4 v0, 0x0
iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mCalled:Z
.line 1060
invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->onDetach()V
.line 1061
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mCalled:Z
if-nez v0, :cond_2e
.line 1062
new-instance v0, Landroid/support/v4/app/SuperNotCalledException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
throw v0
.line 1065
:cond_2e
if-nez p5, :cond_6
.line 1066
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRetaining:Z
if-nez v0, :cond_2f
.line 1067
invoke-virtual {p0, p1}, Landroid/support/v4/app/FragmentManagerImpl;->makeInactive(Landroid/support/v4/app/Fragment;)V
goto/16 :goto_1
.line 1069
:cond_2f
const/4 v0, 0x0
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mActivity:Landroid/support/v4/app/FragmentActivity;
.line 1070
const/4 v0, 0x0
iput-object v0, p1, Landroid/support/v4/app/Fragment;->mFragmentManager:Landroid/support/v4/app/FragmentManagerImpl;
goto/16 :goto_1
.line 857
nop
:pswitch_data_0
.packed-switch 0x0
:pswitch_0
:pswitch_1
:pswitch_2
:pswitch_2
:pswitch_3
.end packed-switch
.line 969
: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 1867
const/4 v0, 0x0
iput-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z
.line 1868
return-void
.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 816
iget-boolean v0, p1, Landroid/support/v4/app/Fragment;->mDeferStart:Z
if-eqz v0, :cond_0
.line 817
iget-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mExecutingActions:Z
if-eqz v0, :cond_1
.line 819
const/4 v0, 0x1
iput-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mHavePendingDeferredStart:Z
.line 825
:cond_0
:goto_0
return-void
.line 822
:cond_1
iput-boolean v3, p1, Landroid/support/v4/app/Fragment;->mDeferStart:Z
.line 823
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 477
new-instance v0, Landroid/support/v4/app/FragmentManagerImpl$2;
invoke-direct {v0, p0}, Landroid/support/v4/app/FragmentManagerImpl$2;-><init>(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 482
return-void
.end method
.method public popBackStack(II)V
.locals 3
.param p1, "id" # I
.param p2, "flags" # I
.prologue
.line 509
if-gez p1, :cond_0
.line 510
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
throw v0
.line 512
:cond_0
new-instance v0, Landroid/support/v4/app/FragmentManagerImpl$4;
invoke-direct {v0, p0, p1, p2}, Landroid/support/v4/app/FragmentManagerImpl$4;-><init>(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 517
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 493
new-instance v0, Landroid/support/v4/app/FragmentManagerImpl$3;
invoke-direct {v0, p0, p1, p2}, Landroid/support/v4/app/FragmentManagerImpl$3;-><init>(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 498
return-void
.end method
.method public popBackStackImmediate()Z
.locals 4
.prologue
.line 486
invoke-direct {p0}, Landroid/support/v4/app/FragmentManagerImpl;->checkStateLoss()V
.line 487
invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->executePendingTransactions()Z
.line 488
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
iget-object v0, v0, Landroid/support/v4/app/FragmentActivity;->mHandler:Landroid/os/Handler;
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 521
invoke-direct {p0}, Landroid/support/v4/app/FragmentManagerImpl;->checkStateLoss()V
.line 522
invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->executePendingTransactions()Z
.line 523
if-gez p1, :cond_0
.line 524
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
throw v0
.line 526
:cond_0
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
iget-object v0, v0, Landroid/support/v4/app/FragmentActivity;->mHandler:Landroid/os/Handler;
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 502
invoke-direct {p0}, Landroid/support/v4/app/FragmentManagerImpl;->checkStateLoss()V
.line 503
invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->executePendingTransactions()Z
.line 504
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
iget-object v0, v0, Landroid/support/v4/app/FragmentActivity;->mHandler:Landroid/os/Handler;
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 11
.param p1, "handler" # Landroid/os/Handler;
.param p2, "name" # Ljava/lang/String;
.param p3, "id" # I
.param p4, "flags" # I
.prologue
const/4 v8, 0x1
const/4 v9, 0x0
.line 1500
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList;
if-nez v6, :cond_1
.line 1559
:cond_0
:goto_0
return v9
.line 1503
:cond_1
if-nez p2, :cond_2
if-gez p3, :cond_2
and-int/lit8 v6, p4, 0x1
if-nez v6, :cond_2
.line 1504
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList;
invoke-virtual {v6}, Ljava/util/ArrayList;->size()I
move-result v6
add-int/lit8 v4, v6, -0x1
.line 1505
.local v4, "last":I
if-ltz v4, :cond_0
.line 1508
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList;
invoke-virtual {v6, v4}, Ljava/util/ArrayList;->remove(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/support/v4/app/BackStackRecord;
.line 1509
.local v1, "bss":Landroid/support/v4/app/BackStackRecord;
invoke-virtual {v1, v8}, Landroid/support/v4/app/BackStackRecord;->popFromBackStack(Z)V
.line 1510
invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->reportBackStackChanged()V
.end local v1 # "bss":Landroid/support/v4/app/BackStackRecord;
.end local v4 # "last":I
:goto_1
move v9, v8
.line 1559
goto :goto_0
.line 1512
:cond_2
const/4 v3, -0x1
.line 1513
.local v3, "index":I
if-nez p2, :cond_3
if-ltz p3, :cond_9
.line 1516
:cond_3
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList;
invoke-virtual {v6}, Ljava/util/ArrayList;->size()I
move-result v6
add-int/lit8 v3, v6, -0x1
.line 1517
:goto_2
if-ltz v3, :cond_4
.line 1518
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 1519
.restart local v1 # "bss":Landroid/support/v4/app/BackStackRecord;
if-eqz p2, :cond_7
invoke-virtual {v1}, Landroid/support/v4/app/BackStackRecord;->getName()Ljava/lang/String;
move-result-object v6
invoke-virtual {p2, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v6
if-eqz v6, :cond_7
.line 1527
.end local v1 # "bss":Landroid/support/v4/app/BackStackRecord;
:cond_4
if-ltz v3, :cond_0
.line 1530
and-int/lit8 v6, p4, 0x1
if-eqz v6, :cond_9
.line 1531
add-int/lit8 v3, v3, -0x1
.line 1533
:goto_3
if-ltz v3, :cond_9
.line 1534
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 1535
.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 v6
invoke-virtual {p2, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v6
if-nez v6, :cond_6
:cond_5
if-ltz p3, :cond_9
iget v6, v1, Landroid/support/v4/app/BackStackRecord;->mIndex:I
if-ne p3, v6, :cond_9
.line 1537
:cond_6
add-int/lit8 v3, v3, -0x1
.line 1538
goto :goto_3
.line 1522
:cond_7
if-ltz p3, :cond_8
iget v6, v1, Landroid/support/v4/app/BackStackRecord;->mIndex:I
if-eq p3, v6, :cond_4
.line 1525
:cond_8
add-int/lit8 v3, v3, -0x1
.line 1526
goto :goto_2
.line 1544
.end local v1 # "bss":Landroid/support/v4/app/BackStackRecord;
:cond_9
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList;
invoke-virtual {v6}, Ljava/util/ArrayList;->size()I
move-result v6
add-int/lit8 v6, v6, -0x1
if-eq v3, v6, :cond_0
.line 1547
new-instance v5, Ljava/util/ArrayList;
invoke-direct {v5}, Ljava/util/ArrayList;-><init>()V
.line 1549
.local v5, "states":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroid/support/v4/app/BackStackRecord;>;"
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList;
invoke-virtual {v6}, Ljava/util/ArrayList;->size()I
move-result v6
add-int/lit8 v2, v6, -0x1
.local v2, "i":I
:goto_4
if-le v2, v3, :cond_a
.line 1550
iget-object v6, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList;
invoke-virtual {v6, v2}, Ljava/util/ArrayList;->remove(I)Ljava/lang/Object;
move-result-object v6
invoke-virtual {v5, v6}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 1549
add-int/lit8 v2, v2, -0x1
goto :goto_4
.line 1552
:cond_a
invoke-virtual {v5}, Ljava/util/ArrayList;->size()I
move-result v6
add-int/lit8 v0, v6, -0x1
.line 1553
.local v0, "LAST":I
const/4 v2, 0x0
:goto_5
if-gt v2, v0, :cond_d
.line 1554
sget-boolean v6, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z
if-eqz v6, :cond_b
const-string v6, "FragmentManager"
new-instance v7, Ljava/lang/StringBuilder;
invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
const-string v10, "Popping back stack state: "
invoke-virtual {v7, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v7
invoke-virtual {v5, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v10
invoke-virtual {v7, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v7
invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v7
invoke-static {v6, v7}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 1555
:cond_b
invoke-virtual {v5, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v6
check-cast v6, Landroid/support/v4/app/BackStackRecord;
if-ne v2, v0, :cond_c
move v7, v8
:goto_6
invoke-virtual {v6, v7}, Landroid/support/v4/app/BackStackRecord;->popFromBackStack(Z)V
.line 1553
add-int/lit8 v2, v2, 0x1
goto :goto_5
:cond_c
move v7, v9
.line 1555
goto :goto_6
.line 1557
:cond_d
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 556
iget v0, p3, Landroid/support/v4/app/Fragment;->mIndex:I
if-gez v0, :cond_0
.line 557
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v0}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V
.line 560
: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 561
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 1190
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;-><init>()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 1191
:cond_0
invoke-virtual {p1}, Landroid/support/v4/app/Fragment;->isInBackStack()Z
move-result v1
if-nez v1, :cond_5
move v6, v0
.line 1192
.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 1193
:cond_1
iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
if-eqz v1, :cond_2
.line 1194
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 1196
: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 1197
iput-boolean v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z
.line 1199
:cond_3
iput-boolean v5, p1, Landroid/support/v4/app/Fragment;->mAdded:Z
.line 1200
iput-boolean v0, p1, Landroid/support/v4/app/Fragment;->mRemoving:Z
.line 1201
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 1204
:cond_4
return-void
.end local v6 # "inactive":Z
:cond_5
move v6, v5
.line 1191
goto :goto_0
.restart local v6 # "inactive":Z
:cond_6
move v2, v0
.line 1201
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 549
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackChangeListeners:Ljava/util/ArrayList;
if-eqz v0, :cond_0
.line 550
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 552
:cond_0
return-void
.end method
.method reportBackStackChanged()V
.locals 2
.prologue
.line 1484
iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackChangeListeners:Ljava/util/ArrayList;
if-eqz v1, :cond_0
.line 1485
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 1486
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 1485
add-int/lit8 v0, v0, 0x1
goto :goto_0
.line 1489
.end local v0 # "i":I
:cond_0
return-void
.end method
.method restoreAllState(Landroid/os/Parcelable;Ljava/util/ArrayList;)V
.locals 12
.param p1, "state" # Landroid/os/Parcelable;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/os/Parcelable;",
"Ljava/util/ArrayList",
"<",
"Landroid/support/v4/app/Fragment;",
">;)V"
}
.end annotation
.prologue
.local p2, "nonConfig":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroid/support/v4/app/Fragment;>;"
const/4 v11, 0x0
const/4 v10, 0x0
.line 1749
if-nez p1, :cond_1
.line 1856
:cond_0
:goto_0
return-void
:cond_1
move-object v2, p1
.line 1750
check-cast v2, Landroid/support/v4/app/FragmentManagerState;
.line 1751
.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 1755
if-eqz p2, :cond_4
.line 1756
const/4 v4, 0x0
.local v4, "i":I
:goto_1
invoke-virtual {p2}, Ljava/util/ArrayList;->size()I
move-result v7
if-ge v4, v7, :cond_4
.line 1757
invoke-virtual {p2, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/support/v4/app/Fragment;
.line 1758
.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;-><init>()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 1759
: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 1760
.local v3, "fs":Landroid/support/v4/app/FragmentState;
iput-object v1, v3, Landroid/support/v4/app/FragmentState;->mInstance:Landroid/support/v4/app/Fragment;
.line 1761
iput-object v10, v1, Landroid/support/v4/app/Fragment;->mSavedViewState:Landroid/util/SparseArray;
.line 1762
iput v11, v1, Landroid/support/v4/app/Fragment;->mBackStackNesting:I
.line 1763
iput-boolean v11, v1, Landroid/support/v4/app/Fragment;->mInLayout:Z
.line 1764
iput-boolean v11, v1, Landroid/support/v4/app/Fragment;->mAdded:Z
.line 1765
iput-object v10, v1, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment;
.line 1766
iget-object v7, v3, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle;
if-eqz v7, :cond_3
.line 1767
iget-object v7, v3, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle;
iget-object v8, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
invoke-virtual {v8}, Landroid/support/v4/app/FragmentActivity;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v8
invoke-virtual {v7, v8}, Landroid/os/Bundle;->setClassLoader(Ljava/lang/ClassLoader;)V
.line 1768
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 1756
:cond_3
add-int/lit8 v4, v4, 0x1
goto :goto_1
.line 1776
.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;-><init>(I)V
iput-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList;
.line 1777
iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList;
if-eqz v7, :cond_5
.line 1778
iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList;
invoke-virtual {v7}, Ljava/util/ArrayList;->clear()V
.line 1780
: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 1781
iget-object v7, v2, Landroid/support/v4/app/FragmentManagerState;->mActive:[Landroid/support/v4/app/FragmentState;
aget-object v3, v7, v4
.line 1782
.restart local v3 # "fs":Landroid/support/v4/app/FragmentState;
if-eqz v3, :cond_7
.line 1783
iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
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/FragmentActivity;Landroid/support/v4/app/Fragment;)Landroid/support/v4/app/Fragment;
move-result-object v1
.line 1784
.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;-><init>()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 1785
: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 1789
iput-object v10, v3, Landroid/support/v4/app/FragmentState;->mInstance:Landroid/support/v4/app/Fragment;
.line 1780
.end local v1 # "f":Landroid/support/v4/app/Fragment;
:goto_3
add-int/lit8 v4, v4, 0x1
goto :goto_2
.line 1791
: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 1792
iget-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList;
if-nez v7, :cond_8
.line 1793
new-instance v7, Ljava/util/ArrayList;
invoke-direct {v7}, Ljava/util/ArrayList;-><init>()V
iput-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailIndices:Ljava/util/ArrayList;
.line 1795
: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;-><init>()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 1796
: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 1801
.end local v3 # "fs":Landroid/support/v4/app/FragmentState;
:cond_a
if-eqz p2, :cond_d
.line 1802
const/4 v4, 0x0
:goto_4
invoke-virtual {p2}, Ljava/util/ArrayList;->size()I
move-result v7
if-ge v4, v7, :cond_d
.line 1803
invoke-virtual {p2, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/support/v4/app/Fragment;
.line 1804
.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 1805
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 1806
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 1802
:cond_b
:goto_5
add-int/lit8 v4, v4, 0x1
goto :goto_4
.line 1808
:cond_c
const-string v7, "FragmentManager"
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()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 1810
iput-object v10, v1, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment;
goto :goto_5
.line 1817
.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 1818
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;-><init>(I)V
iput-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAdded:Ljava/util/ArrayList;
.line 1819
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 1820
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 1821
.restart local v1 # "f":Landroid/support/v4/app/Fragment;
if-nez v1, :cond_e
.line 1822
new-instance v7, Ljava/lang/IllegalStateException;
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v7}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V
.line 1825
:cond_e
const/4 v7, 0x1
iput-boolean v7, v1, Landroid/support/v4/app/Fragment;->mAdded:Z
.line 1826
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;-><init>()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 1827
: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 1828
new-instance v7, Ljava/lang/IllegalStateException;
const-string v8, "Already added!"
invoke-direct {v7, v8}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v7
.line 1830
: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 1819
add-int/lit8 v4, v4, 0x1
goto :goto_6
.line 1833
.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 1837
:cond_12
iget-object v7, v2, Landroid/support/v4/app/FragmentManagerState;->mBackStack:[Landroid/support/v4/app/BackStackState;
if-eqz v7, :cond_15
.line 1838
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;-><init>(I)V
iput-object v7, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList;
.line 1839
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 1840
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 1841
.local v0, "bse":Landroid/support/v4/app/BackStackRecord;
sget-boolean v7, Landroid/support/v4/app/FragmentManagerImpl;->DEBUG:Z
if-eqz v7, :cond_13
.line 1842
const-string v7, "FragmentManager"
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()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 1844
new-instance v5, Landroid/support/v4/util/LogWriter;
const-string v7, "FragmentManager"
invoke-direct {v5, v7}, Landroid/support/v4/util/LogWriter;-><init>(Ljava/lang/String;)V
.line 1845
.local v5, "logw":Landroid/support/v4/util/LogWriter;
new-instance v6, Ljava/io/PrintWriter;
invoke-direct {v6, v5}, Ljava/io/PrintWriter;-><init>(Ljava/io/Writer;)V
.line 1846
.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 1848
.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 1849
iget v7, v0, Landroid/support/v4/app/BackStackRecord;->mIndex:I
if-ltz v7, :cond_14
.line 1850
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 1839
:cond_14
add-int/lit8 v4, v4, 0x1
goto :goto_7
.line 1854
.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 1563
const/4 v1, 0x0
.line 1564
.local v1, "fragments":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroid/support/v4/app/Fragment;>;"
iget-object v3, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList;
if-eqz v3, :cond_3
.line 1565
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 1566
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 1567
.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 1568
if-nez v1, :cond_0
.line 1569
new-instance v1, Ljava/util/ArrayList;
.end local v1 # "fragments":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroid/support/v4/app/Fragment;>;"
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
.line 1571
.restart local v1 # "fragments":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroid/support/v4/app/Fragment;>;"
:cond_0
invoke-virtual {v1, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 1572
const/4 v3, 0x1
iput-boolean v3, v0, Landroid/support/v4/app/Fragment;->mRetaining:Z
.line 1573
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 1574
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;-><init>()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 1565
:cond_1
add-int/lit8 v2, v2, 0x1
goto :goto_0
.line 1573
:cond_2
const/4 v3, -0x1
goto :goto_1
.line 1578
.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 1633
invoke-virtual {p0}, Landroid/support/v4/app/FragmentManagerImpl;->execPendingActions()Z
.line 1635
sget-boolean v9, Landroid/support/v4/app/FragmentManagerImpl;->HONEYCOMB:Z
if-eqz v9, :cond_0
.line 1645
const/4 v9, 0x1
iput-boolean v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateSaved:Z
.line 1648
: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 1743
:cond_1
:goto_0
return-object v5
.line 1653
: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 1654
.local v0, "N":I
new-array v1, v0, [Landroid/support/v4/app/FragmentState;
.line 1655
.local v1, "active":[Landroid/support/v4/app/FragmentState;
const/4 v7, 0x0
.line 1656
.local v7, "haveFragments":Z
const/4 v8, 0x0
.local v8, "i":I
:goto_1
if-ge v8, v0, :cond_9
.line 1657
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 1658
.local v4, "f":Landroid/support/v4/app/Fragment;
if-eqz v4, :cond_7
.line 1659
iget v9, v4, Landroid/support/v4/app/Fragment;->mIndex:I
if-gez v9, :cond_3
.line 1660
new-instance v9, Ljava/lang/IllegalStateException;
new-instance v10, Ljava/lang/StringBuilder;
invoke-direct {v10}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v9}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V
.line 1665
:cond_3
const/4 v7, 0x1
.line 1667
new-instance v6, Landroid/support/v4/app/FragmentState;
invoke-direct {v6, v4}, Landroid/support/v4/app/FragmentState;-><init>(Landroid/support/v4/app/Fragment;)V
.line 1668
.local v6, "fs":Landroid/support/v4/app/FragmentState;
aput-object v6, v1, v8
.line 1670
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 1671
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 1673
iget-object v9, v4, Landroid/support/v4/app/Fragment;->mTarget:Landroid/support/v4/app/Fragment;
if-eqz v9, :cond_6
.line 1674
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 1675
new-instance v9, Ljava/lang/IllegalStateException;
new-instance v10, Ljava/lang/StringBuilder;
invoke-direct {v10}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v9}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V
.line 1679
:cond_4
iget-object v9, v6, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle;
if-nez v9, :cond_5
.line 1680
new-instance v9, Landroid/os/Bundle;
invoke-direct {v9}, Landroid/os/Bundle;-><init>()V
iput-object v9, v6, Landroid/support/v4/app/FragmentState;->mSavedFragmentState:Landroid/os/Bundle;
.line 1682
: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 1684
iget v9, v4, Landroid/support/v4/app/Fragment;->mTargetRequestCode:I
if-eqz v9, :cond_6
.line 1685
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 1695
: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;-><init>()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 1656
.end local v6 # "fs":Landroid/support/v4/app/FragmentState;
:cond_7
add-int/lit8 v8, v8, 0x1
goto/16 :goto_1
.line 1692
.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 1700
.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 1701
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 1705
:cond_a
const/4 v2, 0x0
.line 1706
.local v2, "added":[I
const/4 v3, 0x0
.line 1709
.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 1710
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 1711
if-lez v0, :cond_d
.line 1712
new-array v2, v0, [I
.line 1713
const/4 v8, 0x0
:goto_3
if-ge v8, v0, :cond_d
.line 1714
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 1715
aget v9, v2, v8
if-gez v9, :cond_b
.line 1716
new-instance v9, Ljava/lang/IllegalStateException;
new-instance v10, Ljava/lang/StringBuilder;
invoke-direct {v10}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v9}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V
.line 1720
: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;-><init>()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 1713
:cond_c
add-int/lit8 v8, v8, 0x1
goto :goto_3
.line 1727
:cond_d
iget-object v9, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStack:Ljava/util/ArrayList;
if-eqz v9, :cond_f
.line 1728
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 1729
if-lez v0, :cond_f
.line 1730
new-array v3, v0, [Landroid/support/v4/app/BackStackState;
.line 1731
const/4 v8, 0x0
:goto_4
if-ge v8, v0, :cond_f
.line 1732
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, p0, v9}, Landroid/support/v4/app/BackStackState;-><init>(Landroid/support/v4/app/FragmentManagerImpl;Landroid/support/v4/app/BackStackRecord;)V
aput-object v10, v3, v8
.line 1733
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;-><init>()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 1731
:cond_e
add-int/lit8 v8, v8, 0x1
goto :goto_4
.line 1739
:cond_f
new-instance v5, Landroid/support/v4/app/FragmentManagerState;
invoke-direct {v5}, Landroid/support/v4/app/FragmentManagerState;-><init>()V
.line 1740
.local v5, "fms":Landroid/support/v4/app/FragmentManagerState;
iput-object v1, v5, Landroid/support/v4/app/FragmentManagerState;->mActive:[Landroid/support/v4/app/FragmentState;
.line 1741
iput-object v2, v5, Landroid/support/v4/app/FragmentManagerState;->mAdded:[I
.line 1742
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 1598
const/4 v0, 0x0
.line 1600
.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 1601
new-instance v1, Landroid/os/Bundle;
invoke-direct {v1}, Landroid/os/Bundle;-><init>()V
iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateBundle:Landroid/os/Bundle;
.line 1603
: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 1604
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 1605
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateBundle:Landroid/os/Bundle;
.line 1606
const/4 v1, 0x0
iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateBundle:Landroid/os/Bundle;
.line 1609
:cond_1
iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View;
if-eqz v1, :cond_2
.line 1610
invoke-virtual {p0, p1}, Landroid/support/v4/app/FragmentManagerImpl;->saveFragmentViewState(Landroid/support/v4/app/Fragment;)V
.line 1612
:cond_2
iget-object v1, p1, Landroid/support/v4/app/Fragment;->mSavedViewState:Landroid/util/SparseArray;
if-eqz v1, :cond_4
.line 1613
if-nez v0, :cond_3
.line 1614
new-instance v0, Landroid/os/Bundle;
.end local v0 # "result":Landroid/os/Bundle;
invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
.line 1616
.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 1619
:cond_4
iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mUserVisibleHint:Z
if-nez v1, :cond_6
.line 1620
if-nez v0, :cond_5
.line 1621
new-instance v0, Landroid/os/Bundle;
.end local v0 # "result":Landroid/os/Bundle;
invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
.line 1624
.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 1627
: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 588
iget v2, p1, Landroid/support/v4/app/Fragment;->mIndex:I
if-gez v2, :cond_0
.line 589
new-instance v2, Ljava/lang/IllegalStateException;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()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;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v2}, Landroid/support/v4/app/FragmentManagerImpl;->throwException(Ljava/lang/RuntimeException;)V
.line 592
:cond_0
iget v2, p1, Landroid/support/v4/app/Fragment;->mState:I
if-lez v2, :cond_1
.line 593
invoke-virtual {p0, p1}, Landroid/support/v4/app/FragmentManagerImpl;->saveFragmentBasicState(Landroid/support/v4/app/Fragment;)Landroid/os/Bundle;
move-result-object v0
.line 594
.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;-><init>(Landroid/os/Bundle;)V
.line 596
.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 1582
iget-object v0, p1, Landroid/support/v4/app/Fragment;->mInnerView:Landroid/view/View;
if-nez v0, :cond_1
.line 1595
:cond_0
:goto_0
return-void
.line 1585
:cond_1
iget-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateArray:Landroid/util/SparseArray;
if-nez v0, :cond_2
.line 1586
new-instance v0, Landroid/util/SparseArray;
invoke-direct {v0}, Landroid/util/SparseArray;-><init>()V
iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateArray:Landroid/util/SparseArray;
.line 1590
: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 1591
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 1592
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 1593
const/4 v0, 0x0
iput-object v0, p0, Landroid/support/v4/app/FragmentManagerImpl;->mStateArray:Landroid/util/SparseArray;
goto :goto_0
.line 1588
: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 1392
monitor-enter p0
.line 1393
:try_start_0
iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList;
if-nez v1, :cond_0
.line 1394
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mBackStackIndices:Ljava/util/ArrayList;
.line 1396
: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 1397
.local v0, "N":I
if-ge p1, v0, :cond_2
.line 1398
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;-><init>()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 1399
: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 1413
:goto_0
monitor-exit p0
.line 1414
return-void
.line 1401
:cond_2
:goto_1
if-ge v0, p1, :cond_5
.line 1402
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 1403
iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList;
if-nez v1, :cond_3
.line 1404
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
iput-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mAvailBackStackIndices:Ljava/util/ArrayList;
.line 1406
: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;-><init>()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 1407
: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 1408
add-int/lit8 v0, v0, 0x1
goto :goto_1
.line 1410
: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;-><init>()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 1411
: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 1413
.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 1226
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;-><init>()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 1227
:cond_0
iget-boolean v1, p1, Landroid/support/v4/app/Fragment;->mHidden:Z
if-eqz v1, :cond_4
.line 1228
iput-boolean v4, p1, Landroid/support/v4/app/Fragment;->mHidden:Z
.line 1229
iget-object v1, p1, Landroid/support/v4/app/Fragment;->mView:Landroid/view/View;
if-eqz v1, :cond_2
.line 1230
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 1232
.local v0, "anim":Landroid/view/animation/Animation;
if-eqz v0, :cond_1
.line 1233
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 1235
: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 1237
.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 1238
iput-boolean v5, p0, Landroid/support/v4/app/FragmentManagerImpl;->mNeedMenuInvalidate:Z
.line 1240
:cond_3
invoke-virtual {p1, v4}, Landroid/support/v4/app/Fragment;->onHiddenChanged(Z)V
.line 1242
:cond_4
return-void
.end method
.method startPendingDeferredFragments()V
.locals 3
.prologue
.line 1123
iget-object v2, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActive:Ljava/util/ArrayList;
if-nez v2, :cond_1
.line 1131
:cond_0
return-void
.line 1125
: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 1126
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 1127
.local v0, "f":Landroid/support/v4/app/Fragment;
if-eqz v0, :cond_2
.line 1128
invoke-virtual {p0, v0}, Landroid/support/v4/app/FragmentManagerImpl;->performPendingDeferredStart(Landroid/support/v4/app/Fragment;)V
.line 1125
:cond_2
add-int/lit8 v1, v1, 0x1
goto :goto_0
.end method
.method public toString()Ljava/lang/String;
.locals 2
.prologue
.line 601
new-instance v0, Ljava/lang/StringBuilder;
const/16 v1, 0x80
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(I)V
.line 602
.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 603
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 604
const-string v1, " in "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 605
iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mParent:Landroid/support/v4/app/Fragment;
if-eqz v1, :cond_0
.line 606
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 610
:goto_0
const-string v1, "}}"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 611
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
return-object v1
.line 608
:cond_0
iget-object v1, p0, Landroid/support/v4/app/FragmentManagerImpl;->mActivity:Landroid/support/v4/app/FragmentActivity;
invoke-static {v1, v0}, Landroid/support/v4/util/DebugUtils;->buildShortClassTag(Ljava/lang/Object;Ljava/lang/StringBuilder;)V
goto :goto_0
.end method