package androidx.fragment.app; import android.R; import android.content.Context; import android.content.res.TypedArray; import android.os.Bundle; import android.os.Parcel; import android.os.Parcelable; import android.util.AttributeSet; import android.view.View; import android.widget.FrameLayout; import android.widget.LinearLayout; import android.widget.TabHost; import android.widget.TabWidget; import java.util.ArrayList; @Deprecated /* loaded from: classes2.dex */ public class FragmentTabHost extends TabHost implements TabHost.OnTabChangeListener { private boolean mAttached; private int mContainerId; private Context mContext; private FragmentManager mFragmentManager; private TabInfo mLastTab; private TabHost.OnTabChangeListener mOnTabChangeListener; private FrameLayout mRealTabContent; private final ArrayList mTabs; @Override // android.widget.TabHost @Deprecated public void setOnTabChangedListener(TabHost.OnTabChangeListener onTabChangeListener) { this.mOnTabChangeListener = onTabChangeListener; } /* JADX INFO: Access modifiers changed from: package-private */ /* loaded from: classes2.dex */ public static final class TabInfo { final Bundle args; final Class clss; Fragment fragment; final String tag; TabInfo(String str, Class cls, Bundle bundle) { this.tag = str; this.clss = cls; this.args = bundle; } } /* loaded from: classes2.dex */ static class DummyTabFactory implements TabHost.TabContentFactory { private final Context mContext; public DummyTabFactory(Context context) { this.mContext = context; } @Override // android.widget.TabHost.TabContentFactory public View createTabContent(String str) { View view = new View(this.mContext); view.setMinimumWidth(0); view.setMinimumHeight(0); return view; } } /* JADX INFO: Access modifiers changed from: package-private */ /* loaded from: classes2.dex */ public static class SavedState extends View.BaseSavedState { public static final Parcelable.Creator CREATOR = new Parcelable.Creator() { // from class: androidx.fragment.app.FragmentTabHost.SavedState.1 /* JADX WARN: Can't rename method to resolve collision */ @Override // android.os.Parcelable.Creator public SavedState createFromParcel(Parcel parcel) { return new SavedState(parcel); } /* JADX WARN: Can't rename method to resolve collision */ @Override // android.os.Parcelable.Creator public SavedState[] newArray(int i) { return new SavedState[i]; } }; String curTab; SavedState(Parcelable parcelable) { super(parcelable); } SavedState(Parcel parcel) { super(parcel); this.curTab = parcel.readString(); } @Override // android.view.View.BaseSavedState, android.view.AbsSavedState, android.os.Parcelable public void writeToParcel(Parcel parcel, int i) { super.writeToParcel(parcel, i); parcel.writeString(this.curTab); } public String toString() { return "FragmentTabHost.SavedState{" + Integer.toHexString(System.identityHashCode(this)) + " curTab=" + this.curTab + "}"; } } @Deprecated public FragmentTabHost(Context context) { super(context, null); this.mTabs = new ArrayList<>(); initFragmentTabHost(context, null); } @Deprecated public FragmentTabHost(Context context, AttributeSet attributeSet) { super(context, attributeSet); this.mTabs = new ArrayList<>(); initFragmentTabHost(context, attributeSet); } private void initFragmentTabHost(Context context, AttributeSet attributeSet) { TypedArray obtainStyledAttributes = context.obtainStyledAttributes(attributeSet, new int[]{R.attr.inflatedId}, 0, 0); this.mContainerId = obtainStyledAttributes.getResourceId(0, 0); obtainStyledAttributes.recycle(); super.setOnTabChangedListener(this); } private void ensureHierarchy(Context context) { if (findViewById(R.id.tabs) == null) { LinearLayout linearLayout = new LinearLayout(context); linearLayout.setOrientation(1); addView(linearLayout, new FrameLayout.LayoutParams(-1, -1)); TabWidget tabWidget = new TabWidget(context); tabWidget.setId(R.id.tabs); tabWidget.setOrientation(0); linearLayout.addView(tabWidget, new LinearLayout.LayoutParams(-1, -2, 0.0f)); FrameLayout frameLayout = new FrameLayout(context); frameLayout.setId(R.id.tabcontent); linearLayout.addView(frameLayout, new LinearLayout.LayoutParams(0, 0, 0.0f)); FrameLayout frameLayout2 = new FrameLayout(context); this.mRealTabContent = frameLayout2; frameLayout2.setId(this.mContainerId); linearLayout.addView(frameLayout2, new LinearLayout.LayoutParams(-1, 0, 1.0f)); } } @Override // android.widget.TabHost @Deprecated public void setup() { throw new IllegalStateException("Must call setup() that takes a Context and FragmentManager"); } @Deprecated public void setup(Context context, FragmentManager fragmentManager) { ensureHierarchy(context); super.setup(); this.mContext = context; this.mFragmentManager = fragmentManager; ensureContent(); } @Deprecated public void setup(Context context, FragmentManager fragmentManager, int i) { ensureHierarchy(context); super.setup(); this.mContext = context; this.mFragmentManager = fragmentManager; this.mContainerId = i; ensureContent(); this.mRealTabContent.setId(i); if (getId() == -1) { setId(R.id.tabhost); } } private void ensureContent() { if (this.mRealTabContent == null) { FrameLayout frameLayout = (FrameLayout) findViewById(this.mContainerId); this.mRealTabContent = frameLayout; if (frameLayout == null) { throw new IllegalStateException("No tab content FrameLayout found for id " + this.mContainerId); } } } @Deprecated public void addTab(TabHost.TabSpec tabSpec, Class cls, Bundle bundle) { tabSpec.setContent(new DummyTabFactory(this.mContext)); String tag = tabSpec.getTag(); TabInfo tabInfo = new TabInfo(tag, cls, bundle); if (this.mAttached) { tabInfo.fragment = this.mFragmentManager.findFragmentByTag(tag); if (tabInfo.fragment != null && !tabInfo.fragment.isDetached()) { FragmentTransaction beginTransaction = this.mFragmentManager.beginTransaction(); beginTransaction.detach(tabInfo.fragment); beginTransaction.commit(); } } this.mTabs.add(tabInfo); addTab(tabSpec); } @Override // android.view.ViewGroup, android.view.View @Deprecated protected void onAttachedToWindow() { super.onAttachedToWindow(); String currentTabTag = getCurrentTabTag(); int size = this.mTabs.size(); FragmentTransaction fragmentTransaction = null; for (int i = 0; i < size; i++) { TabInfo tabInfo = this.mTabs.get(i); tabInfo.fragment = this.mFragmentManager.findFragmentByTag(tabInfo.tag); if (tabInfo.fragment != null && !tabInfo.fragment.isDetached()) { if (tabInfo.tag.equals(currentTabTag)) { this.mLastTab = tabInfo; } else { if (fragmentTransaction == null) { fragmentTransaction = this.mFragmentManager.beginTransaction(); } fragmentTransaction.detach(tabInfo.fragment); } } } this.mAttached = true; FragmentTransaction doTabChanged = doTabChanged(currentTabTag, fragmentTransaction); if (doTabChanged != null) { doTabChanged.commit(); this.mFragmentManager.executePendingTransactions(); } } @Override // android.view.ViewGroup, android.view.View @Deprecated protected void onDetachedFromWindow() { super.onDetachedFromWindow(); this.mAttached = false; } @Override // android.view.View @Deprecated protected Parcelable onSaveInstanceState() { SavedState savedState = new SavedState(super.onSaveInstanceState()); savedState.curTab = getCurrentTabTag(); return savedState; } @Override // android.view.View @Deprecated protected void onRestoreInstanceState(Parcelable parcelable) { if (!(parcelable instanceof SavedState)) { super.onRestoreInstanceState(parcelable); return; } SavedState savedState = (SavedState) parcelable; super.onRestoreInstanceState(savedState.getSuperState()); setCurrentTabByTag(savedState.curTab); } @Override // android.widget.TabHost.OnTabChangeListener @Deprecated public void onTabChanged(String str) { FragmentTransaction doTabChanged; if (this.mAttached && (doTabChanged = doTabChanged(str, null)) != null) { doTabChanged.commit(); } TabHost.OnTabChangeListener onTabChangeListener = this.mOnTabChangeListener; if (onTabChangeListener != null) { onTabChangeListener.onTabChanged(str); } } private FragmentTransaction doTabChanged(String str, FragmentTransaction fragmentTransaction) { TabInfo tabInfoForTag = getTabInfoForTag(str); if (this.mLastTab != tabInfoForTag) { if (fragmentTransaction == null) { fragmentTransaction = this.mFragmentManager.beginTransaction(); } TabInfo tabInfo = this.mLastTab; if (tabInfo != null && tabInfo.fragment != null) { fragmentTransaction.detach(this.mLastTab.fragment); } if (tabInfoForTag != null) { if (tabInfoForTag.fragment == null) { tabInfoForTag.fragment = this.mFragmentManager.getFragmentFactory().instantiate(this.mContext.getClassLoader(), tabInfoForTag.clss.getName()); tabInfoForTag.fragment.setArguments(tabInfoForTag.args); fragmentTransaction.add(this.mContainerId, tabInfoForTag.fragment, tabInfoForTag.tag); } else { fragmentTransaction.attach(tabInfoForTag.fragment); } } this.mLastTab = tabInfoForTag; } return fragmentTransaction; } private TabInfo getTabInfoForTag(String str) { int size = this.mTabs.size(); for (int i = 0; i < size; i++) { TabInfo tabInfo = this.mTabs.get(i); if (tabInfo.tag.equals(str)) { return tabInfo; } } return null; } }