mirror of
https://github.com/sudoxnym/habitica-android.git
synced 2026-05-22 13:48:55 +00:00
change alert to snackbar
This commit is contained in:
parent
0d4a641923
commit
81334951a2
3 changed files with 36 additions and 34 deletions
|
|
@ -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;
|
||||
}
|
||||
|
|
@ -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
|
||||
}
|
||||
|
|
@ -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()
|
||||
|
|
|
|||
Loading…
Reference in a new issue