Rabbit-R1/android (non root)/java/sources/androidx/fragment/app/FragmentLifecycleCallbacksDispatcher.java
2024-05-21 17:08:36 -04:00

265 lines
12 KiB
Java

package androidx.fragment.app;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import androidx.fragment.app.FragmentManager;
import java.util.Iterator;
import java.util.concurrent.CopyOnWriteArrayList;
/* JADX INFO: Access modifiers changed from: package-private */
/* loaded from: classes2.dex */
public class FragmentLifecycleCallbacksDispatcher {
private final FragmentManager mFragmentManager;
private final CopyOnWriteArrayList<FragmentLifecycleCallbacksHolder> mLifecycleCallbacks = new CopyOnWriteArrayList<>();
/* JADX INFO: Access modifiers changed from: private */
/* loaded from: classes2.dex */
public static final class FragmentLifecycleCallbacksHolder {
final FragmentManager.FragmentLifecycleCallbacks mCallback;
final boolean mRecursive;
FragmentLifecycleCallbacksHolder(FragmentManager.FragmentLifecycleCallbacks fragmentLifecycleCallbacks, boolean z) {
this.mCallback = fragmentLifecycleCallbacks;
this.mRecursive = z;
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public FragmentLifecycleCallbacksDispatcher(FragmentManager fragmentManager) {
this.mFragmentManager = fragmentManager;
}
public void registerFragmentLifecycleCallbacks(FragmentManager.FragmentLifecycleCallbacks fragmentLifecycleCallbacks, boolean z) {
this.mLifecycleCallbacks.add(new FragmentLifecycleCallbacksHolder(fragmentLifecycleCallbacks, z));
}
public void unregisterFragmentLifecycleCallbacks(FragmentManager.FragmentLifecycleCallbacks fragmentLifecycleCallbacks) {
synchronized (this.mLifecycleCallbacks) {
int size = this.mLifecycleCallbacks.size();
int i = 0;
while (true) {
if (i >= size) {
break;
}
if (this.mLifecycleCallbacks.get(i).mCallback == fragmentLifecycleCallbacks) {
this.mLifecycleCallbacks.remove(i);
break;
}
i++;
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentPreAttached(Fragment fragment, boolean z) {
Context context = this.mFragmentManager.getHost().getContext();
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentPreAttached(fragment, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentPreAttached(this.mFragmentManager, fragment, context);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentAttached(Fragment fragment, boolean z) {
Context context = this.mFragmentManager.getHost().getContext();
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentAttached(fragment, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentAttached(this.mFragmentManager, fragment, context);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentPreCreated(Fragment fragment, Bundle bundle, boolean z) {
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentPreCreated(fragment, bundle, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentPreCreated(this.mFragmentManager, fragment, bundle);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentCreated(Fragment fragment, Bundle bundle, boolean z) {
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentCreated(fragment, bundle, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentCreated(this.mFragmentManager, fragment, bundle);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentActivityCreated(Fragment fragment, Bundle bundle, boolean z) {
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentActivityCreated(fragment, bundle, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentActivityCreated(this.mFragmentManager, fragment, bundle);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentViewCreated(Fragment fragment, View view, Bundle bundle, boolean z) {
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentViewCreated(fragment, view, bundle, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentViewCreated(this.mFragmentManager, fragment, view, bundle);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentStarted(Fragment fragment, boolean z) {
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentStarted(fragment, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentStarted(this.mFragmentManager, fragment);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentResumed(Fragment fragment, boolean z) {
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentResumed(fragment, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentResumed(this.mFragmentManager, fragment);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentPaused(Fragment fragment, boolean z) {
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentPaused(fragment, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentPaused(this.mFragmentManager, fragment);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentStopped(Fragment fragment, boolean z) {
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentStopped(fragment, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentStopped(this.mFragmentManager, fragment);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentSaveInstanceState(Fragment fragment, Bundle bundle, boolean z) {
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentSaveInstanceState(fragment, bundle, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentSaveInstanceState(this.mFragmentManager, fragment, bundle);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentViewDestroyed(Fragment fragment, boolean z) {
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentViewDestroyed(fragment, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentViewDestroyed(this.mFragmentManager, fragment);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentDestroyed(Fragment fragment, boolean z) {
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentDestroyed(fragment, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentDestroyed(this.mFragmentManager, fragment);
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void dispatchOnFragmentDetached(Fragment fragment, boolean z) {
Fragment parent = this.mFragmentManager.getParent();
if (parent != null) {
parent.getParentFragmentManager().getLifecycleCallbacksDispatcher().dispatchOnFragmentDetached(fragment, true);
}
Iterator<FragmentLifecycleCallbacksHolder> it = this.mLifecycleCallbacks.iterator();
while (it.hasNext()) {
FragmentLifecycleCallbacksHolder next = it.next();
if (!z || next.mRecursive) {
next.mCallback.onFragmentDetached(this.mFragmentManager, fragment);
}
}
}
}