diff --git a/app/src/main/java/org/thoughtcrime/securesms/permissions/RationaleDialog.kt b/app/src/main/java/org/thoughtcrime/securesms/permissions/RationaleDialog.kt index 0d784cdee..110661c00 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/permissions/RationaleDialog.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/permissions/RationaleDialog.kt @@ -28,13 +28,15 @@ object RationaleDialog { .apply { clipToOutline = true } val header = view.findViewById(R.id.header_container) view.findViewById(R.id.message).text = message - drawables.forEach { + + fun addIcon(id: Int) { ImageView(context).apply { - setImageDrawable(ResourcesCompat.getDrawable(context.resources, it, context.theme)) + setImageDrawable(ResourcesCompat.getDrawable(context.resources, id, context.theme)) layoutParams = LinearLayout.LayoutParams(WRAP_CONTENT, WRAP_CONTENT) }.also(header::addView) } - if (drawables.isNotEmpty()) { + + fun addPlus() { TextView(context).apply { text = "+" setTextSize(TypedValue.COMPLEX_UNIT_SP, 40f) @@ -45,6 +47,12 @@ object RationaleDialog { }.also(header::addView) } + drawables.dropLast(1).forEach { + addIcon(it) + addPlus() + } + drawables.lastOrNull()?.let(::addIcon) + return context.showSessionDialog { view(view) button(R.string.Permissions_continue) { onPositive.run() }