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) {