package androidx.fragment.app; import android.os.Bundle; import android.os.Parcelable; import android.util.Log; import android.view.View; import android.view.ViewGroup; import androidx.fragment.app.Fragment; import androidx.viewpager.widget.PagerAdapter; import java.util.ArrayList; /* loaded from: classes.dex */ public abstract class FragmentStatePagerAdapter extends PagerAdapter { private static final boolean DEBUG = false; private static final String TAG = "FragmentStatePagerAdapt"; private final FragmentManager mFragmentManager; private FragmentTransaction mCurTransaction = null; private ArrayList mSavedState = new ArrayList<>(); private ArrayList mFragments = new ArrayList<>(); private Fragment mCurrentPrimaryItem = null; public FragmentStatePagerAdapter(FragmentManager fragmentManager) { this.mFragmentManager = fragmentManager; } @Override // androidx.viewpager.widget.PagerAdapter public void destroyItem(ViewGroup viewGroup, int i, Object obj) { Fragment fragment = (Fragment) obj; if (this.mCurTransaction == null) { this.mCurTransaction = this.mFragmentManager.a(); } while (this.mSavedState.size() <= i) { this.mSavedState.add(null); } this.mSavedState.set(i, fragment.isAdded() ? this.mFragmentManager.a(fragment) : null); this.mFragments.set(i, null); this.mCurTransaction.d(fragment); } @Override // androidx.viewpager.widget.PagerAdapter public void finishUpdate(ViewGroup viewGroup) { FragmentTransaction fragmentTransaction = this.mCurTransaction; if (fragmentTransaction != null) { fragmentTransaction.c(); this.mCurTransaction = null; } } public abstract Fragment getItem(int i); @Override // androidx.viewpager.widget.PagerAdapter public Object instantiateItem(ViewGroup viewGroup, int i) { Fragment.SavedState savedState; Fragment fragment; if (this.mFragments.size() > i && (fragment = this.mFragments.get(i)) != null) { return fragment; } if (this.mCurTransaction == null) { this.mCurTransaction = this.mFragmentManager.a(); } Fragment item = getItem(i); if (this.mSavedState.size() > i && (savedState = this.mSavedState.get(i)) != null) { item.setInitialSavedState(savedState); } while (this.mFragments.size() <= i) { this.mFragments.add(null); } item.setMenuVisibility(false); item.setUserVisibleHint(false); this.mFragments.set(i, item); this.mCurTransaction.a(viewGroup.getId(), item); return item; } @Override // androidx.viewpager.widget.PagerAdapter public boolean isViewFromObject(View view, Object obj) { return ((Fragment) obj).getView() == view; } @Override // androidx.viewpager.widget.PagerAdapter public void restoreState(Parcelable parcelable, ClassLoader classLoader) { if (parcelable != null) { Bundle bundle = (Bundle) parcelable; bundle.setClassLoader(classLoader); Parcelable[] parcelableArray = bundle.getParcelableArray("states"); this.mSavedState.clear(); this.mFragments.clear(); if (parcelableArray != null) { for (Parcelable parcelable2 : parcelableArray) { this.mSavedState.add((Fragment.SavedState) parcelable2); } } for (String str : bundle.keySet()) { if (str.startsWith("f")) { int parseInt = Integer.parseInt(str.substring(1)); Fragment a = this.mFragmentManager.a(bundle, str); if (a != null) { while (this.mFragments.size() <= parseInt) { this.mFragments.add(null); } a.setMenuVisibility(false); this.mFragments.set(parseInt, a); } else { Log.w(TAG, "Bad fragment at key " + str); } } } } } @Override // androidx.viewpager.widget.PagerAdapter public Parcelable saveState() { Bundle bundle; if (this.mSavedState.size() > 0) { bundle = new Bundle(); Fragment.SavedState[] savedStateArr = new Fragment.SavedState[this.mSavedState.size()]; this.mSavedState.toArray(savedStateArr); bundle.putParcelableArray("states", savedStateArr); } else { bundle = null; } for (int i = 0; i < this.mFragments.size(); i++) { Fragment fragment = this.mFragments.get(i); if (fragment != null && fragment.isAdded()) { if (bundle == null) { bundle = new Bundle(); } this.mFragmentManager.a(bundle, "f" + i, fragment); } } return bundle; } @Override // androidx.viewpager.widget.PagerAdapter public void setPrimaryItem(ViewGroup viewGroup, int i, Object obj) { Fragment fragment = (Fragment) obj; Fragment fragment2 = this.mCurrentPrimaryItem; if (fragment != fragment2) { if (fragment2 != null) { fragment2.setMenuVisibility(false); this.mCurrentPrimaryItem.setUserVisibleHint(false); } fragment.setMenuVisibility(true); fragment.setUserVisibleHint(true); this.mCurrentPrimaryItem = fragment; } } @Override // androidx.viewpager.widget.PagerAdapter public void startUpdate(ViewGroup viewGroup) { if (viewGroup.getId() != -1) { return; } throw new IllegalStateException("ViewPager with adapter " + this + " requires a view id"); } }