2025-03-31 16:33:42 +02:00

88 lines
3.3 KiB
Java

package androidx.constraintlayout.widget;
import android.content.Context;
import android.content.res.TypedArray;
import android.util.AttributeSet;
import android.view.View;
import android.view.ViewParent;
/* loaded from: classes.dex */
public abstract class VirtualLayout extends ConstraintHelper {
private boolean mApplyElevationOnAttach;
private boolean mApplyVisibilityOnAttach;
public void onMeasure(androidx.constraintlayout.core.widgets.VirtualLayout layout, int widthMeasureSpec, int heightMeasureSpec) {
}
public VirtualLayout(Context context) {
super(context);
}
public VirtualLayout(Context context, AttributeSet attrs) {
super(context, attrs);
}
public VirtualLayout(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Override // androidx.constraintlayout.widget.ConstraintHelper
protected void init(AttributeSet attrs) {
super.init(attrs);
if (attrs != null) {
TypedArray obtainStyledAttributes = getContext().obtainStyledAttributes(attrs, R.styleable.ConstraintLayout_Layout);
int indexCount = obtainStyledAttributes.getIndexCount();
for (int i = 0; i < indexCount; i++) {
int index = obtainStyledAttributes.getIndex(i);
if (index == R.styleable.ConstraintLayout_Layout_android_visibility) {
this.mApplyVisibilityOnAttach = true;
} else if (index == R.styleable.ConstraintLayout_Layout_android_elevation) {
this.mApplyElevationOnAttach = true;
}
}
obtainStyledAttributes.recycle();
}
}
@Override // androidx.constraintlayout.widget.ConstraintHelper, android.view.View
public void onAttachedToWindow() {
super.onAttachedToWindow();
if (this.mApplyVisibilityOnAttach || this.mApplyElevationOnAttach) {
ViewParent parent = getParent();
if (parent instanceof ConstraintLayout) {
ConstraintLayout constraintLayout = (ConstraintLayout) parent;
int visibility = getVisibility();
float elevation = getElevation();
for (int i = 0; i < this.mCount; i++) {
View viewById = constraintLayout.getViewById(this.mIds[i]);
if (viewById != null) {
if (this.mApplyVisibilityOnAttach) {
viewById.setVisibility(visibility);
}
if (this.mApplyElevationOnAttach && elevation > 0.0f) {
viewById.setTranslationZ(viewById.getTranslationZ() + elevation);
}
}
}
}
}
}
@Override // android.view.View
public void setVisibility(int visibility) {
super.setVisibility(visibility);
applyLayoutFeatures();
}
@Override // android.view.View
public void setElevation(float elevation) {
super.setElevation(elevation);
applyLayoutFeatures();
}
@Override // androidx.constraintlayout.widget.ConstraintHelper
protected void applyLayoutFeaturesInConstraintSet(ConstraintLayout container) {
applyLayoutFeatures(container);
}
}