diff --git a/Habitica/res/values/strings.xml b/Habitica/res/values/strings.xml
index a16a3a34b..6e98e516f 100644
--- a/Habitica/res/values/strings.xml
+++ b/Habitica/res/values/strings.xml
@@ -764,4 +764,5 @@
ID copied to clipboard
You have bought all the Gems you can this month. More become available within the first three days of each month. Thanks for subscribing!
Monthly Gem Cap Reached
+ Chat Message
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 f1c231c7c..5b0a1fc0a 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
@@ -41,13 +41,13 @@ class SocialRepositoryImpl(localRepository: SocialLocalRepository, apiClient: Ap
}
override fun flagMessage(chatMessage: ChatMessage): Observable {
- return if (chatMessage.id == null) {
+ return if (chatMessage.id == "") {
Observable.just(null)
} else apiClient.flagMessage(chatMessage.groupId, chatMessage.id)
}
override fun likeMessage(chatMessage: ChatMessage): Observable {
- if (chatMessage.id == null) {
+ if (chatMessage.id == "") {
return Observable.just(null)
}
val liked = chatMessage.userLikesMessage(userId)
diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/ChatListFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/ChatListFragment.kt
index 09b0cadc0..8cb1fe554 100644
--- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/ChatListFragment.kt
+++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/ChatListFragment.kt
@@ -24,6 +24,7 @@ import com.habitrpg.android.habitica.ui.activities.MainActivity
import com.habitrpg.android.habitica.ui.adapter.social.ChatRecyclerViewAdapter
import com.habitrpg.android.habitica.ui.fragments.BaseFragment
import com.habitrpg.android.habitica.ui.helpers.SafeDefaultItemAnimator
+import com.habitrpg.android.habitica.ui.views.HabiticaSnackbar
import com.habitrpg.android.habitica.ui.views.HabiticaSnackbar.SnackbarDisplayType
import com.habitrpg.android.habitica.ui.views.HabiticaSnackbar.showSnackbar
import io.realm.RealmResults
@@ -189,7 +190,13 @@ class ChatListFragment : BaseFragment(), SwipeRefreshLayout.OnRefreshListener {
}
private fun copyMessageAsTodo(chatMessage: ChatMessage) {
-
+ val clipboard = context?.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
+ val clip = ClipData.newPlainText(context?.getString(R.string.chat_message), chatMessage.text)
+ clipboard.primaryClip = clip
+ val activity = activity as MainActivity?
+ if (activity != null) {
+ HabiticaSnackbar.showSnackbar(activity.getFloatingMenuWrapper(), getString(R.string.chat_message_copied), HabiticaSnackbar.SnackbarDisplayType.NORMAL)
+ }
}
override fun onSaveInstanceState(outState: Bundle) {