From d4a5275aa40008c795434be6754f5135ac9d05dc Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Tue, 17 Oct 2023 16:57:44 +0200 Subject: [PATCH] fix snackbar display --- .../fragments/social/party/PartyInviteFragment.kt | 14 ++++++++++---- .../android/habitica/ui/views/HabiticaSnackbar.kt | 12 ++++++++++-- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyInviteFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyInviteFragment.kt index ea84a6923..151e79347 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyInviteFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/party/PartyInviteFragment.kt @@ -259,10 +259,16 @@ fun PartyInviteView( inviteButtonState = LoadingButtonState.CONTENT } }) { - viewModel.sendInvites() - inviteButtonState = LoadingButtonState.SUCCESS - delay(2.toDuration(DurationUnit.SECONDS)) - dismiss() + val responses = viewModel.sendInvites() + if ((responses?.size ?: 0) > 0) { + inviteButtonState = LoadingButtonState.SUCCESS + delay(2.toDuration(DurationUnit.SECONDS)) + dismiss() + } else { + inviteButtonState = LoadingButtonState.FAILED + delay(2.toDuration(DurationUnit.SECONDS)) + inviteButtonState = LoadingButtonState.CONTENT + } } } ) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/HabiticaSnackbar.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/HabiticaSnackbar.kt index 48520c4d4..452ff55f8 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/HabiticaSnackbar.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/HabiticaSnackbar.kt @@ -251,10 +251,18 @@ private constructor(parent: ViewGroup, content: View, callback: ContentViewCallb duration: Int = Snackbar.LENGTH_LONG ) { val snackbar = make(container, duration) - .setTitle(title) - .setText(content) .setSpecialView(specialView) .setLeftIcon(leftImage) + if (title?.isNotBlank() == true) { + snackbar.setTitle(title) + } + if (content?.isNotBlank() == true) { + if (title?.isNotBlank() != true) { + snackbar.setTitle(content) + } else { + snackbar.setText(content) + } + } rightTextColor?.let { snackbar.setRightDiff(rightIcon, rightTextColor, rightText) }