Skip to content

Commit 25ba11f

Browse files
committed
add changes to how margins are assigned to custom buttons
1 parent 5497a1f commit 25ba11f

File tree

1 file changed

+12
-17
lines changed

1 file changed

+12
-17
lines changed

libnavui-dropin/src/main/java/com/mapbox/navigation/dropin/binder/ActionButtonBinder.kt

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import android.view.LayoutInflater
66
import android.view.View
77
import android.view.ViewGroup
88
import android.widget.LinearLayout
9-
import androidx.core.view.children
109
import androidx.lifecycle.viewModelScope
1110
import com.mapbox.navigation.base.ExperimentalPreviewMapboxNavigationAPI
1211
import com.mapbox.navigation.core.internal.extensions.navigationListOf
@@ -74,22 +73,18 @@ internal class ActionButtonBinder(
7473
private fun installCustomButtons(buttonContainer: LinearLayout) {
7574
val spacing = buttonContainer.resources
7675
.getDimensionPixelSize(R.dimen.mapbox_actionList_spacing)
77-
customButtons.filter { it.position == ActionButtonDescription.Position.START }
78-
.reversed()
79-
.also {
80-
startCustomButtonsCount = it.size
81-
}
82-
.forEach {
83-
buttonContainer.children.firstOrNull()?.setMargins(top = spacing)
84-
it.view.setMargins(bottom = spacing)
85-
buttonContainer.addView(it.view, 0)
86-
}
87-
customButtons.filter { it.position == ActionButtonDescription.Position.END }
88-
.forEach {
89-
buttonContainer.children.lastOrNull()?.setMargins(bottom = spacing)
90-
it.view.setMargins(top = spacing)
91-
buttonContainer.addView(it.view)
92-
}
76+
customButtons
77+
.filter { it.position == ActionButtonDescription.Position.START }
78+
.asReversed()
79+
.also { startCustomButtonsCount = it.size }
80+
.onEach { buttonContainer.addView(it.view, 0) }
81+
.dropLast(1)
82+
.forEach { it.view.setMargins(top = spacing) }
83+
customButtons
84+
.filter { it.position == ActionButtonDescription.Position.END }
85+
.onEach { buttonContainer.addView(it.view) }
86+
.dropLast(1)
87+
.forEach { it.view.setMargins(bottom = spacing) }
9388
}
9489

9590
private fun audioGuidanceButtonComponent(

0 commit comments

Comments
 (0)