diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/events/ShowSnackbarEvent.java b/Habitica/src/main/java/com/habitrpg/android/habitica/events/ShowSnackbarEvent.java deleted file mode 100644 index 44e086f1c..000000000 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/events/ShowSnackbarEvent.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.habitrpg.android.habitica.events; - -import android.graphics.drawable.Drawable; -import android.view.View; - -import com.habitrpg.android.habitica.ui.views.HabiticaSnackbar; - -/** - * Created by phillip on 26.06.17. - */ - -public class ShowSnackbarEvent { - - public Drawable leftImage; - public String title; - public String text; - public HabiticaSnackbar.SnackbarDisplayType type; - public View specialView; - public Drawable rightIcon; - public int rightTextColor; - public String rightText; -} diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/events/ShowSnackbarEvent.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/events/ShowSnackbarEvent.kt new file mode 100644 index 000000000..5e3938e54 --- /dev/null +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/events/ShowSnackbarEvent.kt @@ -0,0 +1,26 @@ +package com.habitrpg.android.habitica.events + +import android.graphics.drawable.Drawable +import android.view.View +import com.habitrpg.android.habitica.ui.views.HabiticaSnackbar.SnackbarDisplayType + +/** + * Created by phillip on 26.06.17. + */ +class ShowSnackbarEvent { + constructor(title: String, type: SnackbarDisplayType) { + this.title = title + this.type = type + } + + constructor() + + var leftImage: Drawable? = null + var title: String? = null + var text: String? = null + var type: SnackbarDisplayType = SnackbarDisplayType.NORMAL + var specialView: View? = null + var rightIcon: Drawable? = null + var rightTextColor = 0 + var rightText: String? = null +} \ No newline at end of file diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/ChatRecyclerViewHolder.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/ChatRecyclerViewHolder.kt index af3003de4..81bc748d2 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/ChatRecyclerViewHolder.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/ChatRecyclerViewHolder.kt @@ -13,6 +13,7 @@ import androidx.recyclerview.widget.RecyclerView import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.databinding.ChatItemBinding import com.habitrpg.android.habitica.databinding.TavernChatIntroItemBinding +import com.habitrpg.android.habitica.events.ShowSnackbarEvent import com.habitrpg.android.habitica.extensions.dpToPx import com.habitrpg.android.habitica.extensions.getAgoString import com.habitrpg.android.habitica.extensions.setScaledPadding @@ -25,7 +26,9 @@ import io.reactivex.rxjava3.core.Maybe import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.schedulers.Schedulers import com.habitrpg.android.habitica.models.members.Member +import com.habitrpg.android.habitica.ui.views.HabiticaSnackbar import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaAlertDialog +import org.greenrobot.eventbus.EventBus open class ChatRecyclerViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) @@ -69,20 +72,15 @@ class ChatRecyclerMessageViewHolder(itemView: View, private var userId: String, itemView.setOnClickListener { onShouldExpand?.invoke() } - binding.tvLikes.setOnClickListener { chatMessage?.let { - if(it.uuid != userId) { - onLikeMessage?.invoke(it) - } - else { - val context = context - if (context != null) { - val alert = HabiticaAlertDialog(context) - alert.setMessage("Can't like your own message. Don't be that person.") - alert.addButton(R.string.ok, true) - alert.show() + binding.tvLikes.setOnClickListener { + chatMessage?.let { + if(it.uuid != userId) { + onLikeMessage?.invoke(it) + } else { + val event = ShowSnackbarEvent(context.getString(R.string.cant_like_own_message), HabiticaSnackbar.SnackbarDisplayType.FAILURE) + EventBus.getDefault().post(event) } } - } } binding.messageText.setOnClickListener { onShouldExpand?.invoke() } binding.messageText.movementMethod = LinkMovementMethod.getInstance()