From a326ad8488992753c0835a562298c8438c90a20b Mon Sep 17 00:00:00 2001 From: skydoves Date: Wed, 27 Dec 2023 23:21:33 +0900 Subject: [PATCH] Reuse update arrow method inside the arrow initialization --- .../kotlin/com/skydoves/balloon/Balloon.kt | 34 +------------------ 1 file changed, 1 insertion(+), 33 deletions(-) diff --git a/balloon/src/main/kotlin/com/skydoves/balloon/Balloon.kt b/balloon/src/main/kotlin/com/skydoves/balloon/Balloon.kt index 295e0ed0..a21b08c3 100644 --- a/balloon/src/main/kotlin/com/skydoves/balloon/Balloon.kt +++ b/balloon/src/main/kotlin/com/skydoves/balloon/Balloon.kt @@ -273,40 +273,8 @@ public class Balloon private constructor( adjustArrowOrientationByRules(anchor) - when (builder.arrowOrientation.getRTLSupportOrientation(builder.isRtlLayout)) { - ArrowOrientation.BOTTOM -> { - rotation = 180f - x = getArrowConstraintPositionX(anchor) - y = binding.balloonCard.y + binding.balloonCard.height - SIZE_ARROW_BOUNDARY - ViewCompat.setElevation(this, builder.arrowElevation) - runOnAfterSDK23 { - foreground = getArrowForeground(x, binding.balloonCard.height.toFloat()) - } - } + updateArrow(anchor) - ArrowOrientation.TOP -> { - rotation = 0f - x = getArrowConstraintPositionX(anchor) - y = binding.balloonCard.y - builder.arrowSize + SIZE_ARROW_BOUNDARY - runOnAfterSDK23 { foreground = getArrowForeground(x, 0f) } - } - - ArrowOrientation.START -> { - rotation = -90f - x = binding.balloonCard.x - builder.arrowSize + SIZE_ARROW_BOUNDARY - y = getArrowConstraintPositionY(anchor) - runOnAfterSDK23 { foreground = getArrowForeground(0f, y) } - } - - ArrowOrientation.END -> { - rotation = 90f - x = binding.balloonCard.x + binding.balloonCard.width - SIZE_ARROW_BOUNDARY - y = getArrowConstraintPositionY(anchor) - runOnAfterSDK23 { - foreground = getArrowForeground(binding.balloonCard.width.toFloat(), y) - } - } - } visible(builder.isVisibleArrow) } }