From d460f79e2945e7f23f7de8f9fd3ece407579c064 Mon Sep 17 00:00:00 2001 From: MrFast <78495381+MrFast-js@users.noreply.github.com> Date: Wed, 31 Jan 2024 22:27:03 -0500 Subject: [PATCH] Update SiblingConstraint.kt --- .../elementa/constraints/SiblingConstraint.kt | 38 ++++++++++++------- 1 file changed, 25 insertions(+), 13 deletions(-) diff --git a/src/main/kotlin/gg/essential/elementa/constraints/SiblingConstraint.kt b/src/main/kotlin/gg/essential/elementa/constraints/SiblingConstraint.kt index f962125e..42f40137 100644 --- a/src/main/kotlin/gg/essential/elementa/constraints/SiblingConstraint.kt +++ b/src/main/kotlin/gg/essential/elementa/constraints/SiblingConstraint.kt @@ -29,13 +29,19 @@ open class SiblingConstraint @JvmOverloads constructor( val index = component.parent.children.indexOf(component) if (alignOpposite) { - if (index == 0) return component.parent.getRight() - component.getWidth() - val sibling = component.parent.children[index - 1] - return getLeftmostPoint(sibling, component.parent, index) - component.getWidth() - padding + if (index > 0) { + val sibling = component.parent.children[index - 1] + return getLeftmostPoint(sibling, component.parent, index) - component.getWidth() - padding + } else { + return component.parent.getRight() - component.getWidth() + } } else { - if (index == 0) return component.parent.getLeft() - val sibling = component.parent.children[index - 1] - return getRightmostPoint(sibling, component.parent, index) + padding + if (index > 0) { + val sibling = component.parent.children[index - 1] + return getRightmostPoint(sibling, component.parent, index) + padding + } else { + return component.parent.getLeft() + } } } @@ -51,13 +57,19 @@ open class SiblingConstraint @JvmOverloads constructor( val index = component.parent.children.indexOf(component) if (alignOpposite) { - if (index == 0) return component.parent.getBottom() - component.getHeight() - val sibling = component.parent.children[index - 1] - return getHighestPoint(sibling, component.parent, index) - component.getHeight() - padding + if (index > 0) { + val sibling = component.parent.children[index - 1] + return getHighestPoint(sibling, component.parent, index) - component.getHeight() - padding + } else { + return component.parent.getBottom() - component.getHeight() + } } else { - if (index == 0) return component.parent.getTop() - val sibling = component.parent.children[index - 1] - return getLowestPoint(sibling, component.parent, index) + padding + if (index > 0) { + val sibling = component.parent.children[index - 1] + return getLowestPoint(sibling, component.parent, index) + padding + } else { + return component.parent.getTop() + } } } @@ -188,4 +200,4 @@ open class SiblingConstraint @JvmOverloads constructor( val index = component.parent.children.indexOf(component) return if (index == 0 && constrainTo == null) 0f else padding } -} \ No newline at end of file +}