Rabbit-R1/android (non root)/java/sources/androidx/transition/Scene.java

100 lines
2.9 KiB
Java
Raw Normal View History

2024-05-21 16:08:36 -05:00
package androidx.transition;
import android.content.Context;
import android.util.SparseArray;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
/* loaded from: classes2.dex */
public class Scene {
private Context mContext;
private Runnable mEnterAction;
private Runnable mExitAction;
private View mLayout;
private int mLayoutId;
private ViewGroup mSceneRoot;
public ViewGroup getSceneRoot() {
return this.mSceneRoot;
}
/* JADX INFO: Access modifiers changed from: package-private */
public boolean isCreatedFromLayoutResource() {
return this.mLayoutId > 0;
}
public void setEnterAction(Runnable runnable) {
this.mEnterAction = runnable;
}
public void setExitAction(Runnable runnable) {
this.mExitAction = runnable;
}
public static Scene getSceneForLayout(ViewGroup viewGroup, int i, Context context) {
SparseArray sparseArray = (SparseArray) viewGroup.getTag(R.id.transition_scene_layoutid_cache);
if (sparseArray == null) {
sparseArray = new SparseArray();
viewGroup.setTag(R.id.transition_scene_layoutid_cache, sparseArray);
}
Scene scene = (Scene) sparseArray.get(i);
if (scene != null) {
return scene;
}
Scene scene2 = new Scene(viewGroup, i, context);
sparseArray.put(i, scene2);
return scene2;
}
public Scene(ViewGroup viewGroup) {
this.mLayoutId = -1;
this.mSceneRoot = viewGroup;
}
private Scene(ViewGroup viewGroup, int i, Context context) {
this.mContext = context;
this.mSceneRoot = viewGroup;
this.mLayoutId = i;
}
public Scene(ViewGroup viewGroup, View view) {
this.mLayoutId = -1;
this.mSceneRoot = viewGroup;
this.mLayout = view;
}
public void exit() {
Runnable runnable;
if (getCurrentScene(this.mSceneRoot) != this || (runnable = this.mExitAction) == null) {
return;
}
runnable.run();
}
public void enter() {
if (this.mLayoutId > 0 || this.mLayout != null) {
getSceneRoot().removeAllViews();
if (this.mLayoutId > 0) {
LayoutInflater.from(this.mContext).inflate(this.mLayoutId, this.mSceneRoot);
} else {
this.mSceneRoot.addView(this.mLayout);
}
}
Runnable runnable = this.mEnterAction;
if (runnable != null) {
runnable.run();
}
setCurrentScene(this.mSceneRoot, this);
}
/* JADX INFO: Access modifiers changed from: package-private */
public static void setCurrentScene(ViewGroup viewGroup, Scene scene) {
viewGroup.setTag(R.id.transition_current_scene, scene);
}
public static Scene getCurrentScene(ViewGroup viewGroup) {
return (Scene) viewGroup.getTag(R.id.transition_current_scene);
}
}