321 lines
13 KiB
Java
321 lines
13 KiB
Java
package androidx.constraintlayout.solver.widgets;
|
|
|
|
import androidx.constraintlayout.solver.LinearSystem;
|
|
import androidx.constraintlayout.solver.widgets.ConstraintWidget;
|
|
|
|
/* loaded from: classes.dex */
|
|
public class Optimizer {
|
|
static boolean[] a = new boolean[3];
|
|
|
|
static void a(ConstraintWidgetContainer constraintWidgetContainer, LinearSystem linearSystem, ConstraintWidget constraintWidget) {
|
|
if (constraintWidgetContainer.C[0] != ConstraintWidget.DimensionBehaviour.WRAP_CONTENT && constraintWidget.C[0] == ConstraintWidget.DimensionBehaviour.MATCH_PARENT) {
|
|
int i = constraintWidget.s.e;
|
|
int s = constraintWidgetContainer.s() - constraintWidget.u.e;
|
|
ConstraintAnchor constraintAnchor = constraintWidget.s;
|
|
constraintAnchor.i = linearSystem.a(constraintAnchor);
|
|
ConstraintAnchor constraintAnchor2 = constraintWidget.u;
|
|
constraintAnchor2.i = linearSystem.a(constraintAnchor2);
|
|
linearSystem.a(constraintWidget.s.i, i);
|
|
linearSystem.a(constraintWidget.u.i, s);
|
|
constraintWidget.a = 2;
|
|
constraintWidget.a(i, s);
|
|
}
|
|
if (constraintWidgetContainer.C[1] == ConstraintWidget.DimensionBehaviour.WRAP_CONTENT || constraintWidget.C[1] != ConstraintWidget.DimensionBehaviour.MATCH_PARENT) {
|
|
return;
|
|
}
|
|
int i2 = constraintWidget.t.e;
|
|
int i3 = constraintWidgetContainer.i() - constraintWidget.v.e;
|
|
ConstraintAnchor constraintAnchor3 = constraintWidget.t;
|
|
constraintAnchor3.i = linearSystem.a(constraintAnchor3);
|
|
ConstraintAnchor constraintAnchor4 = constraintWidget.v;
|
|
constraintAnchor4.i = linearSystem.a(constraintAnchor4);
|
|
linearSystem.a(constraintWidget.t.i, i2);
|
|
linearSystem.a(constraintWidget.v.i, i3);
|
|
if (constraintWidget.Q > 0 || constraintWidget.r() == 8) {
|
|
ConstraintAnchor constraintAnchor5 = constraintWidget.w;
|
|
constraintAnchor5.i = linearSystem.a(constraintAnchor5);
|
|
linearSystem.a(constraintWidget.w.i, constraintWidget.Q + i2);
|
|
}
|
|
constraintWidget.b = 2;
|
|
constraintWidget.e(i2, i3);
|
|
}
|
|
|
|
private static boolean a(ConstraintWidget constraintWidget, int i) {
|
|
ConstraintWidget.DimensionBehaviour[] dimensionBehaviourArr = constraintWidget.C;
|
|
if (dimensionBehaviourArr[i] != ConstraintWidget.DimensionBehaviour.MATCH_CONSTRAINT) {
|
|
return false;
|
|
}
|
|
if (constraintWidget.G != 0.0f) {
|
|
if (dimensionBehaviourArr[i != 0 ? (char) 0 : (char) 1] == ConstraintWidget.DimensionBehaviour.MATCH_CONSTRAINT) {
|
|
}
|
|
return false;
|
|
}
|
|
if (i == 0) {
|
|
if (constraintWidget.e != 0 || constraintWidget.h != 0 || constraintWidget.i != 0) {
|
|
return false;
|
|
}
|
|
} else if (constraintWidget.f != 0 || constraintWidget.k != 0 || constraintWidget.l != 0) {
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
static void a(int i, ConstraintWidget constraintWidget) {
|
|
constraintWidget.I();
|
|
ResolutionAnchor d = constraintWidget.s.d();
|
|
ResolutionAnchor d2 = constraintWidget.t.d();
|
|
ResolutionAnchor d3 = constraintWidget.u.d();
|
|
ResolutionAnchor d4 = constraintWidget.v.d();
|
|
boolean z = (i & 8) == 8;
|
|
boolean z2 = constraintWidget.C[0] == ConstraintWidget.DimensionBehaviour.MATCH_CONSTRAINT && a(constraintWidget, 0);
|
|
if (d.h != 4 && d3.h != 4) {
|
|
if (constraintWidget.C[0] == ConstraintWidget.DimensionBehaviour.FIXED || (z2 && constraintWidget.r() == 8)) {
|
|
if (constraintWidget.s.d == null && constraintWidget.u.d == null) {
|
|
d.b(1);
|
|
d3.b(1);
|
|
if (z) {
|
|
d3.a(d, 1, constraintWidget.m());
|
|
} else {
|
|
d3.a(d, constraintWidget.s());
|
|
}
|
|
} else if (constraintWidget.s.d != null && constraintWidget.u.d == null) {
|
|
d.b(1);
|
|
d3.b(1);
|
|
if (z) {
|
|
d3.a(d, 1, constraintWidget.m());
|
|
} else {
|
|
d3.a(d, constraintWidget.s());
|
|
}
|
|
} else if (constraintWidget.s.d == null && constraintWidget.u.d != null) {
|
|
d.b(1);
|
|
d3.b(1);
|
|
d.a(d3, -constraintWidget.s());
|
|
if (z) {
|
|
d.a(d3, -1, constraintWidget.m());
|
|
} else {
|
|
d.a(d3, -constraintWidget.s());
|
|
}
|
|
} else if (constraintWidget.s.d != null && constraintWidget.u.d != null) {
|
|
d.b(2);
|
|
d3.b(2);
|
|
if (z) {
|
|
constraintWidget.m().a(d);
|
|
constraintWidget.m().a(d3);
|
|
d.b(d3, -1, constraintWidget.m());
|
|
d3.b(d, 1, constraintWidget.m());
|
|
} else {
|
|
d.b(d3, -constraintWidget.s());
|
|
d3.b(d, constraintWidget.s());
|
|
}
|
|
}
|
|
} else if (z2) {
|
|
int s = constraintWidget.s();
|
|
d.b(1);
|
|
d3.b(1);
|
|
if (constraintWidget.s.d == null && constraintWidget.u.d == null) {
|
|
if (z) {
|
|
d3.a(d, 1, constraintWidget.m());
|
|
} else {
|
|
d3.a(d, s);
|
|
}
|
|
} else if (constraintWidget.s.d == null || constraintWidget.u.d != null) {
|
|
if (constraintWidget.s.d != null || constraintWidget.u.d == null) {
|
|
if (constraintWidget.s.d != null && constraintWidget.u.d != null) {
|
|
if (z) {
|
|
constraintWidget.m().a(d);
|
|
constraintWidget.m().a(d3);
|
|
}
|
|
if (constraintWidget.G == 0.0f) {
|
|
d.b(3);
|
|
d3.b(3);
|
|
d.b(d3, 0.0f);
|
|
d3.b(d, 0.0f);
|
|
} else {
|
|
d.b(2);
|
|
d3.b(2);
|
|
d.b(d3, -s);
|
|
d3.b(d, s);
|
|
constraintWidget.o(s);
|
|
}
|
|
}
|
|
} else if (z) {
|
|
d.a(d3, -1, constraintWidget.m());
|
|
} else {
|
|
d.a(d3, -s);
|
|
}
|
|
} else if (z) {
|
|
d3.a(d, 1, constraintWidget.m());
|
|
} else {
|
|
d3.a(d, s);
|
|
}
|
|
}
|
|
}
|
|
boolean z3 = constraintWidget.C[1] == ConstraintWidget.DimensionBehaviour.MATCH_CONSTRAINT && a(constraintWidget, 1);
|
|
if (d2.h == 4 || d4.h == 4) {
|
|
return;
|
|
}
|
|
if (constraintWidget.C[1] != ConstraintWidget.DimensionBehaviour.FIXED && (!z3 || constraintWidget.r() != 8)) {
|
|
if (z3) {
|
|
int i2 = constraintWidget.i();
|
|
d2.b(1);
|
|
d4.b(1);
|
|
if (constraintWidget.t.d == null && constraintWidget.v.d == null) {
|
|
if (z) {
|
|
d4.a(d2, 1, constraintWidget.l());
|
|
return;
|
|
} else {
|
|
d4.a(d2, i2);
|
|
return;
|
|
}
|
|
}
|
|
if (constraintWidget.t.d != null && constraintWidget.v.d == null) {
|
|
if (z) {
|
|
d4.a(d2, 1, constraintWidget.l());
|
|
return;
|
|
} else {
|
|
d4.a(d2, i2);
|
|
return;
|
|
}
|
|
}
|
|
if (constraintWidget.t.d == null && constraintWidget.v.d != null) {
|
|
if (z) {
|
|
d2.a(d4, -1, constraintWidget.l());
|
|
return;
|
|
} else {
|
|
d2.a(d4, -i2);
|
|
return;
|
|
}
|
|
}
|
|
if (constraintWidget.t.d == null || constraintWidget.v.d == null) {
|
|
return;
|
|
}
|
|
if (z) {
|
|
constraintWidget.l().a(d2);
|
|
constraintWidget.m().a(d4);
|
|
}
|
|
if (constraintWidget.G == 0.0f) {
|
|
d2.b(3);
|
|
d4.b(3);
|
|
d2.b(d4, 0.0f);
|
|
d4.b(d2, 0.0f);
|
|
return;
|
|
}
|
|
d2.b(2);
|
|
d4.b(2);
|
|
d2.b(d4, -i2);
|
|
d4.b(d2, i2);
|
|
constraintWidget.g(i2);
|
|
if (constraintWidget.Q > 0) {
|
|
constraintWidget.w.d().a(1, d2, constraintWidget.Q);
|
|
return;
|
|
}
|
|
return;
|
|
}
|
|
return;
|
|
}
|
|
if (constraintWidget.t.d == null && constraintWidget.v.d == null) {
|
|
d2.b(1);
|
|
d4.b(1);
|
|
if (z) {
|
|
d4.a(d2, 1, constraintWidget.l());
|
|
} else {
|
|
d4.a(d2, constraintWidget.i());
|
|
}
|
|
ConstraintAnchor constraintAnchor = constraintWidget.w;
|
|
if (constraintAnchor.d != null) {
|
|
constraintAnchor.d().b(1);
|
|
d2.a(1, constraintWidget.w.d(), -constraintWidget.Q);
|
|
return;
|
|
}
|
|
return;
|
|
}
|
|
if (constraintWidget.t.d != null && constraintWidget.v.d == null) {
|
|
d2.b(1);
|
|
d4.b(1);
|
|
if (z) {
|
|
d4.a(d2, 1, constraintWidget.l());
|
|
} else {
|
|
d4.a(d2, constraintWidget.i());
|
|
}
|
|
if (constraintWidget.Q > 0) {
|
|
constraintWidget.w.d().a(1, d2, constraintWidget.Q);
|
|
return;
|
|
}
|
|
return;
|
|
}
|
|
if (constraintWidget.t.d == null && constraintWidget.v.d != null) {
|
|
d2.b(1);
|
|
d4.b(1);
|
|
if (z) {
|
|
d2.a(d4, -1, constraintWidget.l());
|
|
} else {
|
|
d2.a(d4, -constraintWidget.i());
|
|
}
|
|
if (constraintWidget.Q > 0) {
|
|
constraintWidget.w.d().a(1, d2, constraintWidget.Q);
|
|
return;
|
|
}
|
|
return;
|
|
}
|
|
if (constraintWidget.t.d == null || constraintWidget.v.d == null) {
|
|
return;
|
|
}
|
|
d2.b(2);
|
|
d4.b(2);
|
|
if (z) {
|
|
d2.b(d4, -1, constraintWidget.l());
|
|
d4.b(d2, 1, constraintWidget.l());
|
|
constraintWidget.l().a(d2);
|
|
constraintWidget.m().a(d4);
|
|
} else {
|
|
d2.b(d4, -constraintWidget.i());
|
|
d4.b(d2, constraintWidget.i());
|
|
}
|
|
if (constraintWidget.Q > 0) {
|
|
constraintWidget.w.d().a(1, d2, constraintWidget.Q);
|
|
}
|
|
}
|
|
|
|
/* JADX WARN: Code restructure failed: missing block: B:10:0x0032, code lost:
|
|
|
|
if (r7.e0 == 2) goto L14;
|
|
*/
|
|
/* JADX WARN: Code restructure failed: missing block: B:11:0x0034, code lost:
|
|
|
|
r2 = true;
|
|
*/
|
|
/* JADX WARN: Code restructure failed: missing block: B:209:0x0036, code lost:
|
|
|
|
r2 = false;
|
|
*/
|
|
/* JADX WARN: Code restructure failed: missing block: B:219:0x0048, code lost:
|
|
|
|
if (r7.f0 == 2) goto L14;
|
|
*/
|
|
/* JADX WARN: Removed duplicated region for block: B:120:0x01d6 */
|
|
/* JADX WARN: Removed duplicated region for block: B:67:0x0109 A[SYNTHETIC] */
|
|
/* JADX WARN: Removed duplicated region for block: B:71:0x0105 A[SYNTHETIC] */
|
|
/*
|
|
Code decompiled incorrectly, please refer to instructions dump.
|
|
To view partially-correct code enable 'Show inconsistent code' option in preferences
|
|
*/
|
|
static boolean a(androidx.constraintlayout.solver.widgets.ConstraintWidgetContainer r24, androidx.constraintlayout.solver.LinearSystem r25, int r26, int r27, androidx.constraintlayout.solver.widgets.ChainHead r28) {
|
|
/*
|
|
Method dump skipped, instructions count: 900
|
|
To view this dump change 'Code comments level' option to 'DEBUG'
|
|
*/
|
|
throw new UnsupportedOperationException("Method not decompiled: androidx.constraintlayout.solver.widgets.Optimizer.a(androidx.constraintlayout.solver.widgets.ConstraintWidgetContainer, androidx.constraintlayout.solver.LinearSystem, int, int, androidx.constraintlayout.solver.widgets.ChainHead):boolean");
|
|
}
|
|
|
|
static void a(ConstraintWidget constraintWidget, int i, int i2) {
|
|
int i3 = i * 2;
|
|
int i4 = i3 + 1;
|
|
constraintWidget.A[i3].d().f = constraintWidget.k().s.d();
|
|
constraintWidget.A[i3].d().g = i2;
|
|
constraintWidget.A[i3].d().b = 1;
|
|
constraintWidget.A[i4].d().f = constraintWidget.A[i3].d();
|
|
constraintWidget.A[i4].d().g = constraintWidget.d(i);
|
|
constraintWidget.A[i4].d().b = 1;
|
|
}
|
|
}
|