Rabbit-R1/original r1/smali/smali_classes2/androidx/fragment/app/FragmentManager.smali
2024-05-21 17:08:36 -04:00

9908 lines
270 KiB
Smali

.class public abstract Landroidx/fragment/app/FragmentManager;
.super Ljava/lang/Object;
.source "FragmentManager.java"
# interfaces
.implements Landroidx/fragment/app/FragmentResultOwner;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/fragment/app/FragmentManager$RestoreBackStackState;,
Landroidx/fragment/app/FragmentManager$OpGenerator;,
Landroidx/fragment/app/FragmentManager$SaveBackStackState;,
Landroidx/fragment/app/FragmentManager$ClearBackStackState;,
Landroidx/fragment/app/FragmentManager$PopBackStackState;,
Landroidx/fragment/app/FragmentManager$BackStackEntry;,
Landroidx/fragment/app/FragmentManager$LifecycleAwareResultListener;,
Landroidx/fragment/app/FragmentManager$OnBackStackChangedListener;,
Landroidx/fragment/app/FragmentManager$FragmentIntentSenderContract;,
Landroidx/fragment/app/FragmentManager$LaunchedFragmentInfo;,
Landroidx/fragment/app/FragmentManager$FragmentLifecycleCallbacks;
}
.end annotation
# static fields
.field private static DEBUG:Z = false
.field private static final EXTRA_CREATED_FILLIN_INTENT:Ljava/lang/String; = "androidx.fragment.extra.ACTIVITY_OPTIONS_BUNDLE"
.field private static final FRAGMENT_KEY_PREFIX:Ljava/lang/String; = "fragment_"
.field private static final FRAGMENT_MANAGER_STATE_KEY:Ljava/lang/String; = "state"
.field public static final POP_BACK_STACK_INCLUSIVE:I = 0x1
.field private static final RESULT_KEY_PREFIX:Ljava/lang/String; = "result_"
.field private static final SAVED_STATE_KEY:Ljava/lang/String; = "android:support:fragments"
.field public static final TAG:Ljava/lang/String; = "FragmentManager"
# instance fields
.field mBackStack:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/BackStackRecord;",
">;"
}
.end annotation
.end field
.field private mBackStackChangeListeners:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/FragmentManager$OnBackStackChangedListener;",
">;"
}
.end annotation
.end field
.field private final mBackStackIndex:Ljava/util/concurrent/atomic/AtomicInteger;
.field private final mBackStackStates:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/String;",
"Landroidx/fragment/app/BackStackState;",
">;"
}
.end annotation
.end field
.field private mContainer:Landroidx/fragment/app/FragmentContainer;
.field private mCreatedMenus:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/Fragment;",
">;"
}
.end annotation
.end field
.field mCurState:I
.field private mDefaultSpecialEffectsControllerFactory:Landroidx/fragment/app/SpecialEffectsControllerFactory;
.field private mDestroyed:Z
.field private mExecCommit:Ljava/lang/Runnable;
.field private mExecutingActions:Z
.field private mFragmentFactory:Landroidx/fragment/app/FragmentFactory;
.field private final mFragmentStore:Landroidx/fragment/app/FragmentStore;
.field private mHavePendingDeferredStart:Z
.field private mHost:Landroidx/fragment/app/FragmentHostCallback;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/fragment/app/FragmentHostCallback<",
"*>;"
}
.end annotation
.end field
.field private mHostFragmentFactory:Landroidx/fragment/app/FragmentFactory;
.field mLaunchedFragments:Ljava/util/ArrayDeque;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayDeque<",
"Landroidx/fragment/app/FragmentManager$LaunchedFragmentInfo;",
">;"
}
.end annotation
.end field
.field private final mLayoutInflaterFactory:Landroidx/fragment/app/FragmentLayoutInflaterFactory;
.field private final mLifecycleCallbacksDispatcher:Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;
.field private final mMenuProvider:Landroidx/core/view/MenuProvider;
.field private mNeedMenuInvalidate:Z
.field private mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.field private final mOnAttachListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/CopyOnWriteArrayList<",
"Landroidx/fragment/app/FragmentOnAttachListener;",
">;"
}
.end annotation
.end field
.field private final mOnBackPressedCallback:Landroidx/activity/OnBackPressedCallback;
.field private mOnBackPressedDispatcher:Landroidx/activity/OnBackPressedDispatcher;
.field private final mOnConfigurationChangedListener:Landroidx/core/util/Consumer;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/core/util/Consumer<",
"Landroid/content/res/Configuration;",
">;"
}
.end annotation
.end field
.field private final mOnMultiWindowModeChangedListener:Landroidx/core/util/Consumer;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/core/util/Consumer<",
"Landroidx/core/app/MultiWindowModeChangedInfo;",
">;"
}
.end annotation
.end field
.field private final mOnPictureInPictureModeChangedListener:Landroidx/core/util/Consumer;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/core/util/Consumer<",
"Landroidx/core/app/PictureInPictureModeChangedInfo;",
">;"
}
.end annotation
.end field
.field private final mOnTrimMemoryListener:Landroidx/core/util/Consumer;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/core/util/Consumer<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
.field private mParent:Landroidx/fragment/app/Fragment;
.field private final mPendingActions:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/FragmentManager$OpGenerator;",
">;"
}
.end annotation
.end field
.field mPrimaryNav:Landroidx/fragment/app/Fragment;
.field private mRequestPermissions:Landroidx/activity/result/ActivityResultLauncher;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/activity/result/ActivityResultLauncher<",
"[",
"Ljava/lang/String;",
">;"
}
.end annotation
.end field
.field private final mResultListeners:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/String;",
"Landroidx/fragment/app/FragmentManager$LifecycleAwareResultListener;",
">;"
}
.end annotation
.end field
.field private final mResults:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/String;",
"Landroid/os/Bundle;",
">;"
}
.end annotation
.end field
.field private mSpecialEffectsControllerFactory:Landroidx/fragment/app/SpecialEffectsControllerFactory;
.field private mStartActivityForResult:Landroidx/activity/result/ActivityResultLauncher;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/activity/result/ActivityResultLauncher<",
"Landroid/content/Intent;",
">;"
}
.end annotation
.end field
.field private mStartIntentSenderForResult:Landroidx/activity/result/ActivityResultLauncher;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/activity/result/ActivityResultLauncher<",
"Landroidx/activity/result/IntentSenderRequest;",
">;"
}
.end annotation
.end field
.field private mStateSaved:Z
.field private mStopped:Z
.field private mStrictModePolicy:Landroidx/fragment/app/strictmode/FragmentStrictMode$Policy;
.field private mTmpAddedFragments:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/Fragment;",
">;"
}
.end annotation
.end field
.field private mTmpIsPop:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Ljava/lang/Boolean;",
">;"
}
.end annotation
.end field
.field private mTmpRecords:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/BackStackRecord;",
">;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.locals 0
return-void
.end method
.method public constructor <init>()V
.locals 2
.line 107
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 434
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 437
new-instance v0, Landroidx/fragment/app/FragmentStore;
invoke-direct {v0}, Landroidx/fragment/app/FragmentStore;-><init>()V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 440
new-instance v0, Landroidx/fragment/app/FragmentLayoutInflaterFactory;
invoke-direct {v0, p0}, Landroidx/fragment/app/FragmentLayoutInflaterFactory;-><init>(Landroidx/fragment/app/FragmentManager;)V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mLayoutInflaterFactory:Landroidx/fragment/app/FragmentLayoutInflaterFactory;
.line 443
new-instance v0, Landroidx/fragment/app/FragmentManager$1;
const/4 v1, 0x0
invoke-direct {v0, p0, v1}, Landroidx/fragment/app/FragmentManager$1;-><init>(Landroidx/fragment/app/FragmentManager;Z)V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mOnBackPressedCallback:Landroidx/activity/OnBackPressedCallback;
.line 451
new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger;
invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicInteger;-><init>()V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStackIndex:Ljava/util/concurrent/atomic/AtomicInteger;
.line 453
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
.line 454
invoke-static {v0}, Ljava/util/Collections;->synchronizedMap(Ljava/util/Map;)Ljava/util/Map;
move-result-object v0
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStackStates:Ljava/util/Map;
.line 456
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
.line 457
invoke-static {v0}, Ljava/util/Collections;->synchronizedMap(Ljava/util/Map;)Ljava/util/Map;
move-result-object v0
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mResults:Ljava/util/Map;
.line 458
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
.line 459
invoke-static {v0}, Ljava/util/Collections;->synchronizedMap(Ljava/util/Map;)Ljava/util/Map;
move-result-object v0
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mResultListeners:Ljava/util/Map;
.line 462
new-instance v0, Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;
invoke-direct {v0, p0}, Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;-><init>(Landroidx/fragment/app/FragmentManager;)V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mLifecycleCallbacksDispatcher:Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;
.line 464
new-instance v0, Ljava/util/concurrent/CopyOnWriteArrayList;
invoke-direct {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;-><init>()V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mOnAttachListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
.line 467
new-instance v0, Landroidx/fragment/app/FragmentManager$$ExternalSyntheticLambda0;
invoke-direct {v0, p0}, Landroidx/fragment/app/FragmentManager$$ExternalSyntheticLambda0;-><init>(Landroidx/fragment/app/FragmentManager;)V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mOnConfigurationChangedListener:Landroidx/core/util/Consumer;
.line 472
new-instance v0, Landroidx/fragment/app/FragmentManager$$ExternalSyntheticLambda1;
invoke-direct {v0, p0}, Landroidx/fragment/app/FragmentManager$$ExternalSyntheticLambda1;-><init>(Landroidx/fragment/app/FragmentManager;)V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mOnTrimMemoryListener:Landroidx/core/util/Consumer;
.line 477
new-instance v0, Landroidx/fragment/app/FragmentManager$$ExternalSyntheticLambda2;
invoke-direct {v0, p0}, Landroidx/fragment/app/FragmentManager$$ExternalSyntheticLambda2;-><init>(Landroidx/fragment/app/FragmentManager;)V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mOnMultiWindowModeChangedListener:Landroidx/core/util/Consumer;
.line 483
new-instance v0, Landroidx/fragment/app/FragmentManager$$ExternalSyntheticLambda3;
invoke-direct {v0, p0}, Landroidx/fragment/app/FragmentManager$$ExternalSyntheticLambda3;-><init>(Landroidx/fragment/app/FragmentManager;)V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mOnPictureInPictureModeChangedListener:Landroidx/core/util/Consumer;
.line 490
new-instance v0, Landroidx/fragment/app/FragmentManager$2;
invoke-direct {v0, p0}, Landroidx/fragment/app/FragmentManager$2;-><init>(Landroidx/fragment/app/FragmentManager;)V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mMenuProvider:Landroidx/core/view/MenuProvider;
const/4 v0, -0x1
iput v0, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
const/4 v0, 0x0
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentFactory:Landroidx/fragment/app/FragmentFactory;
.line 520
new-instance v1, Landroidx/fragment/app/FragmentManager$3;
invoke-direct {v1, p0}, Landroidx/fragment/app/FragmentManager$3;-><init>(Landroidx/fragment/app/FragmentManager;)V
iput-object v1, p0, Landroidx/fragment/app/FragmentManager;->mHostFragmentFactory:Landroidx/fragment/app/FragmentFactory;
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mSpecialEffectsControllerFactory:Landroidx/fragment/app/SpecialEffectsControllerFactory;
.line 529
new-instance v0, Landroidx/fragment/app/FragmentManager$4;
invoke-direct {v0, p0}, Landroidx/fragment/app/FragmentManager$4;-><init>(Landroidx/fragment/app/FragmentManager;)V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mDefaultSpecialEffectsControllerFactory:Landroidx/fragment/app/SpecialEffectsControllerFactory;
.line 542
new-instance v0, Ljava/util/ArrayDeque;
invoke-direct {v0}, Ljava/util/ArrayDeque;-><init>()V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mLaunchedFragments:Ljava/util/ArrayDeque;
.line 562
new-instance v0, Landroidx/fragment/app/FragmentManager$5;
invoke-direct {v0, p0}, Landroidx/fragment/app/FragmentManager$5;-><init>(Landroidx/fragment/app/FragmentManager;)V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mExecCommit:Ljava/lang/Runnable;
return-void
.end method
.method static synthetic access$000(Landroidx/fragment/app/FragmentManager;)Ljava/util/Map;
.locals 0
.line 107
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mResults:Ljava/util/Map;
return-object p0
.end method
.method static synthetic access$100(Landroidx/fragment/app/FragmentManager;)Ljava/util/Map;
.locals 0
.line 107
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mResultListeners:Ljava/util/Map;
return-object p0
.end method
.method static synthetic access$200(Landroidx/fragment/app/FragmentManager;)Landroidx/fragment/app/FragmentStore;
.locals 0
.line 107
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
return-object p0
.end method
.method private checkStateLoss()V
.locals 1
.line 1631
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->isStateSaved()Z
move-result p0
if-nez p0, :cond_0
return-void
.line 1632
:cond_0
new-instance p0, Ljava/lang/IllegalStateException;
const-string v0, "Can not perform this action after onSaveInstanceState"
invoke-direct {p0, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
.end method
.method private cleanupExec()V
.locals 1
const/4 v0, 0x0
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mExecutingActions:Z
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mTmpIsPop:Ljava/util/ArrayList;
.line 1768
invoke-virtual {v0}, Ljava/util/ArrayList;->clear()V
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mTmpRecords:Ljava/util/ArrayList;
.line 1769
invoke-virtual {p0}, Ljava/util/ArrayList;->clear()V
return-void
.end method
.method private clearBackStackStateViewModels()V
.locals 4
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 1262
instance-of v1, v0, Landroidx/lifecycle/ViewModelStoreOwner;
if-eqz v1, :cond_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1263
invoke-virtual {v0}, Landroidx/fragment/app/FragmentStore;->getNonConfig()Landroidx/fragment/app/FragmentManagerViewModel;
move-result-object v0
invoke-virtual {v0}, Landroidx/fragment/app/FragmentManagerViewModel;->isCleared()Z
move-result v0
goto :goto_0
.line 1264
:cond_0
invoke-virtual {v0}, Landroidx/fragment/app/FragmentHostCallback;->getContext()Landroid/content/Context;
move-result-object v0
instance-of v0, v0, Landroid/app/Activity;
if-eqz v0, :cond_1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 1265
invoke-virtual {v0}, Landroidx/fragment/app/FragmentHostCallback;->getContext()Landroid/content/Context;
move-result-object v0
check-cast v0, Landroid/app/Activity;
.line 1266
invoke-virtual {v0}, Landroid/app/Activity;->isChangingConfigurations()Z
move-result v0
xor-int/lit8 v0, v0, 0x1
:goto_0
if-eqz v0, :cond_3
:cond_1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStackStates:Ljava/util/Map;
.line 1271
invoke-interface {v0}, Ljava/util/Map;->values()Ljava/util/Collection;
move-result-object v0
invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
move-result-object v0
:cond_2
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_3
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/fragment/app/BackStackState;
.line 1272
iget-object v1, v1, Landroidx/fragment/app/BackStackState;->mFragments:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_1
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_2
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
iget-object v3, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1273
invoke-virtual {v3}, Landroidx/fragment/app/FragmentStore;->getNonConfig()Landroidx/fragment/app/FragmentManagerViewModel;
move-result-object v3
invoke-virtual {v3, v2}, Landroidx/fragment/app/FragmentManagerViewModel;->clearNonConfigState(Ljava/lang/String;)V
goto :goto_1
:cond_3
return-void
.end method
.method private collectAllSpecialEffectsController()Ljava/util/Set;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Set<",
"Landroidx/fragment/app/SpecialEffectsController;",
">;"
}
.end annotation
.line 2078
new-instance v0, Ljava/util/HashSet;
invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 2080
invoke-virtual {v1}, Landroidx/fragment/app/FragmentStore;->getActiveFragmentStateManagers()Ljava/util/List;
move-result-object v1
invoke-interface {v1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v1
:cond_0
:goto_0
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_1
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/fragment/app/FragmentStateManager;
.line 2081
invoke-virtual {v2}, Landroidx/fragment/app/FragmentStateManager;->getFragment()Landroidx/fragment/app/Fragment;
move-result-object v2
iget-object v2, v2, Landroidx/fragment/app/Fragment;->mContainer:Landroid/view/ViewGroup;
if-eqz v2, :cond_0
.line 2084
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->getSpecialEffectsControllerFactory()Landroidx/fragment/app/SpecialEffectsControllerFactory;
move-result-object v3
.line 2083
invoke-static {v2, v3}, Landroidx/fragment/app/SpecialEffectsController;->getOrCreateController(Landroid/view/ViewGroup;Landroidx/fragment/app/SpecialEffectsControllerFactory;)Landroidx/fragment/app/SpecialEffectsController;
move-result-object v2
invoke-interface {v0, v2}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
goto :goto_0
:cond_1
return-object v0
.end method
.method private collectChangedControllers(Ljava/util/ArrayList;II)Ljava/util/Set;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/BackStackRecord;",
">;II)",
"Ljava/util/Set<",
"Landroidx/fragment/app/SpecialEffectsController;",
">;"
}
.end annotation
.line 1974
new-instance v0, Ljava/util/HashSet;
invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
:goto_0
if-ge p2, p3, :cond_2
.line 1976
invoke-virtual {p1, p2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/fragment/app/BackStackRecord;
.line 1977
iget-object v1, v1, Landroidx/fragment/app/BackStackRecord;->mOps:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v1
:cond_0
:goto_1
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_1
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/fragment/app/FragmentTransaction$Op;
.line 1978
iget-object v2, v2, Landroidx/fragment/app/FragmentTransaction$Op;->mFragment:Landroidx/fragment/app/Fragment;
if-eqz v2, :cond_0
.line 1980
iget-object v2, v2, Landroidx/fragment/app/Fragment;->mContainer:Landroid/view/ViewGroup;
if-eqz v2, :cond_0
.line 1982
invoke-static {v2, p0}, Landroidx/fragment/app/SpecialEffectsController;->getOrCreateController(Landroid/view/ViewGroup;Landroidx/fragment/app/FragmentManager;)Landroidx/fragment/app/SpecialEffectsController;
move-result-object v2
invoke-interface {v0, v2}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
goto :goto_1
:cond_1
add-int/lit8 p2, p2, 0x1
goto :goto_0
:cond_2
return-object v0
.end method
.method private dispatchParentPrimaryNavigationFragmentChanged(Landroidx/fragment/app/Fragment;)V
.locals 1
if-eqz p1, :cond_0
.line 3214
iget-object v0, p1, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
invoke-virtual {p0, v0}, Landroidx/fragment/app/FragmentManager;->findActiveFragment(Ljava/lang/String;)Landroidx/fragment/app/Fragment;
move-result-object p0
invoke-virtual {p1, p0}, Landroidx/fragment/app/Fragment;->equals(Ljava/lang/Object;)Z
move-result p0
if-eqz p0, :cond_0
.line 3215
invoke-virtual {p1}, Landroidx/fragment/app/Fragment;->performPrimaryNavigationFragmentChanged()V
:cond_0
return-void
.end method
.method private dispatchStateChange(I)V
.locals 3
const/4 v0, 0x1
const/4 v1, 0x0
:try_start_0
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mExecutingActions:Z
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 3033
invoke-virtual {v2, p1}, Landroidx/fragment/app/FragmentStore;->dispatchStateChange(I)V
.line 3034
invoke-virtual {p0, p1, v1}, Landroidx/fragment/app/FragmentManager;->moveToState(IZ)V
.line 3035
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->collectAllSpecialEffectsController()Ljava/util/Set;
move-result-object p1
.line 3036
invoke-interface {p1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p1
:goto_0
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_0
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/fragment/app/SpecialEffectsController;
.line 3037
invoke-virtual {v2}, Landroidx/fragment/app/SpecialEffectsController;->forceCompleteAllOperations()V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
goto :goto_0
:cond_0
iput-boolean v1, p0, Landroidx/fragment/app/FragmentManager;->mExecutingActions:Z
.line 3042
invoke-virtual {p0, v0}, Landroidx/fragment/app/FragmentManager;->execPendingActions(Z)Z
return-void
:catchall_0
move-exception p1
iput-boolean v1, p0, Landroidx/fragment/app/FragmentManager;->mExecutingActions:Z
.line 3041
throw p1
.end method
.method private doPendingDeferredStart()V
.locals 1
iget-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mHavePendingDeferredStart:Z
if-eqz v0, :cond_0
const/4 v0, 0x0
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mHavePendingDeferredStart:Z
.line 2126
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->startPendingDeferredFragments()V
:cond_0
return-void
.end method
.method public static enableDebugLogging(Z)V
.locals 0
.annotation runtime Ljava/lang/Deprecated;
.end annotation
sput-boolean p0, Landroidx/fragment/app/FragmentManager;->DEBUG:Z
return-void
.end method
.method private endAnimatingAwayFragments()V
.locals 1
.line 2071
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->collectAllSpecialEffectsController()Ljava/util/Set;
move-result-object p0
.line 2072
invoke-interface {p0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p0
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_0
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/SpecialEffectsController;
.line 2073
invoke-virtual {v0}, Landroidx/fragment/app/SpecialEffectsController;->forceCompleteAllOperations()V
goto :goto_0
:cond_0
return-void
.end method
.method private ensureExecReady(Z)V
.locals 2
iget-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mExecutingActions:Z
if-nez v0, :cond_5
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
if-nez v0, :cond_1
iget-boolean p0, p0, Landroidx/fragment/app/FragmentManager;->mDestroyed:Z
if-eqz p0, :cond_0
.line 1722
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "FragmentManager has been destroyed"
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
.line 1724
:cond_0
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "FragmentManager has not been attached to a host."
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
.line 1728
:cond_1
invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
move-result-object v0
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
invoke-virtual {v1}, Landroidx/fragment/app/FragmentHostCallback;->getHandler()Landroid/os/Handler;
move-result-object v1
invoke-virtual {v1}, Landroid/os/Handler;->getLooper()Landroid/os/Looper;
move-result-object v1
if-ne v0, v1, :cond_4
if-nez p1, :cond_2
.line 1733
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->checkStateLoss()V
:cond_2
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mTmpRecords:Ljava/util/ArrayList;
if-nez p1, :cond_3
.line 1737
new-instance p1, Ljava/util/ArrayList;
invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
iput-object p1, p0, Landroidx/fragment/app/FragmentManager;->mTmpRecords:Ljava/util/ArrayList;
.line 1738
new-instance p1, Ljava/util/ArrayList;
invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
iput-object p1, p0, Landroidx/fragment/app/FragmentManager;->mTmpIsPop:Ljava/util/ArrayList;
:cond_3
return-void
.line 1729
:cond_4
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "Must be called from main thread of fragment host"
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
.line 1717
:cond_5
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "FragmentManager is already executing transactions"
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
.end method
.method private static executeOps(Ljava/util/ArrayList;Ljava/util/ArrayList;II)V
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/BackStackRecord;",
">;",
"Ljava/util/ArrayList<",
"Ljava/lang/Boolean;",
">;II)V"
}
.end annotation
:goto_0
if-ge p2, p3, :cond_1
.line 2002
invoke-virtual {p0, p2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/BackStackRecord;
.line 2003
invoke-virtual {p1, p2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/Boolean;
invoke-virtual {v1}, Ljava/lang/Boolean;->booleanValue()Z
move-result v1
if-eqz v1, :cond_0
const/4 v1, -0x1
.line 2005
invoke-virtual {v0, v1}, Landroidx/fragment/app/BackStackRecord;->bumpBackStackNesting(I)V
.line 2006
invoke-virtual {v0}, Landroidx/fragment/app/BackStackRecord;->executePopOps()V
goto :goto_1
:cond_0
const/4 v1, 0x1
.line 2008
invoke-virtual {v0, v1}, Landroidx/fragment/app/BackStackRecord;->bumpBackStackNesting(I)V
.line 2009
invoke-virtual {v0}, Landroidx/fragment/app/BackStackRecord;->executeOps()V
:goto_1
add-int/lit8 p2, p2, 0x1
goto :goto_0
:cond_1
return-void
.end method
.method private executeOpsTogether(Ljava/util/ArrayList;Ljava/util/ArrayList;II)V
.locals 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/BackStackRecord;",
">;",
"Ljava/util/ArrayList<",
"Ljava/lang/Boolean;",
">;II)V"
}
.end annotation
.line 1859
invoke-virtual {p1, p3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/BackStackRecord;
iget-boolean v0, v0, Landroidx/fragment/app/BackStackRecord;->mReorderingAllowed:Z
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mTmpAddedFragments:Ljava/util/ArrayList;
if-nez v1, :cond_0
.line 1862
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
iput-object v1, p0, Landroidx/fragment/app/FragmentManager;->mTmpAddedFragments:Ljava/util/ArrayList;
goto :goto_0
.line 1864
:cond_0
invoke-virtual {v1}, Ljava/util/ArrayList;->clear()V
:goto_0
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mTmpAddedFragments:Ljava/util/ArrayList;
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1866
invoke-virtual {v2}, Landroidx/fragment/app/FragmentStore;->getFragments()Ljava/util/List;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/util/ArrayList;->addAll(Ljava/util/Collection;)Z
.line 1867
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->getPrimaryNavigationFragment()Landroidx/fragment/app/Fragment;
move-result-object v1
const/4 v2, 0x0
move v3, p3
move v4, v2
:goto_1
const/4 v5, 0x1
if-ge v3, p4, :cond_4
.line 1869
invoke-virtual {p1, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v6
check-cast v6, Landroidx/fragment/app/BackStackRecord;
.line 1870
invoke-virtual {p2, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v7
check-cast v7, Ljava/lang/Boolean;
invoke-virtual {v7}, Ljava/lang/Boolean;->booleanValue()Z
move-result v7
if-nez v7, :cond_1
iget-object v7, p0, Landroidx/fragment/app/FragmentManager;->mTmpAddedFragments:Ljava/util/ArrayList;
.line 1872
invoke-virtual {v6, v7, v1}, Landroidx/fragment/app/BackStackRecord;->expandOps(Ljava/util/ArrayList;Landroidx/fragment/app/Fragment;)Landroidx/fragment/app/Fragment;
move-result-object v1
goto :goto_2
:cond_1
iget-object v7, p0, Landroidx/fragment/app/FragmentManager;->mTmpAddedFragments:Ljava/util/ArrayList;
.line 1874
invoke-virtual {v6, v7, v1}, Landroidx/fragment/app/BackStackRecord;->trackAddedFragmentsInPop(Ljava/util/ArrayList;Landroidx/fragment/app/Fragment;)Landroidx/fragment/app/Fragment;
move-result-object v1
:goto_2
if-nez v4, :cond_3
.line 1876
iget-boolean v4, v6, Landroidx/fragment/app/BackStackRecord;->mAddToBackStack:Z
if-eqz v4, :cond_2
goto :goto_3
:cond_2
move v4, v2
goto :goto_4
:cond_3
:goto_3
move v4, v5
:goto_4
add-int/lit8 v3, v3, 0x1
goto :goto_1
:cond_4
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mTmpAddedFragments:Ljava/util/ArrayList;
.line 1878
invoke-virtual {v1}, Ljava/util/ArrayList;->clear()V
if-nez v0, :cond_7
iget v0, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
if-lt v0, v5, :cond_7
move v0, p3
:goto_5
if-ge v0, p4, :cond_7
.line 1884
invoke-virtual {p1, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/fragment/app/BackStackRecord;
.line 1885
iget-object v1, v1, Landroidx/fragment/app/BackStackRecord;->mOps:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v1
:cond_5
:goto_6
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_6
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/fragment/app/FragmentTransaction$Op;
.line 1886
iget-object v2, v2, Landroidx/fragment/app/FragmentTransaction$Op;->mFragment:Landroidx/fragment/app/Fragment;
if-eqz v2, :cond_5
.line 1887
iget-object v3, v2, Landroidx/fragment/app/Fragment;->mFragmentManager:Landroidx/fragment/app/FragmentManager;
if-eqz v3, :cond_5
.line 1889
invoke-virtual {p0, v2}, Landroidx/fragment/app/FragmentManager;->createOrGetFragmentStateManager(Landroidx/fragment/app/Fragment;)Landroidx/fragment/app/FragmentStateManager;
move-result-object v2
iget-object v3, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1890
invoke-virtual {v3, v2}, Landroidx/fragment/app/FragmentStore;->makeActive(Landroidx/fragment/app/FragmentStateManager;)V
goto :goto_6
:cond_6
add-int/lit8 v0, v0, 0x1
goto :goto_5
.line 1895
:cond_7
invoke-static {p1, p2, p3, p4}, Landroidx/fragment/app/FragmentManager;->executeOps(Ljava/util/ArrayList;Ljava/util/ArrayList;II)V
add-int/lit8 v0, p4, -0x1
.line 1899
invoke-virtual {p2, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Boolean;
invoke-virtual {v0}, Ljava/lang/Boolean;->booleanValue()Z
move-result v0
if-eqz v4, :cond_c
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mBackStackChangeListeners:Ljava/util/ArrayList;
if-eqz v1, :cond_c
.line 1902
invoke-virtual {v1}, Ljava/util/ArrayList;->isEmpty()Z
move-result v1
if-nez v1, :cond_c
.line 1903
new-instance v1, Ljava/util/LinkedHashSet;
invoke-direct {v1}, Ljava/util/LinkedHashSet;-><init>()V
.line 1905
invoke-virtual {p1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v2
:goto_7
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_8
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/fragment/app/BackStackRecord;
.line 1906
invoke-direct {p0, v3}, Landroidx/fragment/app/FragmentManager;->fragmentsFromRecord(Landroidx/fragment/app/BackStackRecord;)Ljava/util/Set;
move-result-object v3
invoke-interface {v1, v3}, Ljava/util/Set;->addAll(Ljava/util/Collection;)Z
goto :goto_7
:cond_8
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mBackStackChangeListeners:Ljava/util/ArrayList;
.line 1909
invoke-virtual {v2}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_9
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_a
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/fragment/app/FragmentManager$OnBackStackChangedListener;
.line 1911
invoke-interface {v1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v6
:goto_8
invoke-interface {v6}, Ljava/util/Iterator;->hasNext()Z
move-result v7
if-eqz v7, :cond_9
invoke-interface {v6}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v7
check-cast v7, Landroidx/fragment/app/Fragment;
.line 1912
invoke-interface {v3, v7, v0}, Landroidx/fragment/app/FragmentManager$OnBackStackChangedListener;->onBackStackChangeStarted(Landroidx/fragment/app/Fragment;Z)V
goto :goto_8
:cond_a
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mBackStackChangeListeners:Ljava/util/ArrayList;
.line 1915
invoke-virtual {v2}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_b
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_c
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/fragment/app/FragmentManager$OnBackStackChangedListener;
.line 1917
invoke-interface {v1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v6
:goto_9
invoke-interface {v6}, Ljava/util/Iterator;->hasNext()Z
move-result v7
if-eqz v7, :cond_b
invoke-interface {v6}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v7
check-cast v7, Landroidx/fragment/app/Fragment;
.line 1918
invoke-interface {v3, v7, v0}, Landroidx/fragment/app/FragmentManager$OnBackStackChangedListener;->onBackStackChangeCommitted(Landroidx/fragment/app/Fragment;Z)V
goto :goto_9
:cond_c
move v1, p3
:goto_a
if-ge v1, p4, :cond_11
.line 1925
invoke-virtual {p1, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/fragment/app/BackStackRecord;
if-eqz v0, :cond_e
.line 1928
iget-object v3, v2, Landroidx/fragment/app/BackStackRecord;->mOps:Ljava/util/ArrayList;
invoke-virtual {v3}, Ljava/util/ArrayList;->size()I
move-result v3
sub-int/2addr v3, v5
:goto_b
if-ltz v3, :cond_10
.line 1929
iget-object v6, v2, Landroidx/fragment/app/BackStackRecord;->mOps:Ljava/util/ArrayList;
invoke-virtual {v6, v3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v6
check-cast v6, Landroidx/fragment/app/FragmentTransaction$Op;
.line 1930
iget-object v6, v6, Landroidx/fragment/app/FragmentTransaction$Op;->mFragment:Landroidx/fragment/app/Fragment;
if-eqz v6, :cond_d
.line 1933
invoke-virtual {p0, v6}, Landroidx/fragment/app/FragmentManager;->createOrGetFragmentStateManager(Landroidx/fragment/app/Fragment;)Landroidx/fragment/app/FragmentStateManager;
move-result-object v6
.line 1934
invoke-virtual {v6}, Landroidx/fragment/app/FragmentStateManager;->moveToExpectedState()V
:cond_d
add-int/lit8 v3, v3, -0x1
goto :goto_b
.line 1938
:cond_e
iget-object v2, v2, Landroidx/fragment/app/BackStackRecord;->mOps:Ljava/util/ArrayList;
invoke-virtual {v2}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_f
:goto_c
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_10
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/fragment/app/FragmentTransaction$Op;
.line 1939
iget-object v3, v3, Landroidx/fragment/app/FragmentTransaction$Op;->mFragment:Landroidx/fragment/app/Fragment;
if-eqz v3, :cond_f
.line 1942
invoke-virtual {p0, v3}, Landroidx/fragment/app/FragmentManager;->createOrGetFragmentStateManager(Landroidx/fragment/app/Fragment;)Landroidx/fragment/app/FragmentStateManager;
move-result-object v3
.line 1943
invoke-virtual {v3}, Landroidx/fragment/app/FragmentStateManager;->moveToExpectedState()V
goto :goto_c
:cond_10
add-int/lit8 v1, v1, 0x1
goto :goto_a
:cond_11
iget v1, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
.line 1950
invoke-virtual {p0, v1, v5}, Landroidx/fragment/app/FragmentManager;->moveToState(IZ)V
.line 1951
invoke-direct {p0, p1, p3, p4}, Landroidx/fragment/app/FragmentManager;->collectChangedControllers(Ljava/util/ArrayList;II)Ljava/util/Set;
move-result-object v1
.line 1953
invoke-interface {v1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_d
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_12
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/fragment/app/SpecialEffectsController;
.line 1954
invoke-virtual {v2, v0}, Landroidx/fragment/app/SpecialEffectsController;->updateOperationDirection(Z)V
.line 1955
invoke-virtual {v2}, Landroidx/fragment/app/SpecialEffectsController;->markPostponedState()V
.line 1956
invoke-virtual {v2}, Landroidx/fragment/app/SpecialEffectsController;->executePendingOperations()V
goto :goto_d
:cond_12
:goto_e
if-ge p3, p4, :cond_14
.line 1960
invoke-virtual {p1, p3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/BackStackRecord;
.line 1961
invoke-virtual {p2, p3}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/Boolean;
invoke-virtual {v1}, Ljava/lang/Boolean;->booleanValue()Z
move-result v1
if-eqz v1, :cond_13
.line 1962
iget v1, v0, Landroidx/fragment/app/BackStackRecord;->mIndex:I
if-ltz v1, :cond_13
const/4 v1, -0x1
.line 1963
iput v1, v0, Landroidx/fragment/app/BackStackRecord;->mIndex:I
.line 1965
:cond_13
invoke-virtual {v0}, Landroidx/fragment/app/BackStackRecord;->runOnCommitRunnables()V
add-int/lit8 p3, p3, 0x1
goto :goto_e
:cond_14
if-eqz v4, :cond_15
.line 1968
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->reportBackStackChanged()V
:cond_15
return-void
.end method
.method private findBackStackIndex(Ljava/lang/String;IZ)I
.locals 4
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
const/4 v1, -0x1
if-eqz v0, :cond_c
.line 2350
invoke-virtual {v0}, Ljava/util/ArrayList;->isEmpty()Z
move-result v0
if-eqz v0, :cond_0
goto/16 :goto_3
:cond_0
if-nez p1, :cond_2
if-gez p2, :cond_2
if-eqz p3, :cond_1
const/4 p0, 0x0
return p0
:cond_1
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2357
invoke-virtual {p0}, Ljava/util/ArrayList;->size()I
move-result p0
add-int/lit8 p0, p0, -0x1
return p0
:cond_2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2362
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
move-result v0
add-int/lit8 v0, v0, -0x1
:goto_0
if-ltz v0, :cond_5
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2364
invoke-virtual {v2, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/fragment/app/BackStackRecord;
if-eqz p1, :cond_3
.line 2365
invoke-virtual {v2}, Landroidx/fragment/app/BackStackRecord;->getName()Ljava/lang/String;
move-result-object v3
invoke-virtual {p1, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_3
goto :goto_1
:cond_3
if-ltz p2, :cond_4
.line 2368
iget v2, v2, Landroidx/fragment/app/BackStackRecord;->mIndex:I
if-ne p2, v2, :cond_4
goto :goto_1
:cond_4
add-int/lit8 v0, v0, -0x1
goto :goto_0
:cond_5
:goto_1
if-gez v0, :cond_6
return v0
:cond_6
if-eqz p3, :cond_9
:goto_2
if-lez v0, :cond_b
iget-object p3, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
add-int/lit8 v1, v0, -0x1
.line 2379
invoke-virtual {p3, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object p3
check-cast p3, Landroidx/fragment/app/BackStackRecord;
if-eqz p1, :cond_7
.line 2380
invoke-virtual {p3}, Landroidx/fragment/app/BackStackRecord;->getName()Ljava/lang/String;
move-result-object v1
invoke-virtual {p1, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-nez v1, :cond_8
:cond_7
if-ltz p2, :cond_b
iget p3, p3, Landroidx/fragment/app/BackStackRecord;->mIndex:I
if-ne p2, p3, :cond_b
:cond_8
add-int/lit8 v0, v0, -0x1
goto :goto_2
:cond_9
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2387
invoke-virtual {p0}, Ljava/util/ArrayList;->size()I
move-result p0
add-int/lit8 p0, p0, -0x1
if-ne v0, p0, :cond_a
return v1
:cond_a
add-int/lit8 v0, v0, 0x1
:cond_b
return v0
:cond_c
:goto_3
return v1
.end method
.method public static findFragment(Landroid/view/View;)Landroidx/fragment/app/Fragment;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"<F:",
"Landroidx/fragment/app/Fragment;",
">(",
"Landroid/view/View;",
")TF;"
}
.end annotation
.line 1077
invoke-static {p0}, Landroidx/fragment/app/FragmentManager;->findViewFragment(Landroid/view/View;)Landroidx/fragment/app/Fragment;
move-result-object v0
if-eqz v0, :cond_0
return-object v0
.line 1079
:cond_0
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "View "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p0
const-string v1, " does not have a Fragment set"
invoke-virtual {p0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {v0, p0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method static findFragmentManager(Landroid/view/View;)Landroidx/fragment/app/FragmentManager;
.locals 4
.line 1140
invoke-static {p0}, Landroidx/fragment/app/FragmentManager;->findViewFragment(Landroid/view/View;)Landroidx/fragment/app/Fragment;
move-result-object v0
if-eqz v0, :cond_1
.line 1145
invoke-virtual {v0}, Landroidx/fragment/app/Fragment;->isAdded()Z
move-result v1
if-eqz v1, :cond_0
.line 1150
invoke-virtual {v0}, Landroidx/fragment/app/Fragment;->getChildFragmentManager()Landroidx/fragment/app/FragmentManager;
move-result-object p0
goto :goto_2
.line 1146
:cond_0
new-instance v1, Ljava/lang/IllegalStateException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "The Fragment "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v0
const-string v2, " that owns View "
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p0
const-string v0, " has already been destroyed. Nested fragments should always use the child FragmentManager."
invoke-virtual {p0, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {v1, p0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v1
.line 1152
:cond_1
invoke-virtual {p0}, Landroid/view/View;->getContext()Landroid/content/Context;
move-result-object v0
.line 1154
:goto_0
instance-of v1, v0, Landroid/content/ContextWrapper;
if-eqz v1, :cond_3
.line 1155
instance-of v1, v0, Landroidx/fragment/app/FragmentActivity;
if-eqz v1, :cond_2
.line 1156
check-cast v0, Landroidx/fragment/app/FragmentActivity;
goto :goto_1
.line 1159
:cond_2
check-cast v0, Landroid/content/ContextWrapper;
invoke-virtual {v0}, Landroid/content/ContextWrapper;->getBaseContext()Landroid/content/Context;
move-result-object v0
goto :goto_0
:cond_3
const/4 v0, 0x0
:goto_1
if-eqz v0, :cond_4
.line 1162
invoke-virtual {v0}, Landroidx/fragment/app/FragmentActivity;->getSupportFragmentManager()Landroidx/fragment/app/FragmentManager;
move-result-object p0
:goto_2
return-object p0
.line 1164
:cond_4
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "View "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p0
const-string v1, " is not within a subclass of FragmentActivity."
invoke-virtual {p0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {v0, p0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method static findViewFragment(Landroid/view/View;)Landroidx/fragment/app/Fragment;
.locals 2
:goto_0
const/4 v0, 0x0
if-eqz p0, :cond_2
.line 1092
invoke-static {p0}, Landroidx/fragment/app/FragmentManager;->getViewFragment(Landroid/view/View;)Landroidx/fragment/app/Fragment;
move-result-object v1
if-eqz v1, :cond_0
return-object v1
.line 1096
:cond_0
invoke-virtual {p0}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
move-result-object p0
.line 1097
instance-of v1, p0, Landroid/view/View;
if-eqz v1, :cond_1
check-cast p0, Landroid/view/View;
goto :goto_0
:cond_1
move-object p0, v0
goto :goto_0
:cond_2
return-object v0
.end method
.method private forcePostponedTransactions()V
.locals 1
.line 2060
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->collectAllSpecialEffectsController()Ljava/util/Set;
move-result-object p0
.line 2061
invoke-interface {p0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p0
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_0
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/SpecialEffectsController;
.line 2062
invoke-virtual {v0}, Landroidx/fragment/app/SpecialEffectsController;->forcePostponedExecutePendingOperations()V
goto :goto_0
:cond_0
return-void
.end method
.method private fragmentsFromRecord(Landroidx/fragment/app/BackStackRecord;)Ljava/util/Set;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/fragment/app/BackStackRecord;",
")",
"Ljava/util/Set<",
"Landroidx/fragment/app/Fragment;",
">;"
}
.end annotation
.line 2139
new-instance p0, Ljava/util/HashSet;
invoke-direct {p0}, Ljava/util/HashSet;-><init>()V
const/4 v0, 0x0
.line 2140
:goto_0
iget-object v1, p1, Landroidx/fragment/app/BackStackRecord;->mOps:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v1
if-ge v0, v1, :cond_1
.line 2141
iget-object v1, p1, Landroidx/fragment/app/BackStackRecord;->mOps:Ljava/util/ArrayList;
invoke-virtual {v1, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/fragment/app/FragmentTransaction$Op;
iget-object v1, v1, Landroidx/fragment/app/FragmentTransaction$Op;->mFragment:Landroidx/fragment/app/Fragment;
if-eqz v1, :cond_0
.line 2142
iget-boolean v2, p1, Landroidx/fragment/app/BackStackRecord;->mAddToBackStack:Z
if-eqz v2, :cond_0
.line 2143
invoke-interface {p0, v1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
:cond_0
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_1
return-object p0
.end method
.method private generateOpsForPendingActions(Ljava/util/ArrayList;Ljava/util/ArrayList;)Z
.locals 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/BackStackRecord;",
">;",
"Ljava/util/ArrayList<",
"Ljava/lang/Boolean;",
">;)Z"
}
.end annotation
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 2103
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 2104
invoke-virtual {v1}, Ljava/util/ArrayList;->isEmpty()Z
move-result v1
const/4 v2, 0x0
if-eqz v1, :cond_0
.line 2105
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
return v2
:cond_0
:try_start_1
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 2109
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v1
move v3, v2
:goto_0
if-ge v2, v1, :cond_1
iget-object v4, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 2111
invoke-virtual {v4, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v4
check-cast v4, Landroidx/fragment/app/FragmentManager$OpGenerator;
invoke-interface {v4, p1, p2}, Landroidx/fragment/app/FragmentManager$OpGenerator;->generateOps(Ljava/util/ArrayList;Ljava/util/ArrayList;)Z
move-result v4
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
or-int/2addr v3, v4
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_1
:try_start_2
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 2116
invoke-virtual {p1}, Ljava/util/ArrayList;->clear()V
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2117
invoke-virtual {p1}, Landroidx/fragment/app/FragmentHostCallback;->getHandler()Landroid/os/Handler;
move-result-object p1
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mExecCommit:Ljava/lang/Runnable;
invoke-virtual {p1, p0}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V
.line 2119
monitor-exit v0
return v3
:catchall_0
move-exception p1
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 2116
invoke-virtual {p2}, Ljava/util/ArrayList;->clear()V
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2117
invoke-virtual {p2}, Landroidx/fragment/app/FragmentHostCallback;->getHandler()Landroid/os/Handler;
move-result-object p2
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mExecCommit:Ljava/lang/Runnable;
invoke-virtual {p2, p0}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V
.line 2118
throw p1
:catchall_1
move-exception p0
.line 2119
monitor-exit v0
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
throw p0
.end method
.method private getChildNonConfig(Landroidx/fragment/app/Fragment;)Landroidx/fragment/app/FragmentManagerViewModel;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 1196
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentManagerViewModel;->getChildNonConfig(Landroidx/fragment/app/Fragment;)Landroidx/fragment/app/FragmentManagerViewModel;
move-result-object p0
return-object p0
.end method
.method private getFragmentContainer(Landroidx/fragment/app/Fragment;)Landroid/view/ViewGroup;
.locals 2
.line 2035
iget-object v0, p1, Landroidx/fragment/app/Fragment;->mContainer:Landroid/view/ViewGroup;
if-eqz v0, :cond_0
.line 2036
iget-object p0, p1, Landroidx/fragment/app/Fragment;->mContainer:Landroid/view/ViewGroup;
return-object p0
.line 2039
:cond_0
iget v0, p1, Landroidx/fragment/app/Fragment;->mContainerId:I
const/4 v1, 0x0
if-gtz v0, :cond_1
return-object v1
:cond_1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mContainer:Landroidx/fragment/app/FragmentContainer;
.line 2046
invoke-virtual {v0}, Landroidx/fragment/app/FragmentContainer;->onHasView()Z
move-result v0
if-eqz v0, :cond_2
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mContainer:Landroidx/fragment/app/FragmentContainer;
.line 2047
iget p1, p1, Landroidx/fragment/app/Fragment;->mContainerId:I
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentContainer;->onFindViewById(I)Landroid/view/View;
move-result-object p0
.line 2049
instance-of p1, p0, Landroid/view/ViewGroup;
if-eqz p1, :cond_2
.line 2050
check-cast p0, Landroid/view/ViewGroup;
return-object p0
:cond_2
return-object v1
.end method
.method static getViewFragment(Landroid/view/View;)Landroidx/fragment/app/Fragment;
.locals 1
.line 1109
sget v0, Landroidx/fragment/R$id;->fragment_container_view_tag:I
invoke-virtual {p0, v0}, Landroid/view/View;->getTag(I)Ljava/lang/Object;
move-result-object p0
.line 1110
instance-of v0, p0, Landroidx/fragment/app/Fragment;
if-eqz v0, :cond_0
.line 1111
check-cast p0, Landroidx/fragment/app/Fragment;
return-object p0
:cond_0
const/4 p0, 0x0
return-object p0
.end method
.method public static isLoggingEnabled(I)Z
.locals 1
sget-boolean v0, Landroidx/fragment/app/FragmentManager;->DEBUG:Z
if-nez v0, :cond_1
const-string v0, "FragmentManager"
.line 133
invoke-static {v0, p0}, Landroid/util/Log;->isLoggable(Ljava/lang/String;I)Z
move-result p0
if-eqz p0, :cond_0
goto :goto_0
:cond_0
const/4 p0, 0x0
goto :goto_1
:cond_1
:goto_0
const/4 p0, 0x1
:goto_1
return p0
.end method
.method private isMenuAvailable(Landroidx/fragment/app/Fragment;)Z
.locals 0
.line 3410
iget-boolean p0, p1, Landroidx/fragment/app/Fragment;->mHasMenu:Z
if-eqz p0, :cond_0
iget-boolean p0, p1, Landroidx/fragment/app/Fragment;->mMenuVisible:Z
if-nez p0, :cond_1
:cond_0
iget-object p0, p1, Landroidx/fragment/app/Fragment;->mChildFragmentManager:Landroidx/fragment/app/FragmentManager;
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->checkForMenus()Z
move-result p0
if-eqz p0, :cond_2
:cond_1
const/4 p0, 0x1
goto :goto_0
:cond_2
const/4 p0, 0x0
:goto_0
return p0
.end method
.method private isParentAdded()Z
.locals 2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
const/4 v1, 0x1
if-nez v0, :cond_0
return v1
.line 3424
:cond_0
invoke-virtual {v0}, Landroidx/fragment/app/Fragment;->isAdded()Z
move-result v0
if-eqz v0, :cond_1
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
invoke-virtual {p0}, Landroidx/fragment/app/Fragment;->getParentFragmentManager()Landroidx/fragment/app/FragmentManager;
move-result-object p0
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->isParentAdded()Z
move-result p0
if-eqz p0, :cond_1
goto :goto_0
:cond_1
const/4 v1, 0x0
:goto_0
return v1
.end method
.method private popBackStackImmediate(Ljava/lang/String;II)Z
.locals 8
const/4 v0, 0x0
.line 874
invoke-virtual {p0, v0}, Landroidx/fragment/app/FragmentManager;->execPendingActions(Z)Z
const/4 v0, 0x1
.line 875
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->ensureExecReady(Z)V
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mPrimaryNav:Landroidx/fragment/app/Fragment;
if-eqz v1, :cond_0
if-gez p2, :cond_0
if-nez p1, :cond_0
.line 880
invoke-virtual {v1}, Landroidx/fragment/app/Fragment;->getChildFragmentManager()Landroidx/fragment/app/FragmentManager;
move-result-object v1
.line 881
invoke-virtual {v1}, Landroidx/fragment/app/FragmentManager;->popBackStackImmediate()Z
move-result v1
if-eqz v1, :cond_0
return v0
:cond_0
iget-object v3, p0, Landroidx/fragment/app/FragmentManager;->mTmpRecords:Ljava/util/ArrayList;
iget-object v4, p0, Landroidx/fragment/app/FragmentManager;->mTmpIsPop:Ljava/util/ArrayList;
move-object v2, p0
move-object v5, p1
move v6, p2
move v7, p3
.line 887
invoke-virtual/range {v2 .. v7}, Landroidx/fragment/app/FragmentManager;->popBackStackState(Ljava/util/ArrayList;Ljava/util/ArrayList;Ljava/lang/String;II)Z
move-result p1
if-eqz p1, :cond_1
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mExecutingActions:Z
:try_start_0
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mTmpRecords:Ljava/util/ArrayList;
iget-object p3, p0, Landroidx/fragment/app/FragmentManager;->mTmpIsPop:Ljava/util/ArrayList;
.line 891
invoke-direct {p0, p2, p3}, Landroidx/fragment/app/FragmentManager;->removeRedundantOperationsAndExecute(Ljava/util/ArrayList;Ljava/util/ArrayList;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 893
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->cleanupExec()V
goto :goto_0
:catchall_0
move-exception p1
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->cleanupExec()V
.line 894
throw p1
.line 897
:cond_1
:goto_0
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->updateOnBackPressedCallbackEnabled()V
.line 898
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->doPendingDeferredStart()V
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 899
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->burpActive()V
return p1
.end method
.method private removeRedundantOperationsAndExecute(Ljava/util/ArrayList;Ljava/util/ArrayList;)V
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/BackStackRecord;",
">;",
"Ljava/util/ArrayList<",
"Ljava/lang/Boolean;",
">;)V"
}
.end annotation
.line 1812
invoke-virtual {p1}, Ljava/util/ArrayList;->isEmpty()Z
move-result v0
if-eqz v0, :cond_0
return-void
.line 1816
:cond_0
invoke-virtual {p1}, Ljava/util/ArrayList;->size()I
move-result v0
invoke-virtual {p2}, Ljava/util/ArrayList;->size()I
move-result v1
if-ne v0, v1, :cond_6
.line 1820
invoke-virtual {p1}, Ljava/util/ArrayList;->size()I
move-result v0
const/4 v1, 0x0
move v2, v1
:goto_0
if-ge v1, v0, :cond_4
.line 1823
invoke-virtual {p1, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/fragment/app/BackStackRecord;
iget-boolean v3, v3, Landroidx/fragment/app/BackStackRecord;->mReorderingAllowed:Z
if-nez v3, :cond_3
if-eq v2, v1, :cond_1
.line 1827
invoke-direct {p0, p1, p2, v2, v1}, Landroidx/fragment/app/FragmentManager;->executeOpsTogether(Ljava/util/ArrayList;Ljava/util/ArrayList;II)V
:cond_1
add-int/lit8 v2, v1, 0x1
.line 1832
invoke-virtual {p2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/Boolean;
invoke-virtual {v3}, Ljava/lang/Boolean;->booleanValue()Z
move-result v3
if-eqz v3, :cond_2
:goto_1
if-ge v2, v0, :cond_2
.line 1834
invoke-virtual {p2, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/Boolean;
invoke-virtual {v3}, Ljava/lang/Boolean;->booleanValue()Z
move-result v3
if-eqz v3, :cond_2
.line 1835
invoke-virtual {p1, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/fragment/app/BackStackRecord;
iget-boolean v3, v3, Landroidx/fragment/app/BackStackRecord;->mReorderingAllowed:Z
if-nez v3, :cond_2
add-int/lit8 v2, v2, 0x1
goto :goto_1
.line 1839
:cond_2
invoke-direct {p0, p1, p2, v1, v2}, Landroidx/fragment/app/FragmentManager;->executeOpsTogether(Ljava/util/ArrayList;Ljava/util/ArrayList;II)V
add-int/lit8 v1, v2, -0x1
:cond_3
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_4
if-eq v2, v0, :cond_5
.line 1845
invoke-direct {p0, p1, p2, v2, v0}, Landroidx/fragment/app/FragmentManager;->executeOpsTogether(Ljava/util/ArrayList;Ljava/util/ArrayList;II)V
:cond_5
return-void
.line 1817
:cond_6
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "Internal error with the back stack records"
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
.end method
.method private reportBackStackChanged()V
.locals 2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStackChangeListeners:Ljava/util/ArrayList;
if-eqz v0, :cond_0
const/4 v0, 0x0
:goto_0
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mBackStackChangeListeners:Ljava/util/ArrayList;
.line 2132
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v1
if-ge v0, v1, :cond_0
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mBackStackChangeListeners:Ljava/util/ArrayList;
.line 2133
invoke-virtual {v1, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/fragment/app/FragmentManager$OnBackStackChangedListener;
invoke-interface {v1}, Landroidx/fragment/app/FragmentManager$OnBackStackChangedListener;->onBackStackChanged()V
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_0
return-void
.end method
.method static reverseTransit(I)I
.locals 3
const/16 v0, 0x2002
const/16 v1, 0x1001
if-eq p0, v1, :cond_2
if-eq p0, v0, :cond_0
const/16 v0, 0x1004
const/16 v1, 0x2005
if-eq p0, v1, :cond_2
const/16 v2, 0x1003
if-eq p0, v2, :cond_1
if-eq p0, v0, :cond_0
const/4 v0, 0x0
goto :goto_0
:cond_0
move v0, v1
goto :goto_0
:cond_1
move v0, v2
:cond_2
:goto_0
return v0
.end method
.method private setVisibleRemovingFragment(Landroidx/fragment/app/Fragment;)V
.locals 2
.line 2021
invoke-direct {p0, p1}, Landroidx/fragment/app/FragmentManager;->getFragmentContainer(Landroidx/fragment/app/Fragment;)Landroid/view/ViewGroup;
move-result-object p0
if-eqz p0, :cond_1
.line 2023
invoke-virtual {p1}, Landroidx/fragment/app/Fragment;->getEnterAnim()I
move-result v0
invoke-virtual {p1}, Landroidx/fragment/app/Fragment;->getExitAnim()I
move-result v1
add-int/2addr v0, v1
invoke-virtual {p1}, Landroidx/fragment/app/Fragment;->getPopEnterAnim()I
move-result v1
add-int/2addr v0, v1
invoke-virtual {p1}, Landroidx/fragment/app/Fragment;->getPopExitAnim()I
move-result v1
add-int/2addr v0, v1
if-lez v0, :cond_1
.line 2025
sget v0, Landroidx/fragment/R$id;->visible_removing_fragment_view_tag:I
invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->getTag(I)Ljava/lang/Object;
move-result-object v0
if-nez v0, :cond_0
.line 2026
sget v0, Landroidx/fragment/R$id;->visible_removing_fragment_view_tag:I
invoke-virtual {p0, v0, p1}, Landroid/view/ViewGroup;->setTag(ILjava/lang/Object;)V
.line 2028
:cond_0
sget v0, Landroidx/fragment/R$id;->visible_removing_fragment_view_tag:I
invoke-virtual {p0, v0}, Landroid/view/ViewGroup;->getTag(I)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroidx/fragment/app/Fragment;
.line 2029
invoke-virtual {p1}, Landroidx/fragment/app/Fragment;->getPopDirection()Z
move-result p1
invoke-virtual {p0, p1}, Landroidx/fragment/app/Fragment;->setPopDirection(Z)V
:cond_1
return-void
.end method
.method private startPendingDeferredFragments()V
.locals 2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1466
invoke-virtual {v0}, Landroidx/fragment/app/FragmentStore;->getActiveFragmentStateManagers()Ljava/util/List;
move-result-object v0
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/fragment/app/FragmentStateManager;
.line 1467
invoke-virtual {p0, v1}, Landroidx/fragment/app/FragmentManager;->performPendingDeferredStart(Landroidx/fragment/app/FragmentStateManager;)V
goto :goto_0
:cond_0
return-void
.end method
.method private throwException(Ljava/lang/RuntimeException;)V
.locals 7
.line 570
invoke-virtual {p1}, Ljava/lang/RuntimeException;->getMessage()Ljava/lang/String;
move-result-object v0
const-string v1, "FragmentManager"
invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
const-string v0, "Activity state:"
.line 571
invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 572
new-instance v0, Landroidx/fragment/app/LogWriter;
invoke-direct {v0, v1}, Landroidx/fragment/app/LogWriter;-><init>(Ljava/lang/String;)V
.line 573
new-instance v2, Ljava/io/PrintWriter;
invoke-direct {v2, v0}, Ljava/io/PrintWriter;-><init>(Ljava/io/Writer;)V
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
const-string v3, "Failed dumping state"
const/4 v4, 0x0
const/4 v5, 0x0
const-string v6, " "
if-eqz v0, :cond_0
:try_start_0
new-array p0, v4, [Ljava/lang/String;
.line 576
invoke-virtual {v0, v6, v5, v2, p0}, Landroidx/fragment/app/FragmentHostCallback;->onDump(Ljava/lang/String;Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
move-exception p0
.line 578
invoke-static {v1, v3, p0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
goto :goto_0
:cond_0
:try_start_1
new-array v0, v4, [Ljava/lang/String;
.line 582
invoke-virtual {p0, v6, v5, v2, v0}, Landroidx/fragment/app/FragmentManager;->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
:catch_1
move-exception p0
.line 584
invoke-static {v1, v3, p0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
.line 587
:goto_0
throw p1
.end method
.method private updateOnBackPressedCallbackEnabled()V
.locals 3
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 650
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 651
invoke-virtual {v1}, Ljava/util/ArrayList;->isEmpty()Z
move-result v1
const/4 v2, 0x1
if-nez v1, :cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mOnBackPressedCallback:Landroidx/activity/OnBackPressedCallback;
.line 652
invoke-virtual {p0, v2}, Landroidx/activity/OnBackPressedCallback;->setEnabled(Z)V
.line 653
monitor-exit v0
return-void
.line 655
:cond_0
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mOnBackPressedCallback:Landroidx/activity/OnBackPressedCallback;
.line 659
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->getBackStackEntryCount()I
move-result v1
if-lez v1, :cond_1
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
.line 660
invoke-virtual {p0, v1}, Landroidx/fragment/app/FragmentManager;->isPrimaryNavigation(Landroidx/fragment/app/Fragment;)Z
move-result p0
if-eqz p0, :cond_1
goto :goto_0
:cond_1
const/4 v2, 0x0
.line 659
:goto_0
invoke-virtual {v0, v2}, Landroidx/activity/OnBackPressedCallback;->setEnabled(Z)V
return-void
:catchall_0
move-exception p0
.line 655
:try_start_1
monitor-exit v0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw p0
.end method
# virtual methods
.method addBackStackState(Landroidx/fragment/app/BackStackRecord;)V
.locals 1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
if-nez v0, :cond_0
.line 2151
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2153
invoke-virtual {p0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
return-void
.end method
.method addFragment(Landroidx/fragment/app/Fragment;)Landroidx/fragment/app/FragmentStateManager;
.locals 3
.line 1495
iget-object v0, p1, Landroidx/fragment/app/Fragment;->mPreviousWho:Ljava/lang/String;
if-eqz v0, :cond_0
.line 1496
iget-object v0, p1, Landroidx/fragment/app/Fragment;->mPreviousWho:Ljava/lang/String;
invoke-static {p1, v0}, Landroidx/fragment/app/strictmode/FragmentStrictMode;->onFragmentReuse(Landroidx/fragment/app/Fragment;Ljava/lang/String;)V
:cond_0
const/4 v0, 0x2
.line 1498
invoke-static {v0}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v0
if-eqz v0, :cond_1
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "add: "
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "FragmentManager"
invoke-static {v1, v0}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 1499
:cond_1
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentManager;->createOrGetFragmentStateManager(Landroidx/fragment/app/Fragment;)Landroidx/fragment/app/FragmentStateManager;
move-result-object v0
.line 1500
iput-object p0, p1, Landroidx/fragment/app/Fragment;->mFragmentManager:Landroidx/fragment/app/FragmentManager;
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1501
invoke-virtual {v1, v0}, Landroidx/fragment/app/FragmentStore;->makeActive(Landroidx/fragment/app/FragmentStateManager;)V
.line 1502
iget-boolean v1, p1, Landroidx/fragment/app/Fragment;->mDetached:Z
if-nez v1, :cond_3
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1503
invoke-virtual {v1, p1}, Landroidx/fragment/app/FragmentStore;->addFragment(Landroidx/fragment/app/Fragment;)V
const/4 v1, 0x0
.line 1504
iput-boolean v1, p1, Landroidx/fragment/app/Fragment;->mRemoving:Z
.line 1505
iget-object v2, p1, Landroidx/fragment/app/Fragment;->mView:Landroid/view/View;
if-nez v2, :cond_2
.line 1506
iput-boolean v1, p1, Landroidx/fragment/app/Fragment;->mHiddenChanged:Z
.line 1508
:cond_2
invoke-direct {p0, p1}, Landroidx/fragment/app/FragmentManager;->isMenuAvailable(Landroidx/fragment/app/Fragment;)Z
move-result p1
if-eqz p1, :cond_3
const/4 p1, 0x1
iput-boolean p1, p0, Landroidx/fragment/app/FragmentManager;->mNeedMenuInvalidate:Z
:cond_3
return-object v0
.end method
.method public addFragmentOnAttachListener(Landroidx/fragment/app/FragmentOnAttachListener;)V
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mOnAttachListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
.line 3359
invoke-virtual {p0, p1}, Ljava/util/concurrent/CopyOnWriteArrayList;->add(Ljava/lang/Object;)Z
return-void
.end method
.method public addOnBackStackChangedListener(Landroidx/fragment/app/FragmentManager$OnBackStackChangedListener;)V
.locals 1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStackChangeListeners:Ljava/util/ArrayList;
if-nez v0, :cond_0
.line 924
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStackChangeListeners:Ljava/util/ArrayList;
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mBackStackChangeListeners:Ljava/util/ArrayList;
.line 926
invoke-virtual {p0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
return-void
.end method
.method addRetainedFragment(Landroidx/fragment/app/Fragment;)V
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 1200
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentManagerViewModel;->addRetainedFragment(Landroidx/fragment/app/Fragment;)V
return-void
.end method
.method allocBackStackIndex()I
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mBackStackIndex:Ljava/util/concurrent/atomic/AtomicInteger;
.line 1706
invoke-virtual {p0}, Ljava/util/concurrent/atomic/AtomicInteger;->getAndIncrement()I
move-result p0
return p0
.end method
.method attachController(Landroidx/fragment/app/FragmentHostCallback;Landroidx/fragment/app/FragmentContainer;Landroidx/fragment/app/Fragment;)V
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/fragment/app/FragmentHostCallback<",
"*>;",
"Landroidx/fragment/app/FragmentContainer;",
"Landroidx/fragment/app/Fragment;",
")V"
}
.end annotation
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
if-nez v0, :cond_f
iput-object p1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
iput-object p2, p0, Landroidx/fragment/app/FragmentManager;->mContainer:Landroidx/fragment/app/FragmentContainer;
iput-object p3, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
if-eqz p3, :cond_0
.line 2672
new-instance p2, Landroidx/fragment/app/FragmentManager$7;
invoke-direct {p2, p0, p3}, Landroidx/fragment/app/FragmentManager$7;-><init>(Landroidx/fragment/app/FragmentManager;Landroidx/fragment/app/Fragment;)V
invoke-virtual {p0, p2}, Landroidx/fragment/app/FragmentManager;->addFragmentOnAttachListener(Landroidx/fragment/app/FragmentOnAttachListener;)V
goto :goto_0
.line 2680
:cond_0
instance-of p2, p1, Landroidx/fragment/app/FragmentOnAttachListener;
if-eqz p2, :cond_1
.line 2681
move-object p2, p1
check-cast p2, Landroidx/fragment/app/FragmentOnAttachListener;
invoke-virtual {p0, p2}, Landroidx/fragment/app/FragmentManager;->addFragmentOnAttachListener(Landroidx/fragment/app/FragmentOnAttachListener;)V
:cond_1
:goto_0
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
if-eqz p2, :cond_2
.line 2688
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->updateOnBackPressedCallbackEnabled()V
.line 2691
:cond_2
instance-of p2, p1, Landroidx/activity/OnBackPressedDispatcherOwner;
if-eqz p2, :cond_4
.line 2692
move-object p2, p1
check-cast p2, Landroidx/activity/OnBackPressedDispatcherOwner;
.line 2693
invoke-interface {p2}, Landroidx/activity/OnBackPressedDispatcherOwner;->getOnBackPressedDispatcher()Landroidx/activity/OnBackPressedDispatcher;
move-result-object v0
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mOnBackPressedDispatcher:Landroidx/activity/OnBackPressedDispatcher;
if-eqz p3, :cond_3
move-object p2, p3
:cond_3
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mOnBackPressedCallback:Landroidx/activity/OnBackPressedCallback;
.line 2695
invoke-virtual {v0, p2, v1}, Landroidx/activity/OnBackPressedDispatcher;->addCallback(Landroidx/lifecycle/LifecycleOwner;Landroidx/activity/OnBackPressedCallback;)V
:cond_4
if-eqz p3, :cond_5
.line 2700
iget-object p1, p3, Landroidx/fragment/app/Fragment;->mFragmentManager:Landroidx/fragment/app/FragmentManager;
invoke-direct {p1, p3}, Landroidx/fragment/app/FragmentManager;->getChildNonConfig(Landroidx/fragment/app/Fragment;)Landroidx/fragment/app/FragmentManagerViewModel;
move-result-object p1
iput-object p1, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
goto :goto_1
.line 2701
:cond_5
instance-of p2, p1, Landroidx/lifecycle/ViewModelStoreOwner;
if-eqz p2, :cond_6
.line 2702
check-cast p1, Landroidx/lifecycle/ViewModelStoreOwner;
invoke-interface {p1}, Landroidx/lifecycle/ViewModelStoreOwner;->getViewModelStore()Landroidx/lifecycle/ViewModelStore;
move-result-object p1
.line 2703
invoke-static {p1}, Landroidx/fragment/app/FragmentManagerViewModel;->getInstance(Landroidx/lifecycle/ViewModelStore;)Landroidx/fragment/app/FragmentManagerViewModel;
move-result-object p1
iput-object p1, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
goto :goto_1
.line 2705
:cond_6
new-instance p1, Landroidx/fragment/app/FragmentManagerViewModel;
const/4 p2, 0x0
invoke-direct {p1, p2}, Landroidx/fragment/app/FragmentManagerViewModel;-><init>(Z)V
iput-object p1, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
:goto_1
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2708
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->isStateSaved()Z
move-result p2
invoke-virtual {p1, p2}, Landroidx/fragment/app/FragmentManagerViewModel;->setIsStateSaved(Z)V
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2709
invoke-virtual {p1, p2}, Landroidx/fragment/app/FragmentStore;->setNonConfig(Landroidx/fragment/app/FragmentManagerViewModel;)V
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2711
instance-of p2, p1, Landroidx/savedstate/SavedStateRegistryOwner;
if-eqz p2, :cond_7
if-nez p3, :cond_7
.line 2712
check-cast p1, Landroidx/savedstate/SavedStateRegistryOwner;
.line 2713
invoke-interface {p1}, Landroidx/savedstate/SavedStateRegistryOwner;->getSavedStateRegistry()Landroidx/savedstate/SavedStateRegistry;
move-result-object p1
.line 2714
new-instance p2, Landroidx/fragment/app/FragmentManager$$ExternalSyntheticLambda4;
invoke-direct {p2, p0}, Landroidx/fragment/app/FragmentManager$$ExternalSyntheticLambda4;-><init>(Landroidx/fragment/app/FragmentManager;)V
const-string v0, "android:support:fragments"
invoke-virtual {p1, v0, p2}, Landroidx/savedstate/SavedStateRegistry;->registerSavedStateProvider(Ljava/lang/String;Landroidx/savedstate/SavedStateRegistry$SavedStateProvider;)V
.line 2720
invoke-virtual {p1, v0}, Landroidx/savedstate/SavedStateRegistry;->consumeRestoredStateForKey(Ljava/lang/String;)Landroid/os/Bundle;
move-result-object p1
if-eqz p1, :cond_7
.line 2722
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentManager;->restoreSaveStateInternal(Landroid/os/Parcelable;)V
:cond_7
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2726
instance-of p2, p1, Landroidx/activity/result/ActivityResultRegistryOwner;
if-eqz p2, :cond_9
.line 2727
check-cast p1, Landroidx/activity/result/ActivityResultRegistryOwner;
.line 2728
invoke-interface {p1}, Landroidx/activity/result/ActivityResultRegistryOwner;->getActivityResultRegistry()Landroidx/activity/result/ActivityResultRegistry;
move-result-object p1
if-eqz p3, :cond_8
.line 2730
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
iget-object v0, p3, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
const-string v0, ":"
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
goto :goto_2
:cond_8
const-string p2, ""
.line 2731
:goto_2
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "FragmentManager:"
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
.line 2733
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, "StartActivityForResult"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
new-instance v1, Landroidx/activity/result/contract/ActivityResultContracts$StartActivityForResult;
invoke-direct {v1}, Landroidx/activity/result/contract/ActivityResultContracts$StartActivityForResult;-><init>()V
new-instance v2, Landroidx/fragment/app/FragmentManager$8;
invoke-direct {v2, p0}, Landroidx/fragment/app/FragmentManager$8;-><init>(Landroidx/fragment/app/FragmentManager;)V
invoke-virtual {p1, v0, v1, v2}, Landroidx/activity/result/ActivityResultRegistry;->register(Ljava/lang/String;Landroidx/activity/result/contract/ActivityResultContract;Landroidx/activity/result/ActivityResultCallback;)Landroidx/activity/result/ActivityResultLauncher;
move-result-object v0
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mStartActivityForResult:Landroidx/activity/result/ActivityResultLauncher;
.line 2760
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, "StartIntentSenderForResult"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
new-instance v1, Landroidx/fragment/app/FragmentManager$FragmentIntentSenderContract;
invoke-direct {v1}, Landroidx/fragment/app/FragmentManager$FragmentIntentSenderContract;-><init>()V
new-instance v2, Landroidx/fragment/app/FragmentManager$9;
invoke-direct {v2, p0}, Landroidx/fragment/app/FragmentManager$9;-><init>(Landroidx/fragment/app/FragmentManager;)V
invoke-virtual {p1, v0, v1, v2}, Landroidx/activity/result/ActivityResultRegistry;->register(Ljava/lang/String;Landroidx/activity/result/contract/ActivityResultContract;Landroidx/activity/result/ActivityResultCallback;)Landroidx/activity/result/ActivityResultLauncher;
move-result-object v0
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mStartIntentSenderForResult:Landroidx/activity/result/ActivityResultLauncher;
.line 2787
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
const-string v0, "RequestPermissions"
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
new-instance v0, Landroidx/activity/result/contract/ActivityResultContracts$RequestMultiplePermissions;
invoke-direct {v0}, Landroidx/activity/result/contract/ActivityResultContracts$RequestMultiplePermissions;-><init>()V
new-instance v1, Landroidx/fragment/app/FragmentManager$10;
invoke-direct {v1, p0}, Landroidx/fragment/app/FragmentManager$10;-><init>(Landroidx/fragment/app/FragmentManager;)V
invoke-virtual {p1, p2, v0, v1}, Landroidx/activity/result/ActivityResultRegistry;->register(Ljava/lang/String;Landroidx/activity/result/contract/ActivityResultContract;Landroidx/activity/result/ActivityResultCallback;)Landroidx/activity/result/ActivityResultLauncher;
move-result-object p1
iput-object p1, p0, Landroidx/fragment/app/FragmentManager;->mRequestPermissions:Landroidx/activity/result/ActivityResultLauncher;
:cond_9
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2823
instance-of p2, p1, Landroidx/core/content/OnConfigurationChangedProvider;
if-eqz p2, :cond_a
.line 2824
check-cast p1, Landroidx/core/content/OnConfigurationChangedProvider;
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mOnConfigurationChangedListener:Landroidx/core/util/Consumer;
.line 2826
invoke-interface {p1, p2}, Landroidx/core/content/OnConfigurationChangedProvider;->addOnConfigurationChangedListener(Landroidx/core/util/Consumer;)V
:cond_a
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2830
instance-of p2, p1, Landroidx/core/content/OnTrimMemoryProvider;
if-eqz p2, :cond_b
.line 2831
check-cast p1, Landroidx/core/content/OnTrimMemoryProvider;
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mOnTrimMemoryListener:Landroidx/core/util/Consumer;
.line 2832
invoke-interface {p1, p2}, Landroidx/core/content/OnTrimMemoryProvider;->addOnTrimMemoryListener(Landroidx/core/util/Consumer;)V
:cond_b
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2835
instance-of p2, p1, Landroidx/core/app/OnMultiWindowModeChangedProvider;
if-eqz p2, :cond_c
.line 2836
check-cast p1, Landroidx/core/app/OnMultiWindowModeChangedProvider;
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mOnMultiWindowModeChangedListener:Landroidx/core/util/Consumer;
.line 2838
invoke-interface {p1, p2}, Landroidx/core/app/OnMultiWindowModeChangedProvider;->addOnMultiWindowModeChangedListener(Landroidx/core/util/Consumer;)V
:cond_c
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2842
instance-of p2, p1, Landroidx/core/app/OnPictureInPictureModeChangedProvider;
if-eqz p2, :cond_d
.line 2843
check-cast p1, Landroidx/core/app/OnPictureInPictureModeChangedProvider;
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mOnPictureInPictureModeChangedListener:Landroidx/core/util/Consumer;
.line 2845
invoke-interface {p1, p2}, Landroidx/core/app/OnPictureInPictureModeChangedProvider;->addOnPictureInPictureModeChangedListener(Landroidx/core/util/Consumer;)V
:cond_d
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2849
instance-of p2, p1, Landroidx/core/view/MenuHost;
if-eqz p2, :cond_e
if-nez p3, :cond_e
.line 2850
check-cast p1, Landroidx/core/view/MenuHost;
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mMenuProvider:Landroidx/core/view/MenuProvider;
invoke-interface {p1, p0}, Landroidx/core/view/MenuHost;->addMenuProvider(Landroidx/core/view/MenuProvider;)V
:cond_e
return-void
.line 2664
:cond_f
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "Already attached"
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
.end method
.method attachFragment(Landroidx/fragment/app/Fragment;)V
.locals 4
const/4 v0, 0x2
.line 1578
invoke-static {v0}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v1
const-string v2, "FragmentManager"
if-eqz v1, :cond_0
new-instance v1, Ljava/lang/StringBuilder;
const-string v3, "attach: "
invoke-direct {v1, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
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 {v2, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 1579
:cond_0
iget-boolean v1, p1, Landroidx/fragment/app/Fragment;->mDetached:Z
if-eqz v1, :cond_2
const/4 v1, 0x0
.line 1580
iput-boolean v1, p1, Landroidx/fragment/app/Fragment;->mDetached:Z
.line 1581
iget-boolean v1, p1, Landroidx/fragment/app/Fragment;->mAdded:Z
if-nez v1, :cond_2
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1582
invoke-virtual {v1, p1}, Landroidx/fragment/app/FragmentStore;->addFragment(Landroidx/fragment/app/Fragment;)V
.line 1583
invoke-static {v0}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v0
if-eqz v0, :cond_1
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "add from attach: "
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v2, v0}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 1584
:cond_1
invoke-direct {p0, p1}, Landroidx/fragment/app/FragmentManager;->isMenuAvailable(Landroidx/fragment/app/Fragment;)Z
move-result p1
if-eqz p1, :cond_2
const/4 p1, 0x1
iput-boolean p1, p0, Landroidx/fragment/app/FragmentManager;->mNeedMenuInvalidate:Z
:cond_2
return-void
.end method
.method public beginTransaction()Landroidx/fragment/app/FragmentTransaction;
.locals 1
.line 615
new-instance v0, Landroidx/fragment/app/BackStackRecord;
invoke-direct {v0, p0}, Landroidx/fragment/app/BackStackRecord;-><init>(Landroidx/fragment/app/FragmentManager;)V
return-object v0
.end method
.method checkForMenus()Z
.locals 4
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 3398
invoke-virtual {v0}, Landroidx/fragment/app/FragmentStore;->getActiveFragments()Ljava/util/List;
move-result-object v0
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
const/4 v1, 0x0
move v2, v1
:cond_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_2
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/fragment/app/Fragment;
if-eqz v3, :cond_1
.line 3400
invoke-direct {p0, v3}, Landroidx/fragment/app/FragmentManager;->isMenuAvailable(Landroidx/fragment/app/Fragment;)Z
move-result v2
:cond_1
if-eqz v2, :cond_0
const/4 p0, 0x1
return p0
:cond_2
return v1
.end method
.method public clearBackStack(Ljava/lang/String;)V
.locals 1
.line 777
new-instance v0, Landroidx/fragment/app/FragmentManager$ClearBackStackState;
invoke-direct {v0, p0, p1}, Landroidx/fragment/app/FragmentManager$ClearBackStackState;-><init>(Landroidx/fragment/app/FragmentManager;Ljava/lang/String;)V
const/4 p1, 0x0
invoke-virtual {p0, v0, p1}, Landroidx/fragment/app/FragmentManager;->enqueueAction(Landroidx/fragment/app/FragmentManager$OpGenerator;Z)V
return-void
.end method
.method clearBackStackState(Ljava/util/ArrayList;Ljava/util/ArrayList;Ljava/lang/String;)Z
.locals 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/BackStackRecord;",
">;",
"Ljava/util/ArrayList<",
"Ljava/lang/Boolean;",
">;",
"Ljava/lang/String;",
")Z"
}
.end annotation
.line 2312
invoke-virtual {p0, p1, p2, p3}, Landroidx/fragment/app/FragmentManager;->restoreBackStackState(Ljava/util/ArrayList;Ljava/util/ArrayList;Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_0
const/4 p0, 0x0
return p0
:cond_0
const/4 v4, -0x1
const/4 v5, 0x1
move-object v0, p0
move-object v1, p1
move-object v2, p2
move-object v3, p3
.line 2316
invoke-virtual/range {v0 .. v5}, Landroidx/fragment/app/FragmentManager;->popBackStackState(Ljava/util/ArrayList;Ljava/util/ArrayList;Ljava/lang/String;II)Z
move-result p0
return p0
.end method
.method public final clearFragmentResult(Ljava/lang/String;)V
.locals 1
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mResults:Ljava/util/Map;
.line 958
invoke-interface {p0, p1}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;
const/4 p0, 0x2
.line 959
invoke-static {p0}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result p0
if-eqz p0, :cond_0
.line 960
new-instance p0, Ljava/lang/StringBuilder;
const-string v0, "Clearing fragment result with key "
invoke-direct {p0, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
const-string p1, "FragmentManager"
invoke-static {p1, p0}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
:cond_0
return-void
.end method
.method public final clearFragmentResultListener(Ljava/lang/String;)V
.locals 1
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mResultListeners:Ljava/util/Map;
.line 1011
invoke-interface {p0, p1}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroidx/fragment/app/FragmentManager$LifecycleAwareResultListener;
if-eqz p0, :cond_0
.line 1013
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager$LifecycleAwareResultListener;->removeObserver()V
:cond_0
const/4 p0, 0x2
.line 1015
invoke-static {p0}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result p0
if-eqz p0, :cond_1
.line 1016
new-instance p0, Ljava/lang/StringBuilder;
const-string v0, "Clearing FragmentResultListener for key "
invoke-direct {p0, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
const-string p1, "FragmentManager"
invoke-static {p1, p0}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
:cond_1
return-void
.end method
.method createOrGetFragmentStateManager(Landroidx/fragment/app/Fragment;)Landroidx/fragment/app/FragmentStateManager;
.locals 3
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1481
iget-object v1, p1, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
invoke-virtual {v0, v1}, Landroidx/fragment/app/FragmentStore;->getFragmentStateManager(Ljava/lang/String;)Landroidx/fragment/app/FragmentStateManager;
move-result-object v0
if-eqz v0, :cond_0
return-object v0
.line 1485
:cond_0
new-instance v0, Landroidx/fragment/app/FragmentStateManager;
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mLifecycleCallbacksDispatcher:Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
invoke-direct {v0, v1, v2, p1}, Landroidx/fragment/app/FragmentStateManager;-><init>(Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;Landroidx/fragment/app/FragmentStore;Landroidx/fragment/app/Fragment;)V
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 1488
invoke-virtual {p1}, Landroidx/fragment/app/FragmentHostCallback;->getContext()Landroid/content/Context;
move-result-object p1
invoke-virtual {p1}, Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object p1
invoke-virtual {v0, p1}, Landroidx/fragment/app/FragmentStateManager;->restoreState(Ljava/lang/ClassLoader;)V
iget p0, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
.line 1490
invoke-virtual {v0, p0}, Landroidx/fragment/app/FragmentStateManager;->setFragmentManagerState(I)V
return-object v0
.end method
.method detachFragment(Landroidx/fragment/app/Fragment;)V
.locals 4
const/4 v0, 0x2
.line 1562
invoke-static {v0}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v1
const-string v2, "FragmentManager"
if-eqz v1, :cond_0
new-instance v1, Ljava/lang/StringBuilder;
const-string v3, "detach: "
invoke-direct {v1, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
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 {v2, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 1563
:cond_0
iget-boolean v1, p1, Landroidx/fragment/app/Fragment;->mDetached:Z
if-nez v1, :cond_3
const/4 v1, 0x1
.line 1564
iput-boolean v1, p1, Landroidx/fragment/app/Fragment;->mDetached:Z
.line 1565
iget-boolean v3, p1, Landroidx/fragment/app/Fragment;->mAdded:Z
if-eqz v3, :cond_3
.line 1567
invoke-static {v0}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v0
if-eqz v0, :cond_1
new-instance v0, Ljava/lang/StringBuilder;
const-string v3, "remove from detach: "
invoke-direct {v0, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v2, v0}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
:cond_1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1568
invoke-virtual {v0, p1}, Landroidx/fragment/app/FragmentStore;->removeFragment(Landroidx/fragment/app/Fragment;)V
.line 1569
invoke-direct {p0, p1}, Landroidx/fragment/app/FragmentManager;->isMenuAvailable(Landroidx/fragment/app/Fragment;)Z
move-result v0
if-eqz v0, :cond_2
iput-boolean v1, p0, Landroidx/fragment/app/FragmentManager;->mNeedMenuInvalidate:Z
.line 1572
:cond_2
invoke-direct {p0, p1}, Landroidx/fragment/app/FragmentManager;->setVisibleRemovingFragment(Landroidx/fragment/app/Fragment;)V
:cond_3
return-void
.end method
.method dispatchActivityCreated()V
.locals 2
const/4 v0, 0x0
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStateSaved:Z
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStopped:Z
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2951
invoke-virtual {v1, v0}, Landroidx/fragment/app/FragmentManagerViewModel;->setIsStateSaved(Z)V
const/4 v0, 0x4
.line 2952
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchStateChange(I)V
return-void
.end method
.method dispatchAttach()V
.locals 2
const/4 v0, 0x0
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStateSaved:Z
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStopped:Z
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2933
invoke-virtual {v1, v0}, Landroidx/fragment/app/FragmentManagerViewModel;->setIsStateSaved(Z)V
.line 2934
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchStateChange(I)V
return-void
.end method
.method dispatchConfigurationChanged(Landroid/content/res/Configuration;Z)V
.locals 2
if-eqz p2, :cond_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 3083
instance-of v0, v0, Landroidx/core/content/OnConfigurationChangedProvider;
if-eqz v0, :cond_0
.line 3084
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Do not call dispatchConfigurationChanged() on host. Host implements OnConfigurationChangedProvider and automatically dispatches configuration changes to fragments."
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 3088
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getFragments()Ljava/util/List;
move-result-object p0
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_1
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_2
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/Fragment;
if-eqz v0, :cond_1
.line 3090
invoke-virtual {v0, p1}, Landroidx/fragment/app/Fragment;->performConfigurationChanged(Landroid/content/res/Configuration;)V
if-eqz p2, :cond_1
.line 3092
iget-object v0, v0, Landroidx/fragment/app/Fragment;->mChildFragmentManager:Landroidx/fragment/app/FragmentManager;
const/4 v1, 0x1
invoke-virtual {v0, p1, v1}, Landroidx/fragment/app/FragmentManager;->dispatchConfigurationChanged(Landroid/content/res/Configuration;Z)V
goto :goto_0
:cond_2
return-void
.end method
.method dispatchContextItemSelected(Landroid/view/MenuItem;)Z
.locals 3
iget v0, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
const/4 v1, 0x0
const/4 v2, 0x1
if-ge v0, v2, :cond_0
return v1
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 3180
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getFragments()Ljava/util/List;
move-result-object p0
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_1
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_2
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/Fragment;
if-eqz v0, :cond_1
.line 3182
invoke-virtual {v0, p1}, Landroidx/fragment/app/Fragment;->performContextItemSelected(Landroid/view/MenuItem;)Z
move-result v0
if-eqz v0, :cond_1
return v2
:cond_2
return v1
.end method
.method dispatchCreate()V
.locals 2
const/4 v0, 0x0
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStateSaved:Z
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStopped:Z
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2940
invoke-virtual {v1, v0}, Landroidx/fragment/app/FragmentManagerViewModel;->setIsStateSaved(Z)V
const/4 v0, 0x1
.line 2941
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchStateChange(I)V
return-void
.end method
.method dispatchCreateOptionsMenu(Landroid/view/Menu;Landroid/view/MenuInflater;)Z
.locals 7
iget v0, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
const/4 v1, 0x0
const/4 v2, 0x1
if-ge v0, v2, :cond_0
return v1
:cond_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 3121
invoke-virtual {v0}, Landroidx/fragment/app/FragmentStore;->getFragments()Ljava/util/List;
move-result-object v0
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
const/4 v3, 0x0
move v4, v1
:cond_1
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v5
if-eqz v5, :cond_3
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v5
check-cast v5, Landroidx/fragment/app/Fragment;
if-eqz v5, :cond_1
.line 3123
invoke-virtual {p0, v5}, Landroidx/fragment/app/FragmentManager;->isParentMenuVisible(Landroidx/fragment/app/Fragment;)Z
move-result v6
if-eqz v6, :cond_1
invoke-virtual {v5, p1, p2}, Landroidx/fragment/app/Fragment;->performCreateOptionsMenu(Landroid/view/Menu;Landroid/view/MenuInflater;)Z
move-result v6
if-eqz v6, :cond_1
if-nez v3, :cond_2
.line 3126
new-instance v3, Ljava/util/ArrayList;
invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
.line 3128
:cond_2
invoke-virtual {v3, v5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
move v4, v2
goto :goto_0
:cond_3
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mCreatedMenus:Ljava/util/ArrayList;
if-eqz p1, :cond_6
:goto_1
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mCreatedMenus:Ljava/util/ArrayList;
.line 3134
invoke-virtual {p1}, Ljava/util/ArrayList;->size()I
move-result p1
if-ge v1, p1, :cond_6
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mCreatedMenus:Ljava/util/ArrayList;
.line 3135
invoke-virtual {p1, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object p1
check-cast p1, Landroidx/fragment/app/Fragment;
if-eqz v3, :cond_4
.line 3136
invoke-virtual {v3, p1}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z
move-result p2
if-nez p2, :cond_5
.line 3137
:cond_4
invoke-virtual {p1}, Landroidx/fragment/app/Fragment;->onDestroyOptionsMenu()V
:cond_5
add-int/lit8 v1, v1, 0x1
goto :goto_1
:cond_6
iput-object v3, p0, Landroidx/fragment/app/FragmentManager;->mCreatedMenus:Ljava/util/ArrayList;
return v4
.end method
.method dispatchDestroy()V
.locals 2
const/4 v0, 0x1
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mDestroyed:Z
.line 2985
invoke-virtual {p0, v0}, Landroidx/fragment/app/FragmentManager;->execPendingActions(Z)Z
.line 2986
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->endAnimatingAwayFragments()V
.line 2987
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->clearBackStackStateViewModels()V
const/4 v0, -0x1
.line 2988
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchStateChange(I)V
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2989
instance-of v1, v0, Landroidx/core/content/OnTrimMemoryProvider;
if-eqz v1, :cond_0
.line 2990
check-cast v0, Landroidx/core/content/OnTrimMemoryProvider;
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mOnTrimMemoryListener:Landroidx/core/util/Consumer;
.line 2991
invoke-interface {v0, v1}, Landroidx/core/content/OnTrimMemoryProvider;->removeOnTrimMemoryListener(Landroidx/core/util/Consumer;)V
:cond_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2993
instance-of v1, v0, Landroidx/core/content/OnConfigurationChangedProvider;
if-eqz v1, :cond_1
.line 2994
check-cast v0, Landroidx/core/content/OnConfigurationChangedProvider;
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mOnConfigurationChangedListener:Landroidx/core/util/Consumer;
.line 2996
invoke-interface {v0, v1}, Landroidx/core/content/OnConfigurationChangedProvider;->removeOnConfigurationChangedListener(Landroidx/core/util/Consumer;)V
:cond_1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2999
instance-of v1, v0, Landroidx/core/app/OnMultiWindowModeChangedProvider;
if-eqz v1, :cond_2
.line 3000
check-cast v0, Landroidx/core/app/OnMultiWindowModeChangedProvider;
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mOnMultiWindowModeChangedListener:Landroidx/core/util/Consumer;
.line 3002
invoke-interface {v0, v1}, Landroidx/core/app/OnMultiWindowModeChangedProvider;->removeOnMultiWindowModeChangedListener(Landroidx/core/util/Consumer;)V
:cond_2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 3005
instance-of v1, v0, Landroidx/core/app/OnPictureInPictureModeChangedProvider;
if-eqz v1, :cond_3
.line 3006
check-cast v0, Landroidx/core/app/OnPictureInPictureModeChangedProvider;
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mOnPictureInPictureModeChangedListener:Landroidx/core/util/Consumer;
.line 3008
invoke-interface {v0, v1}, Landroidx/core/app/OnPictureInPictureModeChangedProvider;->removeOnPictureInPictureModeChangedListener(Landroidx/core/util/Consumer;)V
:cond_3
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 3011
instance-of v1, v0, Landroidx/core/view/MenuHost;
if-eqz v1, :cond_4
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
if-nez v1, :cond_4
.line 3012
check-cast v0, Landroidx/core/view/MenuHost;
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mMenuProvider:Landroidx/core/view/MenuProvider;
invoke-interface {v0, v1}, Landroidx/core/view/MenuHost;->removeMenuProvider(Landroidx/core/view/MenuProvider;)V
:cond_4
const/4 v0, 0x0
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mContainer:Landroidx/fragment/app/FragmentContainer;
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mOnBackPressedDispatcher:Landroidx/activity/OnBackPressedDispatcher;
if-eqz v1, :cond_5
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mOnBackPressedCallback:Landroidx/activity/OnBackPressedCallback;
.line 3020
invoke-virtual {v1}, Landroidx/activity/OnBackPressedCallback;->remove()V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mOnBackPressedDispatcher:Landroidx/activity/OnBackPressedDispatcher;
:cond_5
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mStartActivityForResult:Landroidx/activity/result/ActivityResultLauncher;
if-eqz v0, :cond_6
.line 3024
invoke-virtual {v0}, Landroidx/activity/result/ActivityResultLauncher;->unregister()V
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mStartIntentSenderForResult:Landroidx/activity/result/ActivityResultLauncher;
.line 3025
invoke-virtual {v0}, Landroidx/activity/result/ActivityResultLauncher;->unregister()V
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mRequestPermissions:Landroidx/activity/result/ActivityResultLauncher;
.line 3026
invoke-virtual {p0}, Landroidx/activity/result/ActivityResultLauncher;->unregister()V
:cond_6
return-void
.end method
.method dispatchDestroyView()V
.locals 1
const/4 v0, 0x1
.line 2980
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchStateChange(I)V
return-void
.end method
.method dispatchLowMemory(Z)V
.locals 2
if-eqz p1, :cond_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 3099
instance-of v0, v0, Landroidx/core/content/OnTrimMemoryProvider;
if-eqz v0, :cond_0
.line 3100
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Do not call dispatchLowMemory() on host. Host implements OnTrimMemoryProvider and automatically dispatches low memory callbacks to fragments."
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 3104
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getFragments()Ljava/util/List;
move-result-object p0
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_1
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_2
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/Fragment;
if-eqz v0, :cond_1
.line 3106
invoke-virtual {v0}, Landroidx/fragment/app/Fragment;->performLowMemory()V
if-eqz p1, :cond_1
.line 3108
iget-object v0, v0, Landroidx/fragment/app/Fragment;->mChildFragmentManager:Landroidx/fragment/app/FragmentManager;
const/4 v1, 0x1
invoke-virtual {v0, v1}, Landroidx/fragment/app/FragmentManager;->dispatchLowMemory(Z)V
goto :goto_0
:cond_2
return-void
.end method
.method dispatchMultiWindowModeChanged(ZZ)V
.locals 2
if-eqz p2, :cond_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 3046
instance-of v0, v0, Landroidx/core/app/OnMultiWindowModeChangedProvider;
if-eqz v0, :cond_0
.line 3047
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Do not call dispatchMultiWindowModeChanged() on host. Host implements OnMultiWindowModeChangedProvider and automatically dispatches multi-window mode changes to fragments."
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 3051
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getFragments()Ljava/util/List;
move-result-object p0
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_1
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_2
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/Fragment;
if-eqz v0, :cond_1
.line 3053
invoke-virtual {v0, p1}, Landroidx/fragment/app/Fragment;->performMultiWindowModeChanged(Z)V
if-eqz p2, :cond_1
.line 3055
iget-object v0, v0, Landroidx/fragment/app/Fragment;->mChildFragmentManager:Landroidx/fragment/app/FragmentManager;
const/4 v1, 0x1
invoke-virtual {v0, p1, v1}, Landroidx/fragment/app/FragmentManager;->dispatchMultiWindowModeChanged(ZZ)V
goto :goto_0
:cond_2
return-void
.end method
.method dispatchOnAttachFragment(Landroidx/fragment/app/Fragment;)V
.locals 2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mOnAttachListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
.line 3369
invoke-virtual {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/fragment/app/FragmentOnAttachListener;
.line 3370
invoke-interface {v1, p0, p1}, Landroidx/fragment/app/FragmentOnAttachListener;->onAttachFragment(Landroidx/fragment/app/FragmentManager;Landroidx/fragment/app/Fragment;)V
goto :goto_0
:cond_0
return-void
.end method
.method dispatchOnHiddenChanged()V
.locals 2
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 3386
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getActiveFragments()Ljava/util/List;
move-result-object p0
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_0
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_1
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/Fragment;
if-eqz v0, :cond_0
.line 3388
invoke-virtual {v0}, Landroidx/fragment/app/Fragment;->isHidden()Z
move-result v1
invoke-virtual {v0, v1}, Landroidx/fragment/app/Fragment;->onHiddenChanged(Z)V
.line 3389
iget-object v0, v0, Landroidx/fragment/app/Fragment;->mChildFragmentManager:Landroidx/fragment/app/FragmentManager;
invoke-virtual {v0}, Landroidx/fragment/app/FragmentManager;->dispatchOnHiddenChanged()V
goto :goto_0
:cond_1
return-void
.end method
.method dispatchOptionsItemSelected(Landroid/view/MenuItem;)Z
.locals 3
iget v0, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
const/4 v1, 0x0
const/4 v2, 0x1
if-ge v0, v2, :cond_0
return v1
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 3166
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getFragments()Ljava/util/List;
move-result-object p0
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_1
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_2
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/Fragment;
if-eqz v0, :cond_1
.line 3168
invoke-virtual {v0, p1}, Landroidx/fragment/app/Fragment;->performOptionsItemSelected(Landroid/view/MenuItem;)Z
move-result v0
if-eqz v0, :cond_1
return v2
:cond_2
return v1
.end method
.method dispatchOptionsMenuClosed(Landroid/view/Menu;)V
.locals 2
iget v0, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
const/4 v1, 0x1
if-ge v0, v1, :cond_0
return-void
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 3194
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getFragments()Ljava/util/List;
move-result-object p0
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_1
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_2
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/Fragment;
if-eqz v0, :cond_1
.line 3196
invoke-virtual {v0, p1}, Landroidx/fragment/app/Fragment;->performOptionsMenuClosed(Landroid/view/Menu;)V
goto :goto_0
:cond_2
return-void
.end method
.method dispatchPause()V
.locals 1
const/4 v0, 0x5
.line 2970
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchStateChange(I)V
return-void
.end method
.method dispatchPictureInPictureModeChanged(ZZ)V
.locals 2
if-eqz p2, :cond_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 3064
instance-of v0, v0, Landroidx/core/app/OnPictureInPictureModeChangedProvider;
if-eqz v0, :cond_0
.line 3065
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Do not call dispatchPictureInPictureModeChanged() on host. Host implements OnPictureInPictureModeChangedProvider and automatically dispatches picture-in-picture mode changes to fragments."
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 3070
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getFragments()Ljava/util/List;
move-result-object p0
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_1
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_2
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/Fragment;
if-eqz v0, :cond_1
.line 3072
invoke-virtual {v0, p1}, Landroidx/fragment/app/Fragment;->performPictureInPictureModeChanged(Z)V
if-eqz p2, :cond_1
.line 3074
iget-object v0, v0, Landroidx/fragment/app/Fragment;->mChildFragmentManager:Landroidx/fragment/app/FragmentManager;
const/4 v1, 0x1
invoke-virtual {v0, p1, v1}, Landroidx/fragment/app/FragmentManager;->dispatchPictureInPictureModeChanged(ZZ)V
goto :goto_0
:cond_2
return-void
.end method
.method dispatchPrepareOptionsMenu(Landroid/view/Menu;)Z
.locals 5
iget v0, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
const/4 v1, 0x0
const/4 v2, 0x1
if-ge v0, v2, :cond_0
return v1
:cond_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 3152
invoke-virtual {v0}, Landroidx/fragment/app/FragmentStore;->getFragments()Ljava/util/List;
move-result-object v0
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
:cond_1
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_2
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/fragment/app/Fragment;
if-eqz v3, :cond_1
.line 3154
invoke-virtual {p0, v3}, Landroidx/fragment/app/FragmentManager;->isParentMenuVisible(Landroidx/fragment/app/Fragment;)Z
move-result v4
if-eqz v4, :cond_1
invoke-virtual {v3, p1}, Landroidx/fragment/app/Fragment;->performPrepareOptionsMenu(Landroid/view/Menu;)Z
move-result v3
if-eqz v3, :cond_1
move v1, v2
goto :goto_0
:cond_2
return v1
.end method
.method dispatchPrimaryNavigationFragmentChanged()V
.locals 1
.line 3220
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->updateOnBackPressedCallbackEnabled()V
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mPrimaryNav:Landroidx/fragment/app/Fragment;
.line 3222
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchParentPrimaryNavigationFragmentChanged(Landroidx/fragment/app/Fragment;)V
return-void
.end method
.method dispatchResume()V
.locals 2
const/4 v0, 0x0
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStateSaved:Z
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStopped:Z
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2965
invoke-virtual {v1, v0}, Landroidx/fragment/app/FragmentManagerViewModel;->setIsStateSaved(Z)V
const/4 v0, 0x7
.line 2966
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchStateChange(I)V
return-void
.end method
.method dispatchStart()V
.locals 2
const/4 v0, 0x0
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStateSaved:Z
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStopped:Z
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2958
invoke-virtual {v1, v0}, Landroidx/fragment/app/FragmentManagerViewModel;->setIsStateSaved(Z)V
const/4 v0, 0x5
.line 2959
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchStateChange(I)V
return-void
.end method
.method dispatchStop()V
.locals 2
const/4 v0, 0x1
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStopped:Z
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2975
invoke-virtual {v1, v0}, Landroidx/fragment/app/FragmentManagerViewModel;->setIsStateSaved(Z)V
const/4 v0, 0x4
.line 2976
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchStateChange(I)V
return-void
.end method
.method dispatchViewCreated()V
.locals 1
const/4 v0, 0x2
.line 2945
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchStateChange(I)V
return-void
.end method
.method public dump(Ljava/lang/String;Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
.locals 4
.line 1323
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, " "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1325
invoke-virtual {v1, p1, p2, p3, p4}, Landroidx/fragment/app/FragmentStore;->dump(Ljava/lang/String;Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mCreatedMenus:Ljava/util/ArrayList;
const/4 p4, 0x0
if-eqz p2, :cond_0
.line 1329
invoke-virtual {p2}, Ljava/util/ArrayList;->size()I
move-result p2
if-lez p2, :cond_0
.line 1331
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string v1, "Fragments Created Menus:"
invoke-virtual {p3, v1}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
move v1, p4
:goto_0
if-ge v1, p2, :cond_0
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mCreatedMenus:Ljava/util/ArrayList;
.line 1333
invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/fragment/app/Fragment;
.line 1334
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string v3, " #"
.line 1335
invoke-virtual {p3, v3}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
.line 1336
invoke-virtual {p3, v1}, Ljava/io/PrintWriter;->print(I)V
const-string v3, ": "
.line 1337
invoke-virtual {p3, v3}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
.line 1338
invoke-virtual {v2}, Landroidx/fragment/app/Fragment;->toString()Ljava/lang/String;
move-result-object v2
invoke-virtual {p3, v2}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_0
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
if-eqz p2, :cond_1
.line 1344
invoke-virtual {p2}, Ljava/util/ArrayList;->size()I
move-result p2
if-lez p2, :cond_1
.line 1346
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string v1, "Back Stack:"
invoke-virtual {p3, v1}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
move v1, p4
:goto_1
if-ge v1, p2, :cond_1
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 1348
invoke-virtual {v2, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroidx/fragment/app/BackStackRecord;
.line 1349
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string v3, " #"
.line 1350
invoke-virtual {p3, v3}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
.line 1351
invoke-virtual {p3, v1}, Ljava/io/PrintWriter;->print(I)V
const-string v3, ": "
.line 1352
invoke-virtual {p3, v3}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
.line 1353
invoke-virtual {v2}, Landroidx/fragment/app/BackStackRecord;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {p3, v3}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
.line 1354
invoke-virtual {v2, v0, p3}, Landroidx/fragment/app/BackStackRecord;->dump(Ljava/lang/String;Ljava/io/PrintWriter;)V
add-int/lit8 v1, v1, 0x1
goto :goto_1
.line 1359
:cond_1
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
.line 1360
new-instance p2, Ljava/lang/StringBuilder;
const-string v0, "Back Stack Index: "
invoke-direct {p2, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStackIndex:Ljava/util/concurrent/atomic/AtomicInteger;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;->get()I
move-result v0
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 1362
monitor-enter p2
:try_start_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 1363
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
move-result v0
if-lez v0, :cond_2
.line 1365
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string v1, "Pending Actions:"
invoke-virtual {p3, v1}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
:goto_2
if-ge p4, v0, :cond_2
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 1367
invoke-virtual {v1, p4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/fragment/app/FragmentManager$OpGenerator;
.line 1368
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string v2, " #"
.line 1369
invoke-virtual {p3, v2}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
.line 1370
invoke-virtual {p3, p4}, Ljava/io/PrintWriter;->print(I)V
const-string v2, ": "
.line 1371
invoke-virtual {p3, v2}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
.line 1372
invoke-virtual {p3, v1}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
add-int/lit8 p4, p4, 0x1
goto :goto_2
.line 1375
:cond_2
monitor-exit p2
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 1377
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string p2, "FragmentManager misc state:"
.line 1378
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
.line 1379
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string p2, " mHost="
.line 1380
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 1381
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
.line 1382
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string p2, " mContainer="
.line 1383
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mContainer:Landroidx/fragment/app/FragmentContainer;
.line 1384
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
if-eqz p2, :cond_3
.line 1386
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string p2, " mParent="
.line 1387
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
.line 1388
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
.line 1390
:cond_3
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string p2, " mCurState="
.line 1391
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
iget p2, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
.line 1392
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->print(I)V
const-string p2, " mStateSaved="
.line 1393
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
iget-boolean p2, p0, Landroidx/fragment/app/FragmentManager;->mStateSaved:Z
.line 1394
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->print(Z)V
const-string p2, " mStopped="
.line 1395
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
iget-boolean p2, p0, Landroidx/fragment/app/FragmentManager;->mStopped:Z
.line 1396
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->print(Z)V
const-string p2, " mDestroyed="
.line 1397
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
iget-boolean p2, p0, Landroidx/fragment/app/FragmentManager;->mDestroyed:Z
.line 1398
invoke-virtual {p3, p2}, Ljava/io/PrintWriter;->println(Z)V
iget-boolean p2, p0, Landroidx/fragment/app/FragmentManager;->mNeedMenuInvalidate:Z
if-eqz p2, :cond_4
.line 1400
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
const-string p1, " mNeedMenuInvalidate="
.line 1401
invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
iget-boolean p0, p0, Landroidx/fragment/app/FragmentManager;->mNeedMenuInvalidate:Z
.line 1402
invoke-virtual {p3, p0}, Ljava/io/PrintWriter;->println(Z)V
:cond_4
return-void
:catchall_0
move-exception p0
.line 1375
:try_start_1
monitor-exit p2
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw p0
.end method
.method enqueueAction(Landroidx/fragment/app/FragmentManager$OpGenerator;Z)V
.locals 2
if-nez p2, :cond_2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
if-nez v0, :cond_1
iget-boolean p0, p0, Landroidx/fragment/app/FragmentManager;->mDestroyed:Z
if-eqz p0, :cond_0
.line 1666
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "FragmentManager has been destroyed"
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
.line 1668
:cond_0
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "FragmentManager has not been attached to a host."
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
.line 1672
:cond_1
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->checkStateLoss()V
:cond_2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 1674
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
if-nez v1, :cond_4
if-eqz p2, :cond_3
.line 1678
monitor-exit v0
return-void
.line 1680
:cond_3
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "Activity has been destroyed"
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
:cond_4
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 1682
invoke-virtual {p2, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 1683
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->scheduleCommit()V
.line 1684
monitor-exit v0
return-void
:catchall_0
move-exception p0
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p0
.end method
.method execPendingActions(Z)Z
.locals 2
.line 1776
invoke-direct {p0, p1}, Landroidx/fragment/app/FragmentManager;->ensureExecReady(Z)V
const/4 p1, 0x0
:goto_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mTmpRecords:Ljava/util/ArrayList;
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mTmpIsPop:Ljava/util/ArrayList;
.line 1779
invoke-direct {p0, v0, v1}, Landroidx/fragment/app/FragmentManager;->generateOpsForPendingActions(Ljava/util/ArrayList;Ljava/util/ArrayList;)Z
move-result v0
if-eqz v0, :cond_0
const/4 p1, 0x1
iput-boolean p1, p0, Landroidx/fragment/app/FragmentManager;->mExecutingActions:Z
:try_start_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mTmpRecords:Ljava/util/ArrayList;
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mTmpIsPop:Ljava/util/ArrayList;
.line 1782
invoke-direct {p0, v0, v1}, Landroidx/fragment/app/FragmentManager;->removeRedundantOperationsAndExecute(Ljava/util/ArrayList;Ljava/util/ArrayList;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 1784
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->cleanupExec()V
goto :goto_0
:catchall_0
move-exception p1
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->cleanupExec()V
.line 1785
throw p1
.line 1789
:cond_0
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->updateOnBackPressedCallbackEnabled()V
.line 1790
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->doPendingDeferredStart()V
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1791
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->burpActive()V
return p1
.end method
.method execSingleAction(Landroidx/fragment/app/FragmentManager$OpGenerator;Z)V
.locals 1
if-eqz p2, :cond_1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
if-eqz v0, :cond_0
iget-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mDestroyed:Z
if-eqz v0, :cond_1
:cond_0
return-void
.line 1747
:cond_1
invoke-direct {p0, p2}, Landroidx/fragment/app/FragmentManager;->ensureExecReady(Z)V
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mTmpRecords:Ljava/util/ArrayList;
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mTmpIsPop:Ljava/util/ArrayList;
.line 1748
invoke-interface {p1, p2, v0}, Landroidx/fragment/app/FragmentManager$OpGenerator;->generateOps(Ljava/util/ArrayList;Ljava/util/ArrayList;)Z
move-result p1
if-eqz p1, :cond_2
const/4 p1, 0x1
iput-boolean p1, p0, Landroidx/fragment/app/FragmentManager;->mExecutingActions:Z
:try_start_0
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mTmpRecords:Ljava/util/ArrayList;
iget-object p2, p0, Landroidx/fragment/app/FragmentManager;->mTmpIsPop:Ljava/util/ArrayList;
.line 1751
invoke-direct {p0, p1, p2}, Landroidx/fragment/app/FragmentManager;->removeRedundantOperationsAndExecute(Ljava/util/ArrayList;Ljava/util/ArrayList;)V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 1753
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->cleanupExec()V
goto :goto_0
:catchall_0
move-exception p1
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->cleanupExec()V
.line 1754
throw p1
.line 1757
:cond_2
:goto_0
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->updateOnBackPressedCallbackEnabled()V
.line 1758
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->doPendingDeferredStart()V
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1759
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->burpActive()V
return-void
.end method
.method public executePendingTransactions()Z
.locals 1
const/4 v0, 0x1
.line 641
invoke-virtual {p0, v0}, Landroidx/fragment/app/FragmentManager;->execPendingActions(Z)Z
move-result v0
.line 642
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->forcePostponedTransactions()V
return v0
.end method
.method findActiveFragment(Ljava/lang/String;)Landroidx/fragment/app/Fragment;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1627
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentStore;->findActiveFragment(Ljava/lang/String;)Landroidx/fragment/app/Fragment;
move-result-object p0
return-object p0
.end method
.method public findFragmentById(I)Landroidx/fragment/app/Fragment;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1601
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentStore;->findFragmentById(I)Landroidx/fragment/app/Fragment;
move-result-object p0
return-object p0
.end method
.method public findFragmentByTag(Ljava/lang/String;)Landroidx/fragment/app/Fragment;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1618
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentStore;->findFragmentByTag(Ljava/lang/String;)Landroidx/fragment/app/Fragment;
move-result-object p0
return-object p0
.end method
.method findFragmentByWho(Ljava/lang/String;)Landroidx/fragment/app/Fragment;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1622
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentStore;->findFragmentByWho(Ljava/lang/String;)Landroidx/fragment/app/Fragment;
move-result-object p0
return-object p0
.end method
.method getActiveFragmentCount()I
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1224
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getActiveFragmentCount()I
move-result p0
return p0
.end method
.method getActiveFragments()Ljava/util/List;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Landroidx/fragment/app/Fragment;",
">;"
}
.end annotation
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1215
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getActiveFragments()Ljava/util/List;
move-result-object p0
return-object p0
.end method
.method public getBackStackEntryAt(I)Landroidx/fragment/app/FragmentManager$BackStackEntry;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 916
invoke-virtual {p0, p1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroidx/fragment/app/FragmentManager$BackStackEntry;
return-object p0
.end method
.method public getBackStackEntryCount()I
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
if-eqz p0, :cond_0
.line 907
invoke-virtual {p0}, Ljava/util/ArrayList;->size()I
move-result p0
goto :goto_0
:cond_0
const/4 p0, 0x0
:goto_0
return p0
.end method
.method getContainer()Landroidx/fragment/app/FragmentContainer;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mContainer:Landroidx/fragment/app/FragmentContainer;
return-object p0
.end method
.method public getFragment(Landroid/os/Bundle;Ljava/lang/String;)Landroidx/fragment/app/Fragment;
.locals 4
.line 1050
invoke-virtual {p1, p2}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
if-nez p1, :cond_0
const/4 p0, 0x0
return-object p0
.line 1054
:cond_0
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentManager;->findActiveFragment(Ljava/lang/String;)Landroidx/fragment/app/Fragment;
move-result-object v0
if-nez v0, :cond_1
.line 1056
new-instance v1, Ljava/lang/IllegalStateException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Fragment no longer exists for key "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
const-string v2, ": unique id "
invoke-virtual {p2, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v1, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v1}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
:cond_1
return-object v0
.end method
.method public getFragmentFactory()Landroidx/fragment/app/FragmentFactory;
.locals 1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentFactory:Landroidx/fragment/app/FragmentFactory;
if-eqz v0, :cond_0
return-object v0
:cond_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
if-eqz v0, :cond_1
.line 3284
iget-object p0, v0, Landroidx/fragment/app/Fragment;->mFragmentManager:Landroidx/fragment/app/FragmentManager;
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->getFragmentFactory()Landroidx/fragment/app/FragmentFactory;
move-result-object p0
return-object p0
:cond_1
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mHostFragmentFactory:Landroidx/fragment/app/FragmentFactory;
return-object p0
.end method
.method getFragmentStore()Landroidx/fragment/app/FragmentStore;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
return-object p0
.end method
.method public getFragments()Ljava/util/List;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Landroidx/fragment/app/Fragment;",
">;"
}
.end annotation
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1186
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getFragments()Ljava/util/List;
move-result-object p0
return-object p0
.end method
.method public getHost()Landroidx/fragment/app/FragmentHostCallback;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Landroidx/fragment/app/FragmentHostCallback<",
"*>;"
}
.end annotation
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
return-object p0
.end method
.method getLayoutInflaterFactory()Landroid/view/LayoutInflater$Factory2;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mLayoutInflaterFactory:Landroidx/fragment/app/FragmentLayoutInflaterFactory;
return-object p0
.end method
.method getLifecycleCallbacksDispatcher()Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mLifecycleCallbacksDispatcher:Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;
return-object p0
.end method
.method getParent()Landroidx/fragment/app/Fragment;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
return-object p0
.end method
.method public getPrimaryNavigationFragment()Landroidx/fragment/app/Fragment;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mPrimaryNav:Landroidx/fragment/app/Fragment;
return-object p0
.end method
.method getSpecialEffectsControllerFactory()Landroidx/fragment/app/SpecialEffectsControllerFactory;
.locals 1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mSpecialEffectsControllerFactory:Landroidx/fragment/app/SpecialEffectsControllerFactory;
if-eqz v0, :cond_0
return-object v0
:cond_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
if-eqz v0, :cond_1
.line 3317
iget-object p0, v0, Landroidx/fragment/app/Fragment;->mFragmentManager:Landroidx/fragment/app/FragmentManager;
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->getSpecialEffectsControllerFactory()Landroidx/fragment/app/SpecialEffectsControllerFactory;
move-result-object p0
return-object p0
:cond_1
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mDefaultSpecialEffectsControllerFactory:Landroidx/fragment/app/SpecialEffectsControllerFactory;
return-object p0
.end method
.method public getStrictModePolicy()Landroidx/fragment/app/strictmode/FragmentStrictMode$Policy;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mStrictModePolicy:Landroidx/fragment/app/strictmode/FragmentStrictMode$Policy;
return-object p0
.end method
.method getViewModelStore(Landroidx/fragment/app/Fragment;)Landroidx/lifecycle/ViewModelStore;
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 1191
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentManagerViewModel;->getViewModelStore(Landroidx/fragment/app/Fragment;)Landroidx/lifecycle/ViewModelStore;
move-result-object p0
return-object p0
.end method
.method handleOnBackPressed()V
.locals 1
const/4 v0, 0x1
.line 714
invoke-virtual {p0, v0}, Landroidx/fragment/app/FragmentManager;->execPendingActions(Z)Z
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mOnBackPressedCallback:Landroidx/activity/OnBackPressedCallback;
.line 715
invoke-virtual {v0}, Landroidx/activity/OnBackPressedCallback;->isEnabled()Z
move-result v0
if-eqz v0, :cond_0
.line 717
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->popBackStackImmediate()Z
goto :goto_0
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mOnBackPressedDispatcher:Landroidx/activity/OnBackPressedDispatcher;
.line 725
invoke-virtual {p0}, Landroidx/activity/OnBackPressedDispatcher;->onBackPressed()V
:goto_0
return-void
.end method
.method hideFragment(Landroidx/fragment/app/Fragment;)V
.locals 2
const/4 v0, 0x2
.line 1536
invoke-static {v0}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v0
if-eqz v0, :cond_0
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "hide: "
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "FragmentManager"
invoke-static {v1, v0}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 1537
:cond_0
iget-boolean v0, p1, Landroidx/fragment/app/Fragment;->mHidden:Z
if-nez v0, :cond_1
const/4 v0, 0x1
.line 1538
iput-boolean v0, p1, Landroidx/fragment/app/Fragment;->mHidden:Z
.line 1541
iget-boolean v1, p1, Landroidx/fragment/app/Fragment;->mHiddenChanged:Z
xor-int/2addr v0, v1
iput-boolean v0, p1, Landroidx/fragment/app/Fragment;->mHiddenChanged:Z
.line 1542
invoke-direct {p0, p1}, Landroidx/fragment/app/FragmentManager;->setVisibleRemovingFragment(Landroidx/fragment/app/Fragment;)V
:cond_1
return-void
.end method
.method invalidateMenuForFragment(Landroidx/fragment/app/Fragment;)V
.locals 1
.line 3414
iget-boolean v0, p1, Landroidx/fragment/app/Fragment;->mAdded:Z
if-eqz v0, :cond_0
invoke-direct {p0, p1}, Landroidx/fragment/app/FragmentManager;->isMenuAvailable(Landroidx/fragment/app/Fragment;)Z
move-result p1
if-eqz p1, :cond_0
const/4 p1, 0x1
iput-boolean p1, p0, Landroidx/fragment/app/FragmentManager;->mNeedMenuInvalidate:Z
:cond_0
return-void
.end method
.method public isDestroyed()Z
.locals 0
iget-boolean p0, p0, Landroidx/fragment/app/FragmentManager;->mDestroyed:Z
return p0
.end method
.method isParentHidden(Landroidx/fragment/app/Fragment;)Z
.locals 0
if-nez p1, :cond_0
const/4 p0, 0x0
return p0
.line 705
:cond_0
invoke-virtual {p1}, Landroidx/fragment/app/Fragment;->isHidden()Z
move-result p0
return p0
.end method
.method isParentMenuVisible(Landroidx/fragment/app/Fragment;)Z
.locals 0
if-nez p1, :cond_0
const/4 p0, 0x1
return p0
.line 693
:cond_0
invoke-virtual {p1}, Landroidx/fragment/app/Fragment;->isMenuVisible()Z
move-result p0
return p0
.end method
.method isPrimaryNavigation(Landroidx/fragment/app/Fragment;)Z
.locals 3
const/4 v0, 0x1
if-nez p1, :cond_0
return v0
.line 674
:cond_0
iget-object v1, p1, Landroidx/fragment/app/Fragment;->mFragmentManager:Landroidx/fragment/app/FragmentManager;
.line 676
invoke-virtual {v1}, Landroidx/fragment/app/FragmentManager;->getPrimaryNavigationFragment()Landroidx/fragment/app/Fragment;
move-result-object v2
.line 680
invoke-virtual {p1, v2}, Landroidx/fragment/app/Fragment;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_1
iget-object p1, v1, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
.line 681
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentManager;->isPrimaryNavigation(Landroidx/fragment/app/Fragment;)Z
move-result p0
if-eqz p0, :cond_1
goto :goto_0
:cond_1
const/4 v0, 0x0
:goto_0
return v0
.end method
.method isStateAtLeast(I)Z
.locals 0
iget p0, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
if-lt p0, p1, :cond_0
const/4 p0, 0x1
goto :goto_0
:cond_0
const/4 p0, 0x0
:goto_0
return p0
.end method
.method public isStateSaved()Z
.locals 1
iget-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStateSaved:Z
if-nez v0, :cond_1
iget-boolean p0, p0, Landroidx/fragment/app/FragmentManager;->mStopped:Z
if-eqz p0, :cond_0
goto :goto_0
:cond_0
const/4 p0, 0x0
goto :goto_1
:cond_1
:goto_0
const/4 p0, 0x1
:goto_1
return p0
.end method
.method synthetic lambda$attachController$4$androidx-fragment-app-FragmentManager()Landroid/os/Bundle;
.locals 0
.line 2715
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->saveAllStateInternal()Landroid/os/Bundle;
move-result-object p0
return-object p0
.end method
.method synthetic lambda$new$0$androidx-fragment-app-FragmentManager(Landroid/content/res/Configuration;)V
.locals 1
.line 468
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->isParentAdded()Z
move-result v0
if-eqz v0, :cond_0
const/4 v0, 0x0
.line 469
invoke-virtual {p0, p1, v0}, Landroidx/fragment/app/FragmentManager;->dispatchConfigurationChanged(Landroid/content/res/Configuration;Z)V
:cond_0
return-void
.end method
.method synthetic lambda$new$1$androidx-fragment-app-FragmentManager(Ljava/lang/Integer;)V
.locals 1
.line 473
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->isParentAdded()Z
move-result v0
if-eqz v0, :cond_0
invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I
move-result p1
const/16 v0, 0x50
if-ne p1, v0, :cond_0
const/4 p1, 0x0
.line 474
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentManager;->dispatchLowMemory(Z)V
:cond_0
return-void
.end method
.method synthetic lambda$new$2$androidx-fragment-app-FragmentManager(Landroidx/core/app/MultiWindowModeChangedInfo;)V
.locals 1
.line 479
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->isParentAdded()Z
move-result v0
if-eqz v0, :cond_0
.line 480
invoke-virtual {p1}, Landroidx/core/app/MultiWindowModeChangedInfo;->isInMultiWindowMode()Z
move-result p1
const/4 v0, 0x0
invoke-virtual {p0, p1, v0}, Landroidx/fragment/app/FragmentManager;->dispatchMultiWindowModeChanged(ZZ)V
:cond_0
return-void
.end method
.method synthetic lambda$new$3$androidx-fragment-app-FragmentManager(Landroidx/core/app/PictureInPictureModeChangedInfo;)V
.locals 1
.line 485
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->isParentAdded()Z
move-result v0
if-eqz v0, :cond_0
.line 486
invoke-virtual {p1}, Landroidx/core/app/PictureInPictureModeChangedInfo;->isInPictureInPictureMode()Z
move-result p1
const/4 v0, 0x0
invoke-virtual {p0, p1, v0}, Landroidx/fragment/app/FragmentManager;->dispatchPictureInPictureModeChanged(ZZ)V
:cond_0
return-void
.end method
.method launchRequestPermissions(Landroidx/fragment/app/Fragment;[Ljava/lang/String;I)V
.locals 1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mRequestPermissions:Landroidx/activity/result/ActivityResultLauncher;
if-eqz v0, :cond_0
.line 2922
new-instance v0, Landroidx/fragment/app/FragmentManager$LaunchedFragmentInfo;
iget-object p1, p1, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
invoke-direct {v0, p1, p3}, Landroidx/fragment/app/FragmentManager$LaunchedFragmentInfo;-><init>(Ljava/lang/String;I)V
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mLaunchedFragments:Ljava/util/ArrayDeque;
.line 2923
invoke-virtual {p1, v0}, Ljava/util/ArrayDeque;->addLast(Ljava/lang/Object;)V
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mRequestPermissions:Landroidx/activity/result/ActivityResultLauncher;
.line 2924
invoke-virtual {p0, p2}, Landroidx/activity/result/ActivityResultLauncher;->launch(Ljava/lang/Object;)V
goto :goto_0
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2926
invoke-virtual {p0, p1, p2, p3}, Landroidx/fragment/app/FragmentHostCallback;->onRequestPermissionsFromFragment(Landroidx/fragment/app/Fragment;[Ljava/lang/String;I)V
:goto_0
return-void
.end method
.method launchStartActivityForResult(Landroidx/fragment/app/Fragment;Landroid/content/Intent;ILandroid/os/Bundle;)V
.locals 1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mStartActivityForResult:Landroidx/activity/result/ActivityResultLauncher;
if-eqz v0, :cond_1
.line 2875
new-instance v0, Landroidx/fragment/app/FragmentManager$LaunchedFragmentInfo;
iget-object p1, p1, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
invoke-direct {v0, p1, p3}, Landroidx/fragment/app/FragmentManager$LaunchedFragmentInfo;-><init>(Ljava/lang/String;I)V
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mLaunchedFragments:Ljava/util/ArrayDeque;
.line 2876
invoke-virtual {p1, v0}, Ljava/util/ArrayDeque;->addLast(Ljava/lang/Object;)V
if-eqz p4, :cond_0
const-string p1, "androidx.activity.result.contract.extra.ACTIVITY_OPTIONS_BUNDLE"
.line 2878
invoke-virtual {p2, p1, p4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Bundle;)Landroid/content/Intent;
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mStartActivityForResult:Landroidx/activity/result/ActivityResultLauncher;
.line 2880
invoke-virtual {p0, p2}, Landroidx/activity/result/ActivityResultLauncher;->launch(Ljava/lang/Object;)V
goto :goto_0
:cond_1
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2882
invoke-virtual {p0, p1, p2, p3, p4}, Landroidx/fragment/app/FragmentHostCallback;->onStartActivityFromFragment(Landroidx/fragment/app/Fragment;Landroid/content/Intent;ILandroid/os/Bundle;)V
:goto_0
return-void
.end method
.method launchStartIntentSenderForResult(Landroidx/fragment/app/Fragment;Landroid/content/IntentSender;ILandroid/content/Intent;IIILandroid/os/Bundle;)V
.locals 10
.annotation system Ldalvik/annotation/Throws;
value = {
Landroid/content/IntentSender$SendIntentException;
}
.end annotation
move-object v0, p0
move-object v1, p1
move-object/from16 v8, p8
iget-object v2, v0, Landroidx/fragment/app/FragmentManager;->mStartIntentSenderForResult:Landroidx/activity/result/ActivityResultLauncher;
if-eqz v2, :cond_4
const-string v2, "FragmentManager"
const/4 v3, 0x2
if-eqz v8, :cond_2
if-nez p4, :cond_0
.line 2894
new-instance v4, Landroid/content/Intent;
invoke-direct {v4}, Landroid/content/Intent;-><init>()V
const-string v5, "androidx.fragment.extra.ACTIVITY_OPTIONS_BUNDLE"
const/4 v6, 0x1
.line 2895
invoke-virtual {v4, v5, v6}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
goto :goto_0
:cond_0
move-object v4, p4
.line 2897
:goto_0
invoke-static {v3}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v5
if-eqz v5, :cond_1
.line 2898
new-instance v5, Ljava/lang/StringBuilder;
const-string v6, "ActivityOptions "
invoke-direct {v5, v6}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v5
const-string v6, " were added to fillInIntent "
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
invoke-virtual {v5, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v5
const-string v6, " for fragment "
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
invoke-virtual {v5, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
invoke-static {v2, v5}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
:cond_1
const-string v5, "androidx.activity.result.contract.extra.ACTIVITY_OPTIONS_BUNDLE"
.line 2901
invoke-virtual {v4, v5, v8}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Bundle;)Landroid/content/Intent;
goto :goto_1
:cond_2
move-object v4, p4
.line 2903
:goto_1
new-instance v5, Landroidx/activity/result/IntentSenderRequest$Builder;
move-object v6, p2
invoke-direct {v5, p2}, Landroidx/activity/result/IntentSenderRequest$Builder;-><init>(Landroid/content/IntentSender;)V
.line 2904
invoke-virtual {v5, v4}, Landroidx/activity/result/IntentSenderRequest$Builder;->setFillInIntent(Landroid/content/Intent;)Landroidx/activity/result/IntentSenderRequest$Builder;
move-result-object v4
move v5, p5
move/from16 v7, p6
.line 2905
invoke-virtual {v4, v7, p5}, Landroidx/activity/result/IntentSenderRequest$Builder;->setFlags(II)Landroidx/activity/result/IntentSenderRequest$Builder;
move-result-object v4
invoke-virtual {v4}, Landroidx/activity/result/IntentSenderRequest$Builder;->build()Landroidx/activity/result/IntentSenderRequest;
move-result-object v4
.line 2906
new-instance v5, Landroidx/fragment/app/FragmentManager$LaunchedFragmentInfo;
iget-object v6, v1, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
move v9, p3
invoke-direct {v5, v6, p3}, Landroidx/fragment/app/FragmentManager$LaunchedFragmentInfo;-><init>(Ljava/lang/String;I)V
iget-object v6, v0, Landroidx/fragment/app/FragmentManager;->mLaunchedFragments:Ljava/util/ArrayDeque;
.line 2907
invoke-virtual {v6, v5}, Ljava/util/ArrayDeque;->addLast(Ljava/lang/Object;)V
.line 2908
invoke-static {v3}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v3
if-eqz v3, :cond_3
.line 2909
new-instance v3, Ljava/lang/StringBuilder;
const-string v5, "Fragment "
invoke-direct {v3, v5}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
const-string v3, "is launching an IntentSender for result "
invoke-virtual {v1, v3}, 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-static {v2, v1}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
:cond_3
iget-object v0, v0, Landroidx/fragment/app/FragmentManager;->mStartIntentSenderForResult:Landroidx/activity/result/ActivityResultLauncher;
.line 2911
invoke-virtual {v0, v4}, Landroidx/activity/result/ActivityResultLauncher;->launch(Ljava/lang/Object;)V
goto :goto_2
:cond_4
move-object v6, p2
move v9, p3
move v5, p5
move/from16 v7, p6
iget-object v0, v0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
move-object v1, p1
move-object v2, p2
move v3, p3
move-object v4, p4
move/from16 v6, p6
move/from16 v7, p7
move-object/from16 v8, p8
.line 2913
invoke-virtual/range {v0 .. v8}, Landroidx/fragment/app/FragmentHostCallback;->onStartIntentSenderFromFragment(Landroidx/fragment/app/Fragment;Landroid/content/IntentSender;ILandroid/content/Intent;IIILandroid/os/Bundle;)V
:goto_2
return-void
.end method
.method moveToState(IZ)V
.locals 1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
if-nez v0, :cond_1
const/4 v0, -0x1
if-ne p1, v0, :cond_0
goto :goto_0
.line 1447
:cond_0
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "No activity"
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
:cond_1
:goto_0
if-nez p2, :cond_2
iget p2, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
if-ne p1, p2, :cond_2
return-void
:cond_2
iput p1, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1455
invoke-virtual {p1}, Landroidx/fragment/app/FragmentStore;->moveToExpectedState()V
.line 1456
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->startPendingDeferredFragments()V
iget-boolean p1, p0, Landroidx/fragment/app/FragmentManager;->mNeedMenuInvalidate:Z
if-eqz p1, :cond_3
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
if-eqz p1, :cond_3
iget p2, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
const/4 v0, 0x7
if-ne p2, v0, :cond_3
.line 1459
invoke-virtual {p1}, Landroidx/fragment/app/FragmentHostCallback;->onSupportInvalidateOptionsMenu()V
const/4 p1, 0x0
iput-boolean p1, p0, Landroidx/fragment/app/FragmentManager;->mNeedMenuInvalidate:Z
:cond_3
return-void
.end method
.method noteStateNotSaved()V
.locals 2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
if-nez v0, :cond_0
return-void
:cond_0
const/4 v0, 0x0
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStateSaved:Z
iput-boolean v0, p0, Landroidx/fragment/app/FragmentManager;->mStopped:Z
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2863
invoke-virtual {v1, v0}, Landroidx/fragment/app/FragmentManagerViewModel;->setIsStateSaved(Z)V
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 2864
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getFragments()Ljava/util/List;
move-result-object p0
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_1
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_2
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/Fragment;
if-eqz v0, :cond_1
.line 2866
invoke-virtual {v0}, Landroidx/fragment/app/Fragment;->noteStateNotSaved()V
goto :goto_0
:cond_2
return-void
.end method
.method onContainerAvailable(Landroidx/fragment/app/FragmentContainerView;)V
.locals 4
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1118
invoke-virtual {p0}, Landroidx/fragment/app/FragmentStore;->getActiveFragmentStateManagers()Ljava/util/List;
move-result-object p0
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_0
:goto_0
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_1
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/FragmentStateManager;
.line 1119
invoke-virtual {v0}, Landroidx/fragment/app/FragmentStateManager;->getFragment()Landroidx/fragment/app/Fragment;
move-result-object v1
.line 1120
iget v2, v1, Landroidx/fragment/app/Fragment;->mContainerId:I
invoke-virtual {p1}, Landroidx/fragment/app/FragmentContainerView;->getId()I
move-result v3
if-ne v2, v3, :cond_0
iget-object v2, v1, Landroidx/fragment/app/Fragment;->mView:Landroid/view/View;
if-eqz v2, :cond_0
iget-object v2, v1, Landroidx/fragment/app/Fragment;->mView:Landroid/view/View;
.line 1121
invoke-virtual {v2}, Landroid/view/View;->getParent()Landroid/view/ViewParent;
move-result-object v2
if-nez v2, :cond_0
.line 1123
iput-object p1, v1, Landroidx/fragment/app/Fragment;->mContainer:Landroid/view/ViewGroup;
.line 1124
invoke-virtual {v0}, Landroidx/fragment/app/FragmentStateManager;->addViewToContainer()V
goto :goto_0
:cond_1
return-void
.end method
.method public openTransaction()Landroidx/fragment/app/FragmentTransaction;
.locals 0
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.line 597
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->beginTransaction()Landroidx/fragment/app/FragmentTransaction;
move-result-object p0
return-object p0
.end method
.method performPendingDeferredStart(Landroidx/fragment/app/FragmentStateManager;)V
.locals 2
.line 1407
invoke-virtual {p1}, Landroidx/fragment/app/FragmentStateManager;->getFragment()Landroidx/fragment/app/Fragment;
move-result-object v0
.line 1408
iget-boolean v1, v0, Landroidx/fragment/app/Fragment;->mDeferStart:Z
if-eqz v1, :cond_1
iget-boolean v1, p0, Landroidx/fragment/app/FragmentManager;->mExecutingActions:Z
if-eqz v1, :cond_0
const/4 p1, 0x1
iput-boolean p1, p0, Landroidx/fragment/app/FragmentManager;->mHavePendingDeferredStart:Z
return-void
:cond_0
const/4 p0, 0x0
.line 1414
iput-boolean p0, v0, Landroidx/fragment/app/Fragment;->mDeferStart:Z
.line 1415
invoke-virtual {p1}, Landroidx/fragment/app/FragmentStateManager;->moveToExpectedState()V
:cond_1
return-void
.end method
.method public popBackStack()V
.locals 4
.line 786
new-instance v0, Landroidx/fragment/app/FragmentManager$PopBackStackState;
const/4 v1, 0x0
const/4 v2, -0x1
const/4 v3, 0x0
invoke-direct {v0, p0, v1, v2, v3}, Landroidx/fragment/app/FragmentManager$PopBackStackState;-><init>(Landroidx/fragment/app/FragmentManager;Ljava/lang/String;II)V
invoke-virtual {p0, v0, v3}, Landroidx/fragment/app/FragmentManager;->enqueueAction(Landroidx/fragment/app/FragmentManager$OpGenerator;Z)V
return-void
.end method
.method public popBackStack(II)V
.locals 1
const/4 v0, 0x0
.line 843
invoke-virtual {p0, p1, p2, v0}, Landroidx/fragment/app/FragmentManager;->popBackStack(IIZ)V
return-void
.end method
.method popBackStack(IIZ)V
.locals 2
if-ltz p1, :cond_0
.line 850
new-instance v0, Landroidx/fragment/app/FragmentManager$PopBackStackState;
const/4 v1, 0x0
invoke-direct {v0, p0, v1, p1, p2}, Landroidx/fragment/app/FragmentManager$PopBackStackState;-><init>(Landroidx/fragment/app/FragmentManager;Ljava/lang/String;II)V
invoke-virtual {p0, v0, p3}, Landroidx/fragment/app/FragmentManager;->enqueueAction(Landroidx/fragment/app/FragmentManager$OpGenerator;Z)V
return-void
.line 848
:cond_0
new-instance p0, Ljava/lang/IllegalArgumentException;
new-instance p2, Ljava/lang/StringBuilder;
const-string p3, "Bad id: "
invoke-direct {p2, p3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.end method
.method public popBackStack(Ljava/lang/String;I)V
.locals 2
.line 814
new-instance v0, Landroidx/fragment/app/FragmentManager$PopBackStackState;
const/4 v1, -0x1
invoke-direct {v0, p0, p1, v1, p2}, Landroidx/fragment/app/FragmentManager$PopBackStackState;-><init>(Landroidx/fragment/app/FragmentManager;Ljava/lang/String;II)V
const/4 p1, 0x0
invoke-virtual {p0, v0, p1}, Landroidx/fragment/app/FragmentManager;->enqueueAction(Landroidx/fragment/app/FragmentManager$OpGenerator;Z)V
return-void
.end method
.method public popBackStackImmediate()Z
.locals 3
const/4 v0, -0x1
const/4 v1, 0x0
const/4 v2, 0x0
.line 797
invoke-direct {p0, v2, v0, v1}, Landroidx/fragment/app/FragmentManager;->popBackStackImmediate(Ljava/lang/String;II)Z
move-result p0
return p0
.end method
.method public popBackStackImmediate(II)Z
.locals 1
if-ltz p1, :cond_0
const/4 v0, 0x0
.line 863
invoke-direct {p0, v0, p1, p2}, Landroidx/fragment/app/FragmentManager;->popBackStackImmediate(Ljava/lang/String;II)Z
move-result p0
return p0
.line 861
:cond_0
new-instance p0, Ljava/lang/IllegalArgumentException;
new-instance p2, Ljava/lang/StringBuilder;
const-string v0, "Bad id: "
invoke-direct {p2, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.end method
.method public popBackStackImmediate(Ljava/lang/String;I)Z
.locals 1
const/4 v0, -0x1
.line 825
invoke-direct {p0, p1, v0, p2}, Landroidx/fragment/app/FragmentManager;->popBackStackImmediate(Ljava/lang/String;II)Z
move-result p0
return p0
.end method
.method popBackStackState(Ljava/util/ArrayList;Ljava/util/ArrayList;Ljava/lang/String;II)Z
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/BackStackRecord;",
">;",
"Ljava/util/ArrayList<",
"Ljava/lang/Boolean;",
">;",
"Ljava/lang/String;",
"II)Z"
}
.end annotation
const/4 v0, 0x1
and-int/2addr p5, v0
const/4 v1, 0x0
if-eqz p5, :cond_0
move p5, v0
goto :goto_0
:cond_0
move p5, v1
.line 2322
:goto_0
invoke-direct {p0, p3, p4, p5}, Landroidx/fragment/app/FragmentManager;->findBackStackIndex(Ljava/lang/String;IZ)I
move-result p3
if-gez p3, :cond_1
return v1
:cond_1
iget-object p4, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2326
invoke-virtual {p4}, Ljava/util/ArrayList;->size()I
move-result p4
sub-int/2addr p4, v0
:goto_1
if-lt p4, p3, :cond_2
iget-object p5, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2327
invoke-virtual {p5, p4}, Ljava/util/ArrayList;->remove(I)Ljava/lang/Object;
move-result-object p5
check-cast p5, Landroidx/fragment/app/BackStackRecord;
invoke-virtual {p1, p5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 2328
invoke-static {v0}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object p5
invoke-virtual {p2, p5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
add-int/lit8 p4, p4, -0x1
goto :goto_1
:cond_2
return v0
.end method
.method public putFragment(Landroid/os/Bundle;Ljava/lang/String;Landroidx/fragment/app/Fragment;)V
.locals 3
.line 1032
iget-object v0, p3, Landroidx/fragment/app/Fragment;->mFragmentManager:Landroidx/fragment/app/FragmentManager;
if-eq v0, p0, :cond_0
.line 1033
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Fragment "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
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}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
.line 1036
:cond_0
iget-object p0, p3, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
invoke-virtual {p1, p2, p0}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method public registerFragmentLifecycleCallbacks(Landroidx/fragment/app/FragmentManager$FragmentLifecycleCallbacks;Z)V
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mLifecycleCallbacksDispatcher:Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;
.line 3337
invoke-virtual {p0, p1, p2}, Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;->registerFragmentLifecycleCallbacks(Landroidx/fragment/app/FragmentManager$FragmentLifecycleCallbacks;Z)V
return-void
.end method
.method removeFragment(Landroidx/fragment/app/Fragment;)V
.locals 3
const/4 v0, 0x2
.line 1516
invoke-static {v0}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v0
if-eqz v0, :cond_0
.line 1517
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "remove: "
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, " nesting="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget v1, p1, Landroidx/fragment/app/Fragment;->mBackStackNesting:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "FragmentManager"
invoke-static {v1, v0}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 1519
:cond_0
invoke-virtual {p1}, Landroidx/fragment/app/Fragment;->isInBackStack()Z
move-result v0
const/4 v1, 0x1
xor-int/2addr v0, v1
.line 1520
iget-boolean v2, p1, Landroidx/fragment/app/Fragment;->mDetached:Z
if-eqz v2, :cond_1
if-eqz v0, :cond_3
:cond_1
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1521
invoke-virtual {v0, p1}, Landroidx/fragment/app/FragmentStore;->removeFragment(Landroidx/fragment/app/Fragment;)V
.line 1522
invoke-direct {p0, p1}, Landroidx/fragment/app/FragmentManager;->isMenuAvailable(Landroidx/fragment/app/Fragment;)Z
move-result v0
if-eqz v0, :cond_2
iput-boolean v1, p0, Landroidx/fragment/app/FragmentManager;->mNeedMenuInvalidate:Z
.line 1525
:cond_2
iput-boolean v1, p1, Landroidx/fragment/app/Fragment;->mRemoving:Z
.line 1526
invoke-direct {p0, p1}, Landroidx/fragment/app/FragmentManager;->setVisibleRemovingFragment(Landroidx/fragment/app/Fragment;)V
:cond_3
return-void
.end method
.method public removeFragmentOnAttachListener(Landroidx/fragment/app/FragmentOnAttachListener;)V
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mOnAttachListeners:Ljava/util/concurrent/CopyOnWriteArrayList;
.line 3382
invoke-virtual {p0, p1}, Ljava/util/concurrent/CopyOnWriteArrayList;->remove(Ljava/lang/Object;)Z
return-void
.end method
.method public removeOnBackStackChangedListener(Landroidx/fragment/app/FragmentManager$OnBackStackChangedListener;)V
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mBackStackChangeListeners:Ljava/util/ArrayList;
if-eqz p0, :cond_0
.line 935
invoke-virtual {p0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
:cond_0
return-void
.end method
.method removeRetainedFragment(Landroidx/fragment/app/Fragment;)V
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 1204
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentManagerViewModel;->removeRetainedFragment(Landroidx/fragment/app/Fragment;)V
return-void
.end method
.method restoreAllState(Landroid/os/Parcelable;Landroidx/fragment/app/FragmentManagerNonConfig;)V
.locals 2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2490
instance-of v0, v0, Landroidx/lifecycle/ViewModelStoreOwner;
if-eqz v0, :cond_0
.line 2491
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "You must use restoreSaveState when your FragmentHostCallback implements ViewModelStoreOwner"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
:cond_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2494
invoke-virtual {v0, p2}, Landroidx/fragment/app/FragmentManagerViewModel;->restoreFromSnapshot(Landroidx/fragment/app/FragmentManagerNonConfig;)V
.line 2495
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentManager;->restoreSaveStateInternal(Landroid/os/Parcelable;)V
return-void
.end method
.method public restoreBackStack(Ljava/lang/String;)V
.locals 1
.line 743
new-instance v0, Landroidx/fragment/app/FragmentManager$RestoreBackStackState;
invoke-direct {v0, p0, p1}, Landroidx/fragment/app/FragmentManager$RestoreBackStackState;-><init>(Landroidx/fragment/app/FragmentManager;Ljava/lang/String;)V
const/4 p1, 0x0
invoke-virtual {p0, v0, p1}, Landroidx/fragment/app/FragmentManager;->enqueueAction(Landroidx/fragment/app/FragmentManager$OpGenerator;Z)V
return-void
.end method
.method restoreBackStackState(Ljava/util/ArrayList;Ljava/util/ArrayList;Ljava/lang/String;)Z
.locals 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/BackStackRecord;",
">;",
"Ljava/util/ArrayList<",
"Ljava/lang/Boolean;",
">;",
"Ljava/lang/String;",
")Z"
}
.end annotation
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStackStates:Ljava/util/Map;
.line 2158
invoke-interface {v0, p3}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p3
check-cast p3, Landroidx/fragment/app/BackStackState;
const/4 v0, 0x0
if-nez p3, :cond_0
return v0
.line 2163
:cond_0
new-instance v1, Ljava/util/HashMap;
invoke-direct {v1}, Ljava/util/HashMap;-><init>()V
.line 2164
invoke-virtual {p1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_1
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_3
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroidx/fragment/app/BackStackRecord;
.line 2165
iget-boolean v4, v3, Landroidx/fragment/app/BackStackRecord;->mBeingSaved:Z
if-eqz v4, :cond_1
.line 2166
iget-object v3, v3, Landroidx/fragment/app/BackStackRecord;->mOps:Ljava/util/ArrayList;
invoke-virtual {v3}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v3
:cond_2
:goto_0
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v4
if-eqz v4, :cond_1
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v4
check-cast v4, Landroidx/fragment/app/FragmentTransaction$Op;
.line 2167
iget-object v5, v4, Landroidx/fragment/app/FragmentTransaction$Op;->mFragment:Landroidx/fragment/app/Fragment;
if-eqz v5, :cond_2
.line 2168
iget-object v5, v4, Landroidx/fragment/app/FragmentTransaction$Op;->mFragment:Landroidx/fragment/app/Fragment;
iget-object v5, v5, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
iget-object v4, v4, Landroidx/fragment/app/FragmentTransaction$Op;->mFragment:Landroidx/fragment/app/Fragment;
invoke-virtual {v1, v5, v4}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_0
.line 2173
:cond_3
invoke-virtual {p3, p0, v1}, Landroidx/fragment/app/BackStackState;->instantiate(Landroidx/fragment/app/FragmentManager;Ljava/util/Map;)Ljava/util/List;
move-result-object p0
.line 2176
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object p0
:cond_4
move p3, v0
:goto_1
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_6
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/fragment/app/BackStackRecord;
.line 2177
invoke-virtual {v1, p1, p2}, Landroidx/fragment/app/BackStackRecord;->generateOps(Ljava/util/ArrayList;Ljava/util/ArrayList;)Z
move-result v1
if-nez v1, :cond_5
if-eqz p3, :cond_4
:cond_5
const/4 p3, 0x1
goto :goto_1
:cond_6
return p3
.end method
.method restoreSaveState(Landroid/os/Parcelable;)V
.locals 2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2499
instance-of v0, v0, Landroidx/savedstate/SavedStateRegistryOwner;
if-eqz v0, :cond_0
.line 2500
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "You cannot use restoreSaveState when your FragmentHostCallback implements SavedStateRegistryOwner."
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
.line 2503
:cond_0
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentManager;->restoreSaveStateInternal(Landroid/os/Parcelable;)V
return-void
.end method
.method restoreSaveStateInternal(Landroid/os/Parcelable;)V
.locals 14
if-nez p1, :cond_0
return-void
.line 2510
:cond_0
check-cast p1, Landroid/os/Bundle;
.line 2513
invoke-virtual {p1}, Landroid/os/Bundle;->keySet()Ljava/util/Set;
move-result-object v0
invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v0
:cond_1
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_2
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
const-string v2, "result_"
.line 2514
invoke-virtual {v1, v2}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_1
.line 2515
invoke-virtual {p1, v1}, Landroid/os/Bundle;->getBundle(Ljava/lang/String;)Landroid/os/Bundle;
move-result-object v2
if-eqz v2, :cond_1
iget-object v3, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2517
invoke-virtual {v3}, Landroidx/fragment/app/FragmentHostCallback;->getContext()Landroid/content/Context;
move-result-object v3
invoke-virtual {v3}, Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v3
invoke-virtual {v2, v3}, Landroid/os/Bundle;->setClassLoader(Ljava/lang/ClassLoader;)V
const/4 v3, 0x7
.line 2518
invoke-virtual {v1, v3}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v1
iget-object v3, p0, Landroidx/fragment/app/FragmentManager;->mResults:Ljava/util/Map;
.line 2519
invoke-interface {v3, v1, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_0
.line 2525
:cond_2
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
.line 2526
invoke-virtual {p1}, Landroid/os/Bundle;->keySet()Ljava/util/Set;
move-result-object v1
invoke-interface {v1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v1
:cond_3
:goto_1
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_4
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
const-string v3, "fragment_"
.line 2527
invoke-virtual {v2, v3}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v3
if-eqz v3, :cond_3
.line 2528
invoke-virtual {p1, v2}, Landroid/os/Bundle;->getBundle(Ljava/lang/String;)Landroid/os/Bundle;
move-result-object v3
if-eqz v3, :cond_3
iget-object v4, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2530
invoke-virtual {v4}, Landroidx/fragment/app/FragmentHostCallback;->getContext()Landroid/content/Context;
move-result-object v4
invoke-virtual {v4}, Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v4
invoke-virtual {v3, v4}, Landroid/os/Bundle;->setClassLoader(Ljava/lang/ClassLoader;)V
const/16 v4, 0x9
.line 2531
invoke-virtual {v2, v4}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v2
.line 2532
invoke-virtual {v0, v2, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_1
:cond_4
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 2536
invoke-virtual {v1, v0}, Landroidx/fragment/app/FragmentStore;->restoreSaveState(Ljava/util/HashMap;)V
const-string v0, "state"
.line 2538
invoke-virtual {p1, v0}, Landroid/os/Bundle;->getParcelable(Ljava/lang/String;)Landroid/os/Parcelable;
move-result-object p1
check-cast p1, Landroidx/fragment/app/FragmentManagerState;
if-nez p1, :cond_5
return-void
:cond_5
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 2543
invoke-virtual {v1}, Landroidx/fragment/app/FragmentStore;->resetActiveFragments()V
.line 2544
iget-object v1, p1, Landroidx/fragment/app/FragmentManagerState;->mActive:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v1
:cond_6
:goto_2
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
const-string v3, "): "
const/4 v4, 0x0
const/4 v5, 0x2
const-string v6, "FragmentManager"
if-eqz v2, :cond_a
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
iget-object v7, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 2546
invoke-virtual {v7, v2, v4}, Landroidx/fragment/app/FragmentStore;->setSavedState(Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle;
move-result-object v2
if-eqz v2, :cond_6
.line 2549
invoke-virtual {v2, v0}, Landroid/os/Bundle;->getParcelable(Ljava/lang/String;)Landroid/os/Parcelable;
move-result-object v4
check-cast v4, Landroidx/fragment/app/FragmentState;
iget-object v7, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2551
iget-object v4, v4, Landroidx/fragment/app/FragmentState;->mWho:Ljava/lang/String;
invoke-virtual {v7, v4}, Landroidx/fragment/app/FragmentManagerViewModel;->findRetainedFragmentByWho(Ljava/lang/String;)Landroidx/fragment/app/Fragment;
move-result-object v4
if-eqz v4, :cond_8
.line 2553
invoke-static {v5}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v7
if-eqz v7, :cond_7
.line 2554
new-instance v7, Ljava/lang/StringBuilder;
const-string v8, "restoreSaveState: re-attaching retained "
invoke-direct {v7, v8}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v7, v4}, 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 2557
:cond_7
new-instance v7, Landroidx/fragment/app/FragmentStateManager;
iget-object v8, p0, Landroidx/fragment/app/FragmentManager;->mLifecycleCallbacksDispatcher:Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;
iget-object v9, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
invoke-direct {v7, v8, v9, v4, v2}, Landroidx/fragment/app/FragmentStateManager;-><init>(Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;Landroidx/fragment/app/FragmentStore;Landroidx/fragment/app/Fragment;Landroid/os/Bundle;)V
goto :goto_3
.line 2560
:cond_8
new-instance v7, Landroidx/fragment/app/FragmentStateManager;
iget-object v9, p0, Landroidx/fragment/app/FragmentManager;->mLifecycleCallbacksDispatcher:Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;
iget-object v10, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
iget-object v4, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2561
invoke-virtual {v4}, Landroidx/fragment/app/FragmentHostCallback;->getContext()Landroid/content/Context;
move-result-object v4
invoke-virtual {v4}, Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v11
.line 2562
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->getFragmentFactory()Landroidx/fragment/app/FragmentFactory;
move-result-object v12
move-object v8, v7
move-object v13, v2
invoke-direct/range {v8 .. v13}, Landroidx/fragment/app/FragmentStateManager;-><init>(Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;Landroidx/fragment/app/FragmentStore;Ljava/lang/ClassLoader;Landroidx/fragment/app/FragmentFactory;Landroid/os/Bundle;)V
.line 2564
:goto_3
invoke-virtual {v7}, Landroidx/fragment/app/FragmentStateManager;->getFragment()Landroidx/fragment/app/Fragment;
move-result-object v4
.line 2565
iput-object v2, v4, Landroidx/fragment/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle;
.line 2566
iput-object p0, v4, Landroidx/fragment/app/Fragment;->mFragmentManager:Landroidx/fragment/app/FragmentManager;
.line 2567
invoke-static {v5}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v2
if-eqz v2, :cond_9
.line 2568
new-instance v2, Ljava/lang/StringBuilder;
const-string v5, "restoreSaveState: active ("
invoke-direct {v2, v5}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-object v5, v4, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, v4}, 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 {v6, v2}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
:cond_9
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2570
invoke-virtual {v2}, Landroidx/fragment/app/FragmentHostCallback;->getContext()Landroid/content/Context;
move-result-object v2
invoke-virtual {v2}, Landroid/content/Context;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v2
invoke-virtual {v7, v2}, Landroidx/fragment/app/FragmentStateManager;->restoreState(Ljava/lang/ClassLoader;)V
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 2571
invoke-virtual {v2, v7}, Landroidx/fragment/app/FragmentStore;->makeActive(Landroidx/fragment/app/FragmentStateManager;)V
iget v2, p0, Landroidx/fragment/app/FragmentManager;->mCurState:I
.line 2575
invoke-virtual {v7, v2}, Landroidx/fragment/app/FragmentStateManager;->setFragmentManagerState(I)V
goto/16 :goto_2
:cond_a
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2581
invoke-virtual {v0}, Landroidx/fragment/app/FragmentManagerViewModel;->getRetainedFragments()Ljava/util/Collection;
move-result-object v0
invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
move-result-object v0
:cond_b
:goto_4
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_d
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroidx/fragment/app/Fragment;
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 2582
iget-object v7, v1, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
invoke-virtual {v2, v7}, Landroidx/fragment/app/FragmentStore;->containsActiveFragment(Ljava/lang/String;)Z
move-result v2
if-nez v2, :cond_b
.line 2583
invoke-static {v5}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v2
if-eqz v2, :cond_c
.line 2584
new-instance v2, Ljava/lang/StringBuilder;
const-string v7, "Discarding retained Fragment "
invoke-direct {v2, v7}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v2
const-string v7, " that was not found in the set of active Fragments "
invoke-virtual {v2, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
iget-object v7, p1, Landroidx/fragment/app/FragmentManagerState;->mActive:Ljava/util/ArrayList;
invoke-virtual {v2, v7}, 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 {v6, v2}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
:cond_c
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2587
invoke-virtual {v2, v1}, Landroidx/fragment/app/FragmentManagerViewModel;->removeRetainedFragment(Landroidx/fragment/app/Fragment;)V
.line 2591
iput-object p0, v1, Landroidx/fragment/app/Fragment;->mFragmentManager:Landroidx/fragment/app/FragmentManager;
.line 2592
new-instance v2, Landroidx/fragment/app/FragmentStateManager;
iget-object v7, p0, Landroidx/fragment/app/FragmentManager;->mLifecycleCallbacksDispatcher:Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;
iget-object v8, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
invoke-direct {v2, v7, v8, v1}, Landroidx/fragment/app/FragmentStateManager;-><init>(Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;Landroidx/fragment/app/FragmentStore;Landroidx/fragment/app/Fragment;)V
const/4 v7, 0x1
.line 2594
invoke-virtual {v2, v7}, Landroidx/fragment/app/FragmentStateManager;->setFragmentManagerState(I)V
.line 2595
invoke-virtual {v2}, Landroidx/fragment/app/FragmentStateManager;->moveToExpectedState()V
.line 2596
iput-boolean v7, v1, Landroidx/fragment/app/Fragment;->mRemoving:Z
.line 2597
invoke-virtual {v2}, Landroidx/fragment/app/FragmentStateManager;->moveToExpectedState()V
goto :goto_4
:cond_d
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 2602
iget-object v1, p1, Landroidx/fragment/app/FragmentManagerState;->mAdded:Ljava/util/ArrayList;
invoke-virtual {v0, v1}, Landroidx/fragment/app/FragmentStore;->restoreAddedFragments(Ljava/util/List;)V
.line 2605
iget-object v0, p1, Landroidx/fragment/app/FragmentManagerState;->mBackStack:[Landroidx/fragment/app/BackStackRecordState;
const/4 v1, 0x0
if-eqz v0, :cond_f
.line 2606
new-instance v0, Ljava/util/ArrayList;
iget-object v2, p1, Landroidx/fragment/app/FragmentManagerState;->mBackStack:[Landroidx/fragment/app/BackStackRecordState;
array-length v2, v2
invoke-direct {v0, v2}, Ljava/util/ArrayList;-><init>(I)V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
move v0, v1
.line 2607
:goto_5
iget-object v2, p1, Landroidx/fragment/app/FragmentManagerState;->mBackStack:[Landroidx/fragment/app/BackStackRecordState;
array-length v2, v2
if-ge v0, v2, :cond_10
.line 2608
iget-object v2, p1, Landroidx/fragment/app/FragmentManagerState;->mBackStack:[Landroidx/fragment/app/BackStackRecordState;
aget-object v2, v2, v0
invoke-virtual {v2, p0}, Landroidx/fragment/app/BackStackRecordState;->instantiate(Landroidx/fragment/app/FragmentManager;)Landroidx/fragment/app/BackStackRecord;
move-result-object v2
.line 2609
invoke-static {v5}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v4
if-eqz v4, :cond_e
.line 2610
new-instance v4, Ljava/lang/StringBuilder;
const-string v7, "restoreAllState: back stack #"
invoke-direct {v4, v7}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v4
const-string v7, " (index "
invoke-virtual {v4, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
iget v7, v2, Landroidx/fragment/app/BackStackRecord;->mIndex:I
invoke-virtual {v4, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v2}, 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 {v6, v4}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 2612
new-instance v4, Landroidx/fragment/app/LogWriter;
invoke-direct {v4, v6}, Landroidx/fragment/app/LogWriter;-><init>(Ljava/lang/String;)V
.line 2613
new-instance v7, Ljava/io/PrintWriter;
invoke-direct {v7, v4}, Ljava/io/PrintWriter;-><init>(Ljava/io/Writer;)V
const-string v4, " "
.line 2614
invoke-virtual {v2, v4, v7, v1}, Landroidx/fragment/app/BackStackRecord;->dump(Ljava/lang/String;Ljava/io/PrintWriter;Z)V
.line 2615
invoke-virtual {v7}, Ljava/io/PrintWriter;->close()V
:cond_e
iget-object v4, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2617
invoke-virtual {v4, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
add-int/lit8 v0, v0, 0x1
goto :goto_5
:cond_f
iput-object v4, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
:cond_10
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mBackStackIndex:Ljava/util/concurrent/atomic/AtomicInteger;
.line 2622
iget v2, p1, Landroidx/fragment/app/FragmentManagerState;->mBackStackIndex:I
invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicInteger;->set(I)V
.line 2624
iget-object v0, p1, Landroidx/fragment/app/FragmentManagerState;->mPrimaryNavActiveWho:Ljava/lang/String;
if-eqz v0, :cond_11
.line 2625
iget-object v0, p1, Landroidx/fragment/app/FragmentManagerState;->mPrimaryNavActiveWho:Ljava/lang/String;
invoke-virtual {p0, v0}, Landroidx/fragment/app/FragmentManager;->findActiveFragment(Ljava/lang/String;)Landroidx/fragment/app/Fragment;
move-result-object v0
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mPrimaryNav:Landroidx/fragment/app/Fragment;
.line 2626
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchParentPrimaryNavigationFragmentChanged(Landroidx/fragment/app/Fragment;)V
.line 2629
:cond_11
iget-object v0, p1, Landroidx/fragment/app/FragmentManagerState;->mBackStackStateKeys:Ljava/util/ArrayList;
if-eqz v0, :cond_12
.line 2631
:goto_6
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
move-result v2
if-ge v1, v2, :cond_12
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mBackStackStates:Ljava/util/Map;
.line 2632
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/String;
iget-object v4, p1, Landroidx/fragment/app/FragmentManagerState;->mBackStackStates:Ljava/util/ArrayList;
invoke-virtual {v4, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v4
check-cast v4, Landroidx/fragment/app/BackStackState;
invoke-interface {v2, v3, v4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
add-int/lit8 v1, v1, 0x1
goto :goto_6
.line 2636
:cond_12
new-instance v0, Ljava/util/ArrayDeque;
iget-object p1, p1, Landroidx/fragment/app/FragmentManagerState;->mLaunchedFragments:Ljava/util/ArrayList;
invoke-direct {v0, p1}, Ljava/util/ArrayDeque;-><init>(Ljava/util/Collection;)V
iput-object v0, p0, Landroidx/fragment/app/FragmentManager;->mLaunchedFragments:Ljava/util/ArrayDeque;
return-void
.end method
.method retainNonConfig()Landroidx/fragment/app/FragmentManagerNonConfig;
.locals 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2406
instance-of v0, v0, Landroidx/lifecycle/ViewModelStoreOwner;
if-eqz v0, :cond_0
.line 2407
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "You cannot use retainNonConfig when your FragmentHostCallback implements ViewModelStoreOwner."
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2410
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManagerViewModel;->getSnapshot()Landroidx/fragment/app/FragmentManagerNonConfig;
move-result-object p0
return-object p0
.end method
.method saveAllState()Landroid/os/Parcelable;
.locals 2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 2414
instance-of v0, v0, Landroidx/savedstate/SavedStateRegistryOwner;
if-eqz v0, :cond_0
.line 2415
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "You cannot use saveAllState when your FragmentHostCallback implements SavedStateRegistryOwner."
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
.line 2418
:cond_0
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager;->saveAllStateInternal()Landroid/os/Bundle;
move-result-object p0
.line 2419
invoke-virtual {p0}, Landroid/os/Bundle;->isEmpty()Z
move-result v0
if-eqz v0, :cond_1
const/4 p0, 0x0
:cond_1
return-object p0
.end method
.method saveAllStateInternal()Landroid/os/Bundle;
.locals 11
.line 2424
new-instance v0, Landroid/os/Bundle;
invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
.line 2427
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->forcePostponedTransactions()V
.line 2428
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->endAnimatingAwayFragments()V
const/4 v1, 0x1
.line 2429
invoke-virtual {p0, v1}, Landroidx/fragment/app/FragmentManager;->execPendingActions(Z)Z
iput-boolean v1, p0, Landroidx/fragment/app/FragmentManager;->mStateSaved:Z
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mNonConfig:Landroidx/fragment/app/FragmentManagerViewModel;
.line 2432
invoke-virtual {v2, v1}, Landroidx/fragment/app/FragmentManagerViewModel;->setIsStateSaved(Z)V
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 2435
invoke-virtual {v1}, Landroidx/fragment/app/FragmentStore;->saveActiveFragments()Ljava/util/ArrayList;
move-result-object v1
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 2438
invoke-virtual {v2}, Landroidx/fragment/app/FragmentStore;->getAllSavedState()Ljava/util/HashMap;
move-result-object v2
.line 2439
invoke-virtual {v2}, Ljava/util/HashMap;->isEmpty()Z
move-result v3
const-string v4, "FragmentManager"
const/4 v5, 0x2
if-eqz v3, :cond_0
.line 2440
invoke-static {v5}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result p0
if-eqz p0, :cond_6
const-string p0, "saveAllState: no fragments!"
.line 2441
invoke-static {v4, p0}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
goto/16 :goto_3
:cond_0
iget-object v3, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 2445
invoke-virtual {v3}, Landroidx/fragment/app/FragmentStore;->saveAddedFragments()Ljava/util/ArrayList;
move-result-object v3
iget-object v6, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
if-eqz v6, :cond_2
.line 2450
invoke-virtual {v6}, Ljava/util/ArrayList;->size()I
move-result v6
if-lez v6, :cond_2
.line 2452
new-array v7, v6, [Landroidx/fragment/app/BackStackRecordState;
const/4 v8, 0x0
:goto_0
if-ge v8, v6, :cond_3
.line 2454
new-instance v9, Landroidx/fragment/app/BackStackRecordState;
iget-object v10, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
invoke-virtual {v10, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v10
check-cast v10, Landroidx/fragment/app/BackStackRecord;
invoke-direct {v9, v10}, Landroidx/fragment/app/BackStackRecordState;-><init>(Landroidx/fragment/app/BackStackRecord;)V
aput-object v9, v7, v8
.line 2455
invoke-static {v5}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result v9
if-eqz v9, :cond_1
.line 2456
new-instance v9, Ljava/lang/StringBuilder;
const-string v10, "saveAllState: adding back stack #"
invoke-direct {v9, v10}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v9, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v9
const-string v10, ": "
invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v9
iget-object v10, p0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2457
invoke-virtual {v10, v8}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v10
invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v9
invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v9
.line 2456
invoke-static {v4, v9}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
:cond_1
add-int/lit8 v8, v8, 0x1
goto :goto_0
:cond_2
const/4 v7, 0x0
.line 2463
:cond_3
new-instance v4, Landroidx/fragment/app/FragmentManagerState;
invoke-direct {v4}, Landroidx/fragment/app/FragmentManagerState;-><init>()V
.line 2464
iput-object v1, v4, Landroidx/fragment/app/FragmentManagerState;->mActive:Ljava/util/ArrayList;
.line 2465
iput-object v3, v4, Landroidx/fragment/app/FragmentManagerState;->mAdded:Ljava/util/ArrayList;
.line 2466
iput-object v7, v4, Landroidx/fragment/app/FragmentManagerState;->mBackStack:[Landroidx/fragment/app/BackStackRecordState;
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mBackStackIndex:Ljava/util/concurrent/atomic/AtomicInteger;
.line 2467
invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicInteger;->get()I
move-result v1
iput v1, v4, Landroidx/fragment/app/FragmentManagerState;->mBackStackIndex:I
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mPrimaryNav:Landroidx/fragment/app/Fragment;
if-eqz v1, :cond_4
.line 2469
iget-object v1, v1, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
iput-object v1, v4, Landroidx/fragment/app/FragmentManagerState;->mPrimaryNavActiveWho:Ljava/lang/String;
.line 2471
:cond_4
iget-object v1, v4, Landroidx/fragment/app/FragmentManagerState;->mBackStackStateKeys:Ljava/util/ArrayList;
iget-object v3, p0, Landroidx/fragment/app/FragmentManager;->mBackStackStates:Ljava/util/Map;
invoke-interface {v3}, Ljava/util/Map;->keySet()Ljava/util/Set;
move-result-object v3
invoke-virtual {v1, v3}, Ljava/util/ArrayList;->addAll(Ljava/util/Collection;)Z
.line 2472
iget-object v1, v4, Landroidx/fragment/app/FragmentManagerState;->mBackStackStates:Ljava/util/ArrayList;
iget-object v3, p0, Landroidx/fragment/app/FragmentManager;->mBackStackStates:Ljava/util/Map;
invoke-interface {v3}, Ljava/util/Map;->values()Ljava/util/Collection;
move-result-object v3
invoke-virtual {v1, v3}, Ljava/util/ArrayList;->addAll(Ljava/util/Collection;)Z
.line 2473
new-instance v1, Ljava/util/ArrayList;
iget-object v3, p0, Landroidx/fragment/app/FragmentManager;->mLaunchedFragments:Ljava/util/ArrayDeque;
invoke-direct {v1, v3}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
iput-object v1, v4, Landroidx/fragment/app/FragmentManagerState;->mLaunchedFragments:Ljava/util/ArrayList;
const-string v1, "state"
.line 2474
invoke-virtual {v0, v1, v4}, Landroid/os/Bundle;->putParcelable(Ljava/lang/String;Landroid/os/Parcelable;)V
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mResults:Ljava/util/Map;
.line 2476
invoke-interface {v1}, Ljava/util/Map;->keySet()Ljava/util/Set;
move-result-object v1
invoke-interface {v1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_1
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_5
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/String;
.line 2477
new-instance v4, Ljava/lang/StringBuilder;
const-string v5, "result_"
invoke-direct {v4, v5}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
iget-object v5, p0, Landroidx/fragment/app/FragmentManager;->mResults:Ljava/util/Map;
invoke-interface {v5, v3}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroid/os/Bundle;
invoke-virtual {v0, v4, v3}, Landroid/os/Bundle;->putBundle(Ljava/lang/String;Landroid/os/Bundle;)V
goto :goto_1
.line 2480
:cond_5
invoke-virtual {v2}, Ljava/util/HashMap;->keySet()Ljava/util/Set;
move-result-object p0
invoke-interface {p0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p0
:goto_2
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_6
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
.line 2481
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, "fragment_"
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v3, v1}, 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-virtual {v2, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/os/Bundle;
invoke-virtual {v0, v3, v1}, Landroid/os/Bundle;->putBundle(Ljava/lang/String;Landroid/os/Bundle;)V
goto :goto_2
:cond_6
:goto_3
return-object v0
.end method
.method public saveBackStack(Ljava/lang/String;)V
.locals 1
.line 760
new-instance v0, Landroidx/fragment/app/FragmentManager$SaveBackStackState;
invoke-direct {v0, p0, p1}, Landroidx/fragment/app/FragmentManager$SaveBackStackState;-><init>(Landroidx/fragment/app/FragmentManager;Ljava/lang/String;)V
const/4 p1, 0x0
invoke-virtual {p0, v0, p1}, Landroidx/fragment/app/FragmentManager;->enqueueAction(Landroidx/fragment/app/FragmentManager$OpGenerator;Z)V
return-void
.end method
.method saveBackStackState(Ljava/util/ArrayList;Ljava/util/ArrayList;Ljava/lang/String;)Z
.locals 16
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/ArrayList<",
"Landroidx/fragment/app/BackStackRecord;",
">;",
"Ljava/util/ArrayList<",
"Ljava/lang/Boolean;",
">;",
"Ljava/lang/String;",
")Z"
}
.end annotation
move-object/from16 v0, p0
move-object/from16 v1, p3
const/4 v2, -0x1
const/4 v3, 0x1
.line 2184
invoke-direct {v0, v1, v2, v3}, Landroidx/fragment/app/FragmentManager;->findBackStackIndex(Ljava/lang/String;IZ)I
move-result v2
if-gez v2, :cond_0
const/4 v0, 0x0
return v0
:cond_0
move v4, v2
:goto_0
iget-object v5, v0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2193
invoke-virtual {v5}, Ljava/util/ArrayList;->size()I
move-result v5
const-string v6, "saveBackStack(\""
if-ge v4, v5, :cond_2
iget-object v5, v0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2194
invoke-virtual {v5, v4}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v5
check-cast v5, Landroidx/fragment/app/BackStackRecord;
.line 2195
iget-boolean v7, v5, Landroidx/fragment/app/BackStackRecord;->mReorderingAllowed:Z
if-nez v7, :cond_1
.line 2196
new-instance v7, Ljava/lang/IllegalArgumentException;
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8, v6}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
const-string v8, "\") included FragmentTransactions must use setReorderingAllowed(true) to ensure that the back stack can be restored as an atomic operation. Found "
invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v5
const-string v6, " that did not use setReorderingAllowed(true)."
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
invoke-direct {v7, v5}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
invoke-direct {v0, v7}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
:cond_1
add-int/lit8 v4, v4, 0x1
goto :goto_0
.line 2206
:cond_2
new-instance v4, Ljava/util/HashSet;
invoke-direct {v4}, Ljava/util/HashSet;-><init>()V
move v5, v2
:goto_1
iget-object v7, v0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2207
invoke-virtual {v7}, Ljava/util/ArrayList;->size()I
move-result v7
if-ge v5, v7, :cond_b
iget-object v7, v0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2208
invoke-virtual {v7, v5}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
move-result-object v7
check-cast v7, Landroidx/fragment/app/BackStackRecord;
.line 2209
new-instance v8, Ljava/util/HashSet;
invoke-direct {v8}, Ljava/util/HashSet;-><init>()V
.line 2210
new-instance v9, Ljava/util/HashSet;
invoke-direct {v9}, Ljava/util/HashSet;-><init>()V
.line 2211
iget-object v10, v7, Landroidx/fragment/app/BackStackRecord;->mOps:Ljava/util/ArrayList;
invoke-virtual {v10}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v10
:cond_3
:goto_2
invoke-interface {v10}, Ljava/util/Iterator;->hasNext()Z
move-result v11
if-eqz v11, :cond_8
invoke-interface {v10}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v11
check-cast v11, Landroidx/fragment/app/FragmentTransaction$Op;
.line 2212
iget-object v12, v11, Landroidx/fragment/app/FragmentTransaction$Op;->mFragment:Landroidx/fragment/app/Fragment;
if-nez v12, :cond_4
goto :goto_2
.line 2216
:cond_4
iget-boolean v13, v11, Landroidx/fragment/app/FragmentTransaction$Op;->mFromExpandedOp:Z
const/4 v14, 0x2
if-eqz v13, :cond_5
iget v13, v11, Landroidx/fragment/app/FragmentTransaction$Op;->mCmd:I
if-eq v13, v3, :cond_5
iget v13, v11, Landroidx/fragment/app/FragmentTransaction$Op;->mCmd:I
if-eq v13, v14, :cond_5
iget v13, v11, Landroidx/fragment/app/FragmentTransaction$Op;->mCmd:I
const/16 v15, 0x8
if-ne v13, v15, :cond_6
.line 2219
:cond_5
invoke-virtual {v4, v12}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z
.line 2220
invoke-virtual {v8, v12}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z
.line 2222
:cond_6
iget v13, v11, Landroidx/fragment/app/FragmentTransaction$Op;->mCmd:I
if-eq v13, v3, :cond_7
iget v11, v11, Landroidx/fragment/app/FragmentTransaction$Op;->mCmd:I
if-ne v11, v14, :cond_3
.line 2224
:cond_7
invoke-virtual {v9, v12}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z
goto :goto_2
.line 2227
:cond_8
invoke-virtual {v8, v9}, Ljava/util/HashSet;->removeAll(Ljava/util/Collection;)Z
.line 2228
invoke-virtual {v8}, Ljava/util/HashSet;->isEmpty()Z
move-result v9
if-nez v9, :cond_a
.line 2229
new-instance v9, Ljava/lang/IllegalArgumentException;
new-instance v10, Ljava/lang/StringBuilder;
invoke-direct {v10, v6}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v10, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v10
const-string v11, "\") must be self contained and not reference fragments from non-saved FragmentTransactions. Found reference to fragment"
invoke-virtual {v10, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v10
.line 2232
invoke-virtual {v8}, Ljava/util/HashSet;->size()I
move-result v11
if-ne v11, v3, :cond_9
.line 2233
new-instance v11, Ljava/lang/StringBuilder;
const-string v12, " "
invoke-direct {v11, v12}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v8}, Ljava/util/HashSet;->iterator()Ljava/util/Iterator;
move-result-object v8
invoke-interface {v8}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v8
invoke-virtual {v11, v8}, 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
goto :goto_3
.line 2234
:cond_9
new-instance v11, Ljava/lang/StringBuilder;
const-string v12, "s "
invoke-direct {v11, v12}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v11, v8}, 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
:goto_3
invoke-virtual {v10, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v8
const-string v10, " in "
invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v8
invoke-virtual {v8, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v7
const-string v8, " that were previously added to the FragmentManager through a separate FragmentTransaction."
invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v7
invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v7
invoke-direct {v9, v7}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
.line 2229
invoke-direct {v0, v9}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
:cond_a
add-int/lit8 v5, v5, 0x1
goto/16 :goto_1
.line 2242
:cond_b
new-instance v5, Ljava/util/ArrayDeque;
invoke-direct {v5, v4}, Ljava/util/ArrayDeque;-><init>(Ljava/util/Collection;)V
.line 2243
:cond_c
invoke-virtual {v5}, Ljava/util/ArrayDeque;->isEmpty()Z
move-result v7
if-nez v7, :cond_10
.line 2244
invoke-virtual {v5}, Ljava/util/ArrayDeque;->removeFirst()Ljava/lang/Object;
move-result-object v7
check-cast v7, Landroidx/fragment/app/Fragment;
.line 2245
iget-boolean v8, v7, Landroidx/fragment/app/Fragment;->mRetainInstance:Z
if-eqz v8, :cond_e
.line 2246
new-instance v8, Ljava/lang/IllegalArgumentException;
new-instance v9, Ljava/lang/StringBuilder;
invoke-direct {v9, v6}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v9, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v9
const-string v10, "\") must not contain retained fragments. Found "
invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v9
.line 2248
invoke-virtual {v4, v7}, Ljava/util/HashSet;->contains(Ljava/lang/Object;)Z
move-result v10
if-eqz v10, :cond_d
const-string v10, "direct reference to retained "
goto :goto_4
:cond_d
const-string v10, "retained child "
.line 2250
:goto_4
invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v9
const-string v10, "fragment "
invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v9
invoke-virtual {v9, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v9
invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v9
invoke-direct {v8, v9}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
.line 2246
invoke-direct {v0, v8}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
.line 2254
:cond_e
iget-object v7, v7, Landroidx/fragment/app/Fragment;->mChildFragmentManager:Landroidx/fragment/app/FragmentManager;
invoke-virtual {v7}, Landroidx/fragment/app/FragmentManager;->getActiveFragments()Ljava/util/List;
move-result-object v7
invoke-interface {v7}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v7
:cond_f
:goto_5
invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z
move-result v8
if-eqz v8, :cond_c
invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v8
check-cast v8, Landroidx/fragment/app/Fragment;
if-eqz v8, :cond_f
.line 2256
invoke-virtual {v5, v8}, Ljava/util/ArrayDeque;->addLast(Ljava/lang/Object;)V
goto :goto_5
.line 2262
:cond_10
new-instance v5, Ljava/util/ArrayList;
invoke-direct {v5}, Ljava/util/ArrayList;-><init>()V
.line 2263
invoke-virtual {v4}, Ljava/util/HashSet;->iterator()Ljava/util/Iterator;
move-result-object v4
:goto_6
invoke-interface {v4}, Ljava/util/Iterator;->hasNext()Z
move-result v6
if-eqz v6, :cond_11
invoke-interface {v4}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v6
check-cast v6, Landroidx/fragment/app/Fragment;
.line 2264
iget-object v6, v6, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
invoke-virtual {v5, v6}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
goto :goto_6
.line 2266
:cond_11
new-instance v4, Ljava/util/ArrayList;
iget-object v6, v0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2267
invoke-virtual {v6}, Ljava/util/ArrayList;->size()I
move-result v6
sub-int/2addr v6, v2
invoke-direct {v4, v6}, Ljava/util/ArrayList;-><init>(I)V
move v6, v2
:goto_7
iget-object v7, v0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2269
invoke-virtual {v7}, Ljava/util/ArrayList;->size()I
move-result v7
if-ge v6, v7, :cond_12
const/4 v7, 0x0
.line 2270
invoke-virtual {v4, v7}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
add-int/lit8 v6, v6, 0x1
goto :goto_7
.line 2272
:cond_12
new-instance v6, Landroidx/fragment/app/BackStackState;
invoke-direct {v6, v5, v4}, Landroidx/fragment/app/BackStackState;-><init>(Ljava/util/List;Ljava/util/List;)V
iget-object v5, v0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2274
invoke-virtual {v5}, Ljava/util/ArrayList;->size()I
move-result v5
sub-int/2addr v5, v3
:goto_8
if-lt v5, v2, :cond_13
iget-object v7, v0, Landroidx/fragment/app/FragmentManager;->mBackStack:Ljava/util/ArrayList;
.line 2275
invoke-virtual {v7, v5}, Ljava/util/ArrayList;->remove(I)Ljava/lang/Object;
move-result-object v7
check-cast v7, Landroidx/fragment/app/BackStackRecord;
.line 2278
new-instance v8, Landroidx/fragment/app/BackStackRecord;
invoke-direct {v8, v7}, Landroidx/fragment/app/BackStackRecord;-><init>(Landroidx/fragment/app/BackStackRecord;)V
.line 2279
invoke-virtual {v8}, Landroidx/fragment/app/BackStackRecord;->collapseOps()V
.line 2280
new-instance v9, Landroidx/fragment/app/BackStackRecordState;
invoke-direct {v9, v8}, Landroidx/fragment/app/BackStackRecordState;-><init>(Landroidx/fragment/app/BackStackRecord;)V
sub-int v8, v5, v2
.line 2281
invoke-virtual {v4, v8, v9}, Ljava/util/ArrayList;->set(ILjava/lang/Object;)Ljava/lang/Object;
.line 2285
iput-boolean v3, v7, Landroidx/fragment/app/BackStackRecord;->mBeingSaved:Z
move-object/from16 v8, p1
.line 2286
invoke-virtual {v8, v7}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 2287
invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v7
move-object/from16 v9, p2
invoke-virtual {v9, v7}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
add-int/lit8 v5, v5, -0x1
goto :goto_8
:cond_13
iget-object v0, v0, Landroidx/fragment/app/FragmentManager;->mBackStackStates:Ljava/util/Map;
.line 2289
invoke-interface {v0, v1, v6}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
return v3
.end method
.method public saveFragmentInstanceState(Landroidx/fragment/app/Fragment;)Landroidx/fragment/app/Fragment$SavedState;
.locals 4
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mFragmentStore:Landroidx/fragment/app/FragmentStore;
.line 1251
iget-object v1, p1, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
invoke-virtual {v0, v1}, Landroidx/fragment/app/FragmentStore;->getFragmentStateManager(Ljava/lang/String;)Landroidx/fragment/app/FragmentStateManager;
move-result-object v0
if-eqz v0, :cond_0
.line 1253
invoke-virtual {v0}, Landroidx/fragment/app/FragmentStateManager;->getFragment()Landroidx/fragment/app/Fragment;
move-result-object v1
invoke-virtual {v1, p1}, Landroidx/fragment/app/Fragment;->equals(Ljava/lang/Object;)Z
move-result v1
if-nez v1, :cond_1
.line 1254
:cond_0
new-instance v1, Ljava/lang/IllegalStateException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Fragment "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p1
const-string v2, " is not currently in the FragmentManager"
invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v1, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
invoke-direct {p0, v1}, Landroidx/fragment/app/FragmentManager;->throwException(Ljava/lang/RuntimeException;)V
.line 1257
:cond_1
invoke-virtual {v0}, Landroidx/fragment/app/FragmentStateManager;->saveInstanceState()Landroidx/fragment/app/Fragment$SavedState;
move-result-object p0
return-object p0
.end method
.method scheduleCommit()V
.locals 3
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 1695
monitor-enter v0
:try_start_0
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mPendingActions:Ljava/util/ArrayList;
.line 1696
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v1
const/4 v2, 0x1
if-ne v1, v2, :cond_0
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 1698
invoke-virtual {v1}, Landroidx/fragment/app/FragmentHostCallback;->getHandler()Landroid/os/Handler;
move-result-object v1
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mExecCommit:Ljava/lang/Runnable;
invoke-virtual {v1, v2}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 1699
invoke-virtual {v1}, Landroidx/fragment/app/FragmentHostCallback;->getHandler()Landroid/os/Handler;
move-result-object v1
iget-object v2, p0, Landroidx/fragment/app/FragmentManager;->mExecCommit:Ljava/lang/Runnable;
invoke-virtual {v1, v2}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
.line 1700
invoke-direct {p0}, Landroidx/fragment/app/FragmentManager;->updateOnBackPressedCallbackEnabled()V
.line 1702
:cond_0
monitor-exit v0
return-void
:catchall_0
move-exception p0
monitor-exit v0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
throw p0
.end method
.method setExitAnimationOrder(Landroidx/fragment/app/Fragment;Z)V
.locals 0
.line 1428
invoke-direct {p0, p1}, Landroidx/fragment/app/FragmentManager;->getFragmentContainer(Landroidx/fragment/app/Fragment;)Landroid/view/ViewGroup;
move-result-object p0
if-eqz p0, :cond_0
.line 1430
instance-of p1, p0, Landroidx/fragment/app/FragmentContainerView;
if-eqz p1, :cond_0
.line 1431
check-cast p0, Landroidx/fragment/app/FragmentContainerView;
xor-int/lit8 p1, p2, 0x1
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentContainerView;->setDrawDisappearingViewsLast(Z)V
:cond_0
return-void
.end method
.method public setFragmentFactory(Landroidx/fragment/app/FragmentFactory;)V
.locals 0
iput-object p1, p0, Landroidx/fragment/app/FragmentManager;->mFragmentFactory:Landroidx/fragment/app/FragmentFactory;
return-void
.end method
.method public final setFragmentResult(Ljava/lang/String;Landroid/os/Bundle;)V
.locals 2
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mResultListeners:Ljava/util/Map;
.line 942
invoke-interface {v0, p1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroidx/fragment/app/FragmentManager$LifecycleAwareResultListener;
if-eqz v0, :cond_0
.line 944
sget-object v1, Landroidx/lifecycle/Lifecycle$State;->STARTED:Landroidx/lifecycle/Lifecycle$State;
invoke-virtual {v0, v1}, Landroidx/fragment/app/FragmentManager$LifecycleAwareResultListener;->isAtLeast(Landroidx/lifecycle/Lifecycle$State;)Z
move-result v1
if-eqz v1, :cond_0
.line 945
invoke-virtual {v0, p1, p2}, Landroidx/fragment/app/FragmentManager$LifecycleAwareResultListener;->onFragmentResult(Ljava/lang/String;Landroid/os/Bundle;)V
goto :goto_0
:cond_0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mResults:Ljava/util/Map;
.line 948
invoke-interface {p0, p1, p2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:goto_0
const/4 p0, 0x2
.line 950
invoke-static {p0}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result p0
if-eqz p0, :cond_1
.line 951
new-instance p0, Ljava/lang/StringBuilder;
const-string v0, "Setting fragment result with key "
invoke-direct {p0, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
const-string p1, " and result "
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
const-string p1, "FragmentManager"
invoke-static {p1, p0}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
:cond_1
return-void
.end method
.method public final setFragmentResultListener(Ljava/lang/String;Landroidx/lifecycle/LifecycleOwner;Landroidx/fragment/app/FragmentResultListener;)V
.locals 2
.line 969
invoke-interface {p2}, Landroidx/lifecycle/LifecycleOwner;->getLifecycle()Landroidx/lifecycle/Lifecycle;
move-result-object p2
.line 970
invoke-virtual {p2}, Landroidx/lifecycle/Lifecycle;->getCurrentState()Landroidx/lifecycle/Lifecycle$State;
move-result-object v0
sget-object v1, Landroidx/lifecycle/Lifecycle$State;->DESTROYED:Landroidx/lifecycle/Lifecycle$State;
if-ne v0, v1, :cond_0
return-void
.line 974
:cond_0
new-instance v0, Landroidx/fragment/app/FragmentManager$6;
invoke-direct {v0, p0, p1, p3, p2}, Landroidx/fragment/app/FragmentManager$6;-><init>(Landroidx/fragment/app/FragmentManager;Ljava/lang/String;Landroidx/fragment/app/FragmentResultListener;Landroidx/lifecycle/Lifecycle;)V
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mResultListeners:Ljava/util/Map;
.line 995
new-instance v1, Landroidx/fragment/app/FragmentManager$LifecycleAwareResultListener;
invoke-direct {v1, p2, p3, v0}, Landroidx/fragment/app/FragmentManager$LifecycleAwareResultListener;-><init>(Landroidx/lifecycle/Lifecycle;Landroidx/fragment/app/FragmentResultListener;Landroidx/lifecycle/LifecycleEventObserver;)V
invoke-interface {p0, p1, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Landroidx/fragment/app/FragmentManager$LifecycleAwareResultListener;
if-eqz p0, :cond_1
.line 998
invoke-virtual {p0}, Landroidx/fragment/app/FragmentManager$LifecycleAwareResultListener;->removeObserver()V
:cond_1
const/4 p0, 0x2
.line 1000
invoke-static {p0}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result p0
if-eqz p0, :cond_2
.line 1001
new-instance p0, Ljava/lang/StringBuilder;
const-string v1, "Setting FragmentResultListener with key "
invoke-direct {p0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
const-string p1, " lifecycleOwner "
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p0
const-string p1, " and listener "
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
const-string p1, "FragmentManager"
invoke-static {p1, p0}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 1006
:cond_2
invoke-virtual {p2, v0}, Landroidx/lifecycle/Lifecycle;->addObserver(Landroidx/lifecycle/LifecycleObserver;)V
return-void
.end method
.method setMaxLifecycle(Landroidx/fragment/app/Fragment;Landroidx/lifecycle/Lifecycle$State;)V
.locals 2
.line 3243
iget-object v0, p1, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
invoke-virtual {p0, v0}, Landroidx/fragment/app/FragmentManager;->findActiveFragment(Ljava/lang/String;)Landroidx/fragment/app/Fragment;
move-result-object v0
invoke-virtual {p1, v0}, Landroidx/fragment/app/Fragment;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_1
iget-object v0, p1, Landroidx/fragment/app/Fragment;->mHost:Landroidx/fragment/app/FragmentHostCallback;
if-eqz v0, :cond_0
iget-object v0, p1, Landroidx/fragment/app/Fragment;->mFragmentManager:Landroidx/fragment/app/FragmentManager;
if-ne v0, p0, :cond_1
.line 3248
:cond_0
iput-object p2, p1, Landroidx/fragment/app/Fragment;->mMaxState:Landroidx/lifecycle/Lifecycle$State;
return-void
.line 3245
:cond_1
new-instance p2, Ljava/lang/IllegalArgumentException;
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "Fragment "
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p1
const-string v0, " is not an active fragment of FragmentManager "
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {p2, p0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p2
.end method
.method setPrimaryNavigationFragment(Landroidx/fragment/app/Fragment;)V
.locals 3
if-eqz p1, :cond_1
.line 3202
iget-object v0, p1, Landroidx/fragment/app/Fragment;->mWho:Ljava/lang/String;
invoke-virtual {p0, v0}, Landroidx/fragment/app/FragmentManager;->findActiveFragment(Ljava/lang/String;)Landroidx/fragment/app/Fragment;
move-result-object v0
invoke-virtual {p1, v0}, Landroidx/fragment/app/Fragment;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p1, Landroidx/fragment/app/Fragment;->mHost:Landroidx/fragment/app/FragmentHostCallback;
if-eqz v0, :cond_1
iget-object v0, p1, Landroidx/fragment/app/Fragment;->mFragmentManager:Landroidx/fragment/app/FragmentManager;
if-ne v0, p0, :cond_0
goto :goto_0
.line 3204
:cond_0
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Fragment "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p1
const-string v1, " is not an active fragment of FragmentManager "
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {v0, p0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_1
:goto_0
iget-object v0, p0, Landroidx/fragment/app/FragmentManager;->mPrimaryNav:Landroidx/fragment/app/Fragment;
iput-object p1, p0, Landroidx/fragment/app/FragmentManager;->mPrimaryNav:Landroidx/fragment/app/Fragment;
.line 3209
invoke-direct {p0, v0}, Landroidx/fragment/app/FragmentManager;->dispatchParentPrimaryNavigationFragmentChanged(Landroidx/fragment/app/Fragment;)V
iget-object p1, p0, Landroidx/fragment/app/FragmentManager;->mPrimaryNav:Landroidx/fragment/app/Fragment;
.line 3210
invoke-direct {p0, p1}, Landroidx/fragment/app/FragmentManager;->dispatchParentPrimaryNavigationFragmentChanged(Landroidx/fragment/app/Fragment;)V
return-void
.end method
.method setSpecialEffectsControllerFactory(Landroidx/fragment/app/SpecialEffectsControllerFactory;)V
.locals 0
iput-object p1, p0, Landroidx/fragment/app/FragmentManager;->mSpecialEffectsControllerFactory:Landroidx/fragment/app/SpecialEffectsControllerFactory;
return-void
.end method
.method public setStrictModePolicy(Landroidx/fragment/app/strictmode/FragmentStrictMode$Policy;)V
.locals 0
iput-object p1, p0, Landroidx/fragment/app/FragmentManager;->mStrictModePolicy:Landroidx/fragment/app/strictmode/FragmentStrictMode$Policy;
return-void
.end method
.method showFragment(Landroidx/fragment/app/Fragment;)V
.locals 1
const/4 p0, 0x2
.line 1552
invoke-static {p0}, Landroidx/fragment/app/FragmentManager;->isLoggingEnabled(I)Z
move-result p0
if-eqz p0, :cond_0
new-instance p0, Ljava/lang/StringBuilder;
const-string v0, "show: "
invoke-direct {p0, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
const-string v0, "FragmentManager"
invoke-static {v0, p0}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
.line 1553
:cond_0
iget-boolean p0, p1, Landroidx/fragment/app/Fragment;->mHidden:Z
if-eqz p0, :cond_1
const/4 p0, 0x0
.line 1554
iput-boolean p0, p1, Landroidx/fragment/app/Fragment;->mHidden:Z
.line 1557
iget-boolean p0, p1, Landroidx/fragment/app/Fragment;->mHiddenChanged:Z
xor-int/lit8 p0, p0, 0x1
iput-boolean p0, p1, Landroidx/fragment/app/Fragment;->mHiddenChanged:Z
:cond_1
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 4
.line 1290
new-instance v0, Ljava/lang/StringBuilder;
const/16 v1, 0x80
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(I)V
const-string v1, "FragmentManager{"
.line 1291
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1292
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;
const-string v1, " in "
.line 1293
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
const-string v2, "}"
const-string v3, "{"
if-eqz v1, :cond_0
.line 1295
invoke-virtual {v1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
.line 1296
invoke-virtual {v1}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1297
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mParent:Landroidx/fragment/app/Fragment;
.line 1298
invoke-static {p0}, Ljava/lang/System;->identityHashCode(Ljava/lang/Object;)I
move-result p0
invoke-static {p0}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object p0
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1299
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_0
:cond_0
iget-object v1, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
if-eqz v1, :cond_1
.line 1301
invoke-virtual {v1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
.line 1302
invoke-virtual {v1}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1303
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mHost:Landroidx/fragment/app/FragmentHostCallback;
.line 1304
invoke-static {p0}, Ljava/lang/System;->identityHashCode(Ljava/lang/Object;)I
move-result p0
invoke-static {p0}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object p0
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1305
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_0
:cond_1
const-string p0, "null"
.line 1307
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:goto_0
const-string p0, "}}"
.line 1309
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1310
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method public unregisterFragmentLifecycleCallbacks(Landroidx/fragment/app/FragmentManager$FragmentLifecycleCallbacks;)V
.locals 0
iget-object p0, p0, Landroidx/fragment/app/FragmentManager;->mLifecycleCallbacksDispatcher:Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;
.line 3348
invoke-virtual {p0, p1}, Landroidx/fragment/app/FragmentLifecycleCallbacksDispatcher;->unregisterFragmentLifecycleCallbacks(Landroidx/fragment/app/FragmentManager$FragmentLifecycleCallbacks;)V
return-void
.end method