diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/SocialRepositoryImpl.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/SocialRepositoryImpl.kt index d306620b3..954164dd4 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/SocialRepositoryImpl.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/SocialRepositoryImpl.kt @@ -88,7 +88,9 @@ class SocialRepositoryImpl(localRepository: SocialLocalRepository, apiClient: Ap return Flowable.empty() } val liked = chatMessage.userLikesMessage(userID) - localRepository.likeMessage(chatMessage, userID, !liked) + if (chatMessage.isManaged) { + localRepository.likeMessage(chatMessage, userID, !liked) + } return apiClient.likeMessage(chatMessage.groupId ?: "", chatMessage.id) } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewmodels/GroupViewModel.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewmodels/GroupViewModel.kt index ceee471c5..81f5a3c27 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewmodels/GroupViewModel.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewmodels/GroupViewModel.kt @@ -249,7 +249,8 @@ open class GroupViewModel(initializeComponent: Boolean) : BaseViewModel(initiali } fun likeMessage(message: ChatMessage) { - val index = _chatMessages.value?.indexOf(message) ?: return + val index = _chatMessages.value?.indexOf(message) + if (index == null || index < 0) return disposable.add(socialRepository.likeMessage(message).subscribe( { val list = _chatMessages.value?.toMutableList() diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/dialogs/PetSuggestHatchDialog.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/dialogs/PetSuggestHatchDialog.kt index 1358370e3..408825289 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/dialogs/PetSuggestHatchDialog.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/dialogs/PetSuggestHatchDialog.kt @@ -6,6 +6,7 @@ import android.view.LayoutInflater import android.view.View import android.widget.LinearLayout import androidx.core.graphics.drawable.toBitmap +import com.habitrpg.android.habitica.HabiticaBaseApplication import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.databinding.DialogPetSuggestHatchBinding import com.habitrpg.android.habitica.extensions.subscribeWithErrorHandler @@ -36,6 +37,7 @@ class PetSuggestHatchDialog(context: Context) : HabiticaAlertDialog(context) { val inflater = context.getSystemService(Context.LAYOUT_INFLATER_SERVICE) as? LayoutInflater inflater?.let { binding = DialogPetSuggestHatchBinding.inflate(it) } setAdditionalContentView(binding.root) + HabiticaBaseApplication.userComponent?.inject(this) } fun configure(pet: Animal, egg: Egg?, potion: HatchingPotion?, eggCount: Int, potionCount: Int, hasUnlockedEgg: Boolean, hasUnlockedPotion: Boolean, hasMount: Boolean) {