128 lines
4.4 KiB
Java
128 lines
4.4 KiB
Java
|
package androidx.fragment.app;
|
||
|
|
||
|
import android.annotation.SuppressLint;
|
||
|
import android.os.Bundle;
|
||
|
import android.os.Parcel;
|
||
|
import android.os.Parcelable;
|
||
|
import androidx.annotation.NonNull;
|
||
|
@SuppressLint({"BanParcelableUsage"})
|
||
|
public final class FragmentState implements Parcelable {
|
||
|
public static final Parcelable.Creator<FragmentState> CREATOR = new AnonymousClass1();
|
||
|
public final Bundle mArguments;
|
||
|
public final String mClassName;
|
||
|
public final int mContainerId;
|
||
|
public final boolean mDetached;
|
||
|
public final int mFragmentId;
|
||
|
public final boolean mFromLayout;
|
||
|
public final boolean mHidden;
|
||
|
public final int mMaxLifecycleState;
|
||
|
public final boolean mRemoving;
|
||
|
public final boolean mRetainInstance;
|
||
|
public Bundle mSavedFragmentState;
|
||
|
public final String mTag;
|
||
|
public final String mWho;
|
||
|
|
||
|
/* renamed from: androidx.fragment.app.FragmentState$1 reason: invalid class name */
|
||
|
public class AnonymousClass1 implements Parcelable.Creator<FragmentState> {
|
||
|
@Override // android.os.Parcelable.Creator
|
||
|
public FragmentState createFromParcel(Parcel parcel) {
|
||
|
return new FragmentState(parcel);
|
||
|
}
|
||
|
|
||
|
@Override // android.os.Parcelable.Creator
|
||
|
public FragmentState[] newArray(int i) {
|
||
|
return new FragmentState[i];
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public FragmentState(Parcel parcel) {
|
||
|
this.mClassName = parcel.readString();
|
||
|
this.mWho = parcel.readString();
|
||
|
boolean z2 = true;
|
||
|
this.mFromLayout = parcel.readInt() != 0;
|
||
|
this.mFragmentId = parcel.readInt();
|
||
|
this.mContainerId = parcel.readInt();
|
||
|
this.mTag = parcel.readString();
|
||
|
this.mRetainInstance = parcel.readInt() != 0;
|
||
|
this.mRemoving = parcel.readInt() != 0;
|
||
|
this.mDetached = parcel.readInt() != 0;
|
||
|
this.mArguments = parcel.readBundle();
|
||
|
this.mHidden = parcel.readInt() == 0 ? false : z2;
|
||
|
this.mSavedFragmentState = parcel.readBundle();
|
||
|
this.mMaxLifecycleState = parcel.readInt();
|
||
|
}
|
||
|
|
||
|
public FragmentState(Fragment fragment) {
|
||
|
this.mClassName = fragment.getClass().getName();
|
||
|
this.mWho = fragment.mWho;
|
||
|
this.mFromLayout = fragment.mFromLayout;
|
||
|
this.mFragmentId = fragment.mFragmentId;
|
||
|
this.mContainerId = fragment.mContainerId;
|
||
|
this.mTag = fragment.mTag;
|
||
|
this.mRetainInstance = fragment.mRetainInstance;
|
||
|
this.mRemoving = fragment.mRemoving;
|
||
|
this.mDetached = fragment.mDetached;
|
||
|
this.mArguments = fragment.mArguments;
|
||
|
this.mHidden = fragment.mHidden;
|
||
|
this.mMaxLifecycleState = fragment.mMaxState.ordinal();
|
||
|
}
|
||
|
|
||
|
@Override // android.os.Parcelable
|
||
|
public int describeContents() {
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
@Override // java.lang.Object
|
||
|
@NonNull
|
||
|
public String toString() {
|
||
|
StringBuilder sb = new StringBuilder(128);
|
||
|
sb.append("FragmentState{");
|
||
|
sb.append(this.mClassName);
|
||
|
sb.append(" (");
|
||
|
sb.append(this.mWho);
|
||
|
sb.append(")}:");
|
||
|
if (this.mFromLayout) {
|
||
|
sb.append(" fromLayout");
|
||
|
}
|
||
|
if (this.mContainerId != 0) {
|
||
|
sb.append(" id=0x");
|
||
|
sb.append(Integer.toHexString(this.mContainerId));
|
||
|
}
|
||
|
String str = this.mTag;
|
||
|
if (str != null && !str.isEmpty()) {
|
||
|
sb.append(" tag=");
|
||
|
sb.append(this.mTag);
|
||
|
}
|
||
|
if (this.mRetainInstance) {
|
||
|
sb.append(" retainInstance");
|
||
|
}
|
||
|
if (this.mRemoving) {
|
||
|
sb.append(" removing");
|
||
|
}
|
||
|
if (this.mDetached) {
|
||
|
sb.append(" detached");
|
||
|
}
|
||
|
if (this.mHidden) {
|
||
|
sb.append(" hidden");
|
||
|
}
|
||
|
return sb.toString();
|
||
|
}
|
||
|
|
||
|
@Override // android.os.Parcelable
|
||
|
public void writeToParcel(Parcel parcel, int i) {
|
||
|
parcel.writeString(this.mClassName);
|
||
|
parcel.writeString(this.mWho);
|
||
|
parcel.writeInt(this.mFromLayout ? 1 : 0);
|
||
|
parcel.writeInt(this.mFragmentId);
|
||
|
parcel.writeInt(this.mContainerId);
|
||
|
parcel.writeString(this.mTag);
|
||
|
parcel.writeInt(this.mRetainInstance ? 1 : 0);
|
||
|
parcel.writeInt(this.mRemoving ? 1 : 0);
|
||
|
parcel.writeInt(this.mDetached ? 1 : 0);
|
||
|
parcel.writeBundle(this.mArguments);
|
||
|
parcel.writeInt(this.mHidden ? 1 : 0);
|
||
|
parcel.writeBundle(this.mSavedFragmentState);
|
||
|
parcel.writeInt(this.mMaxLifecycleState);
|
||
|
}
|
||
|
}
|