package androidx.fragment.app; import android.util.Log; import androidx.core.util.LogWriter; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentManagerImpl; import com.ubtrobot.jimu.robotapi.PeripheralType; import java.io.FileDescriptor; import java.io.PrintWriter; import java.lang.reflect.Modifier; import java.util.ArrayList; /* loaded from: classes.dex */ final class BackStackRecord extends FragmentTransaction implements FragmentManager.BackStackEntry, FragmentManagerImpl.OpGenerator { final FragmentManagerImpl a; int c; int d; int e; int f; int g; int h; boolean i; String k; boolean l; int n; CharSequence o; int p; CharSequence q; ArrayList r; ArrayList s; ArrayList u; ArrayList b = new ArrayList<>(); boolean j = true; int m = -1; boolean t = false; static final class Op { int a; Fragment b; int c; int d; int e; int f; Op() { } Op(int i, Fragment fragment) { this.a = i; this.b = fragment; } } public BackStackRecord(FragmentManagerImpl fragmentManagerImpl) { this.a = fragmentManagerImpl; } public void a(String str, FileDescriptor fileDescriptor, PrintWriter printWriter, String[] strArr) { a(str, printWriter, true); } @Override // androidx.fragment.app.FragmentTransaction public FragmentTransaction b(int i, Fragment fragment) { b(i, fragment, null); return this; } @Override // androidx.fragment.app.FragmentTransaction public FragmentTransaction c(Fragment fragment) { a(new Op(4, fragment)); return this; } @Override // androidx.fragment.app.FragmentTransaction public FragmentTransaction d(Fragment fragment) { a(new Op(3, fragment)); return this; } @Override // androidx.fragment.app.FragmentTransaction public FragmentTransaction e(Fragment fragment) { a(new Op(5, fragment)); return this; } public String f() { return this.k; } boolean g() { for (int i = 0; i < this.b.size(); i++) { if (b(this.b.get(i))) { return true; } } return false; } public void h() { ArrayList arrayList = this.u; if (arrayList != null) { int size = arrayList.size(); for (int i = 0; i < size; i++) { this.u.get(i).run(); } this.u = null; } } public String toString() { StringBuilder sb = new StringBuilder(PeripheralType.SERVO); sb.append("BackStackEntry{"); sb.append(Integer.toHexString(System.identityHashCode(this))); if (this.m >= 0) { sb.append(" #"); sb.append(this.m); } if (this.k != null) { sb.append(" "); sb.append(this.k); } sb.append("}"); return sb.toString(); } public void a(String str, PrintWriter printWriter, boolean z) { String str2; if (z) { printWriter.print(str); printWriter.print("mName="); printWriter.print(this.k); printWriter.print(" mIndex="); printWriter.print(this.m); printWriter.print(" mCommitted="); printWriter.println(this.l); if (this.g != 0) { printWriter.print(str); printWriter.print("mTransition=#"); printWriter.print(Integer.toHexString(this.g)); printWriter.print(" mTransitionStyle=#"); printWriter.println(Integer.toHexString(this.h)); } if (this.c != 0 || this.d != 0) { printWriter.print(str); printWriter.print("mEnterAnim=#"); printWriter.print(Integer.toHexString(this.c)); printWriter.print(" mExitAnim=#"); printWriter.println(Integer.toHexString(this.d)); } if (this.e != 0 || this.f != 0) { printWriter.print(str); printWriter.print("mPopEnterAnim=#"); printWriter.print(Integer.toHexString(this.e)); printWriter.print(" mPopExitAnim=#"); printWriter.println(Integer.toHexString(this.f)); } if (this.n != 0 || this.o != null) { printWriter.print(str); printWriter.print("mBreadCrumbTitleRes=#"); printWriter.print(Integer.toHexString(this.n)); printWriter.print(" mBreadCrumbTitleText="); printWriter.println(this.o); } if (this.p != 0 || this.q != null) { printWriter.print(str); printWriter.print("mBreadCrumbShortTitleRes=#"); printWriter.print(Integer.toHexString(this.p)); printWriter.print(" mBreadCrumbShortTitleText="); printWriter.println(this.q); } } if (this.b.isEmpty()) { return; } printWriter.print(str); printWriter.println("Operations:"); String str3 = str + " "; int size = this.b.size(); for (int i = 0; i < size; i++) { Op op = this.b.get(i); switch (op.a) { case 0: str2 = "NULL"; break; case 1: str2 = "ADD"; break; case 2: str2 = "REPLACE"; break; case 3: str2 = "REMOVE"; break; case 4: str2 = "HIDE"; break; case 5: str2 = "SHOW"; break; case 6: str2 = "DETACH"; break; case 7: str2 = "ATTACH"; break; case 8: str2 = "SET_PRIMARY_NAV"; break; case 9: str2 = "UNSET_PRIMARY_NAV"; break; default: str2 = "cmd=" + op.a; break; } printWriter.print(str); printWriter.print(" Op #"); printWriter.print(i); printWriter.print(": "); printWriter.print(str2); printWriter.print(" "); printWriter.println(op.b); if (z) { if (op.c != 0 || op.d != 0) { printWriter.print(str); printWriter.print("enterAnim=#"); printWriter.print(Integer.toHexString(op.c)); printWriter.print(" exitAnim=#"); printWriter.println(Integer.toHexString(op.d)); } if (op.e != 0 || op.f != 0) { printWriter.print(str); printWriter.print("popEnterAnim=#"); printWriter.print(Integer.toHexString(op.e)); printWriter.print(" popExitAnim=#"); printWriter.println(Integer.toHexString(op.f)); } } } } @Override // androidx.fragment.app.FragmentTransaction public FragmentTransaction b(int i, Fragment fragment, String str) { if (i == 0) { throw new IllegalArgumentException("Must use non-zero containerViewId"); } a(i, fragment, str, 2); return this; } @Override // androidx.fragment.app.FragmentTransaction public void c() { d(); this.a.b((FragmentManagerImpl.OpGenerator) this, true); } public FragmentTransaction d() { if (this.i) { throw new IllegalStateException("This transaction is already being added to the back stack"); } this.j = false; return this; } void e() { int size = this.b.size(); for (int i = 0; i < size; i++) { Op op = this.b.get(i); Fragment fragment = op.b; if (fragment != null) { fragment.setNextTransition(this.g, this.h); } switch (op.a) { case 1: fragment.setNextAnim(op.c); this.a.a(fragment, false); break; case 2: default: throw new IllegalArgumentException("Unknown cmd: " + op.a); case 3: fragment.setNextAnim(op.d); this.a.l(fragment); break; case 4: fragment.setNextAnim(op.d); this.a.f(fragment); break; case 5: fragment.setNextAnim(op.c); this.a.p(fragment); break; case 6: fragment.setNextAnim(op.d); this.a.d(fragment); break; case 7: fragment.setNextAnim(op.c); this.a.b(fragment); break; case 8: this.a.o(fragment); break; case 9: this.a.o(null); break; } if (!this.t && op.a != 1 && fragment != null) { this.a.i(fragment); } } if (this.t) { return; } FragmentManagerImpl fragmentManagerImpl = this.a; fragmentManagerImpl.a(fragmentManagerImpl.l, true); } @Override // androidx.fragment.app.FragmentTransaction public FragmentTransaction b(Fragment fragment) { a(new Op(6, fragment)); return this; } @Override // androidx.fragment.app.FragmentTransaction public int b() { return a(true); } boolean b(int i) { int size = this.b.size(); for (int i2 = 0; i2 < size; i2++) { Fragment fragment = this.b.get(i2).b; int i3 = fragment != null ? fragment.mContainerId : 0; if (i3 != 0 && i3 == i) { return true; } } return false; } void b(boolean z) { for (int size = this.b.size() - 1; size >= 0; size--) { Op op = this.b.get(size); Fragment fragment = op.b; if (fragment != null) { fragment.setNextTransition(FragmentManagerImpl.e(this.g), this.h); } switch (op.a) { case 1: fragment.setNextAnim(op.f); this.a.l(fragment); break; case 2: default: throw new IllegalArgumentException("Unknown cmd: " + op.a); case 3: fragment.setNextAnim(op.e); this.a.a(fragment, false); break; case 4: fragment.setNextAnim(op.e); this.a.p(fragment); break; case 5: fragment.setNextAnim(op.f); this.a.f(fragment); break; case 6: fragment.setNextAnim(op.e); this.a.b(fragment); break; case 7: fragment.setNextAnim(op.f); this.a.d(fragment); break; case 8: this.a.o(null); break; case 9: this.a.o(fragment); break; } if (!this.t && op.a != 3 && fragment != null) { this.a.i(fragment); } } if (this.t || !z) { return; } FragmentManagerImpl fragmentManagerImpl = this.a; fragmentManagerImpl.a(fragmentManagerImpl.l, true); } Fragment b(ArrayList arrayList, Fragment fragment) { for (int i = 0; i < this.b.size(); i++) { Op op = this.b.get(i); int i2 = op.a; if (i2 != 1) { if (i2 != 3) { switch (i2) { case 8: fragment = null; break; case 9: fragment = op.b; break; } } arrayList.add(op.b); } arrayList.remove(op.b); } return fragment; } private static boolean b(Op op) { Fragment fragment = op.b; return (fragment == null || !fragment.mAdded || fragment.mView == null || fragment.mDetached || fragment.mHidden || !fragment.isPostponed()) ? false : true; } void a(Op op) { this.b.add(op); op.c = this.c; op.d = this.d; op.e = this.e; op.f = this.f; } @Override // androidx.fragment.app.FragmentTransaction public FragmentTransaction a(Fragment fragment, String str) { a(0, fragment, str, 1); return this; } @Override // androidx.fragment.app.FragmentTransaction public FragmentTransaction a(int i, Fragment fragment) { a(i, fragment, (String) null, 1); return this; } @Override // androidx.fragment.app.FragmentTransaction public FragmentTransaction a(int i, Fragment fragment, String str) { a(i, fragment, str, 1); return this; } private void a(int i, Fragment fragment, String str, int i2) { Class cls = fragment.getClass(); int modifiers = cls.getModifiers(); if (!cls.isAnonymousClass() && Modifier.isPublic(modifiers) && (!cls.isMemberClass() || Modifier.isStatic(modifiers))) { fragment.mFragmentManager = this.a; if (str != null) { String str2 = fragment.mTag; if (str2 != null && !str.equals(str2)) { throw new IllegalStateException("Can't change tag of fragment " + fragment + ": was " + fragment.mTag + " now " + str); } fragment.mTag = str; } if (i != 0) { if (i != -1) { int i3 = fragment.mFragmentId; if (i3 != 0 && i3 != i) { throw new IllegalStateException("Can't change container ID of fragment " + fragment + ": was " + fragment.mFragmentId + " now " + i); } fragment.mFragmentId = i; fragment.mContainerId = i; } else { throw new IllegalArgumentException("Can't add fragment " + fragment + " with tag " + str + " to container view with no id"); } } a(new Op(i2, fragment)); return; } throw new IllegalStateException("Fragment " + cls.getCanonicalName() + " must be a public static class to be properly recreated from instance state."); } @Override // androidx.fragment.app.FragmentTransaction public FragmentTransaction a(Fragment fragment) { a(new Op(7, fragment)); return this; } @Override // androidx.fragment.app.FragmentTransaction public FragmentTransaction a(String str) { if (this.j) { this.i = true; this.k = str; return this; } throw new IllegalStateException("This FragmentTransaction is not allowed to be added to the back stack."); } void a(int i) { if (this.i) { if (FragmentManagerImpl.F) { Log.v("FragmentManager", "Bump nesting in " + this + " by " + i); } int size = this.b.size(); for (int i2 = 0; i2 < size; i2++) { Op op = this.b.get(i2); Fragment fragment = op.b; if (fragment != null) { fragment.mBackStackNesting += i; if (FragmentManagerImpl.F) { Log.v("FragmentManager", "Bump nesting of " + op.b + " to " + op.b.mBackStackNesting); } } } } } @Override // androidx.fragment.app.FragmentTransaction public int a() { return a(false); } int a(boolean z) { if (!this.l) { if (FragmentManagerImpl.F) { Log.v("FragmentManager", "Commit: " + this); PrintWriter printWriter = new PrintWriter(new LogWriter("FragmentManager")); a(" ", (FileDescriptor) null, printWriter, (String[]) null); printWriter.close(); } this.l = true; if (this.i) { this.m = this.a.b(this); } else { this.m = -1; } this.a.a(this, z); return this.m; } throw new IllegalStateException("commit already called"); } @Override // androidx.fragment.app.FragmentManagerImpl.OpGenerator public boolean a(ArrayList arrayList, ArrayList arrayList2) { if (FragmentManagerImpl.F) { Log.v("FragmentManager", "Run: " + this); } arrayList.add(this); arrayList2.add(false); if (!this.i) { return true; } this.a.a(this); return true; } boolean a(ArrayList arrayList, int i, int i2) { if (i2 == i) { return false; } int size = this.b.size(); int i3 = -1; for (int i4 = 0; i4 < size; i4++) { Fragment fragment = this.b.get(i4).b; int i5 = fragment != null ? fragment.mContainerId : 0; if (i5 != 0 && i5 != i3) { for (int i6 = i; i6 < i2; i6++) { BackStackRecord backStackRecord = arrayList.get(i6); int size2 = backStackRecord.b.size(); for (int i7 = 0; i7 < size2; i7++) { Fragment fragment2 = backStackRecord.b.get(i7).b; if ((fragment2 != null ? fragment2.mContainerId : 0) == i5) { return true; } } } i3 = i5; } } return false; } Fragment a(ArrayList arrayList, Fragment fragment) { Fragment fragment2 = fragment; int i = 0; while (i < this.b.size()) { Op op = this.b.get(i); int i2 = op.a; if (i2 != 1) { if (i2 == 2) { Fragment fragment3 = op.b; int i3 = fragment3.mContainerId; Fragment fragment4 = fragment2; int i4 = i; boolean z = false; for (int size = arrayList.size() - 1; size >= 0; size--) { Fragment fragment5 = arrayList.get(size); if (fragment5.mContainerId == i3) { if (fragment5 == fragment3) { z = true; } else { if (fragment5 == fragment4) { this.b.add(i4, new Op(9, fragment5)); i4++; fragment4 = null; } Op op2 = new Op(3, fragment5); op2.c = op.c; op2.e = op.e; op2.d = op.d; op2.f = op.f; this.b.add(i4, op2); arrayList.remove(fragment5); i4++; } } } if (z) { this.b.remove(i4); i4--; } else { op.a = 1; arrayList.add(fragment3); } i = i4; fragment2 = fragment4; } else if (i2 == 3 || i2 == 6) { arrayList.remove(op.b); Fragment fragment6 = op.b; if (fragment6 == fragment2) { this.b.add(i, new Op(9, fragment6)); i++; fragment2 = null; } } else if (i2 != 7) { if (i2 == 8) { this.b.add(i, new Op(9, fragment2)); i++; fragment2 = op.b; } } i++; } arrayList.add(op.b); i++; } return fragment2; } void a(Fragment.OnStartEnterTransitionListener onStartEnterTransitionListener) { for (int i = 0; i < this.b.size(); i++) { Op op = this.b.get(i); if (b(op)) { op.b.setOnStartEnterTransitionListener(onStartEnterTransitionListener); } } } }