From 6fce2a306641c4765abeb71d9d2164e5b8d415a0 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 11 Feb 2020 11:04:21 +0100 Subject: [PATCH] Change wording adding "..." because there is now confirmation dialog And make the item red because it is destructive. Also use "redact" terminology --- .../features/home/room/detail/RoomDetailFragment.kt | 8 ++++---- .../room/detail/timeline/action/EventSharedAction.kt | 12 +++++++----- .../timeline/action/MessageActionsEpoxyController.kt | 2 +- .../timeline/action/MessageActionsViewModel.kt | 2 +- vector/src/main/res/values/strings_riotX.xml | 2 +- 5 files changed, 14 insertions(+), 12 deletions(-) diff --git a/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailFragment.kt b/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailFragment.kt index 831d66b7f4..7303b7ce7f 100644 --- a/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailFragment.kt +++ b/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailFragment.kt @@ -788,7 +788,7 @@ class RoomDetailFragment @Inject constructor( .show() } - private fun promptReasonToDeleteEvent(eventId: String) { + private fun promptReasonToRedactEvent(eventId: String) { val layout = requireActivity().layoutInflater.inflate(R.layout.dialog_delete_event, null) val reasonCheckBox = layout.findViewById(R.id.deleteEventReasonCheck) val reasonTextInputLayout = layout.findViewById(R.id.deleteEventReasonTextInputLayout) @@ -797,8 +797,8 @@ class RoomDetailFragment @Inject constructor( reasonCheckBox.setOnCheckedChangeListener { _, isChecked -> reasonTextInputLayout.isEnabled = isChecked } AlertDialog.Builder(requireActivity()) - .setView(layout) .setTitle(R.string.delete_event_dialog_title) + .setView(layout) .setPositiveButton(R.string.remove) { _, _ -> val reason = reasonInput.text.toString() .takeIf { reasonCheckBox.isChecked } @@ -1120,8 +1120,8 @@ class RoomDetailFragment @Inject constructor( copyToClipboard(requireContext(), action.content, false) showSnackWithMessage(getString(R.string.copied_to_clipboard), Snackbar.LENGTH_SHORT) } - is EventSharedAction.Delete -> { - promptReasonToDeleteEvent(action.eventId) + is EventSharedAction.Redact -> { + promptReasonToRedactEvent(action.eventId) } is EventSharedAction.Share -> { // TODO current data communication is too limited diff --git a/vector/src/main/java/im/vector/riotx/features/home/room/detail/timeline/action/EventSharedAction.kt b/vector/src/main/java/im/vector/riotx/features/home/room/detail/timeline/action/EventSharedAction.kt index 91922611dd..033199c88b 100644 --- a/vector/src/main/java/im/vector/riotx/features/home/room/detail/timeline/action/EventSharedAction.kt +++ b/vector/src/main/java/im/vector/riotx/features/home/room/detail/timeline/action/EventSharedAction.kt @@ -22,7 +22,9 @@ import im.vector.riotx.R import im.vector.riotx.core.platform.VectorSharedAction import im.vector.riotx.features.home.room.detail.timeline.item.MessageInformationData -sealed class EventSharedAction(@StringRes val titleRes: Int, @DrawableRes val iconResId: Int) : VectorSharedAction { +sealed class EventSharedAction(@StringRes val titleRes: Int, + @DrawableRes val iconResId: Int, + val destructive: Boolean = false) : VectorSharedAction { object Separator : EventSharedAction(0, 0) @@ -51,10 +53,10 @@ sealed class EventSharedAction(@StringRes val titleRes: Int, @DrawableRes val ic EventSharedAction(R.string.global_retry, R.drawable.ic_refresh_cw) data class Remove(val eventId: String) : - EventSharedAction(R.string.remove, R.drawable.ic_trash) + EventSharedAction(R.string.remove, R.drawable.ic_trash, true) - data class Delete(val eventId: String) : - EventSharedAction(R.string.delete, R.drawable.ic_delete) + data class Redact(val eventId: String) : + EventSharedAction(R.string.message_action_item_redact, R.drawable.ic_delete, true) data class Cancel(val eventId: String) : EventSharedAction(R.string.cancel, R.drawable.ic_close_round) @@ -81,7 +83,7 @@ sealed class EventSharedAction(@StringRes val titleRes: Int, @DrawableRes val ic EventSharedAction(R.string.report_content_custom, R.drawable.ic_report_custom) data class IgnoreUser(val senderId: String?) : - EventSharedAction(R.string.message_ignore_user, R.drawable.ic_alert_triangle) + EventSharedAction(R.string.message_ignore_user, R.drawable.ic_alert_triangle, true) data class QuickReact(val eventId: String, val clickedOn: String, val add: Boolean) : EventSharedAction(0, 0) diff --git a/vector/src/main/java/im/vector/riotx/features/home/room/detail/timeline/action/MessageActionsEpoxyController.kt b/vector/src/main/java/im/vector/riotx/features/home/room/detail/timeline/action/MessageActionsEpoxyController.kt index bdfdb02be1..d2cdf37eab 100644 --- a/vector/src/main/java/im/vector/riotx/features/home/room/detail/timeline/action/MessageActionsEpoxyController.kt +++ b/vector/src/main/java/im/vector/riotx/features/home/room/detail/timeline/action/MessageActionsEpoxyController.kt @@ -111,7 +111,7 @@ class MessageActionsEpoxyController @Inject constructor( showExpand(action is EventSharedAction.ReportContent) expanded(state.expendedReportContentMenu) listener(View.OnClickListener { listener?.didSelectMenuAction(action) }) - destructive(action is EventSharedAction.IgnoreUser) + destructive(action.destructive) } if (action is EventSharedAction.ReportContent && state.expendedReportContentMenu) { diff --git a/vector/src/main/java/im/vector/riotx/features/home/room/detail/timeline/action/MessageActionsViewModel.kt b/vector/src/main/java/im/vector/riotx/features/home/room/detail/timeline/action/MessageActionsViewModel.kt index 114d80d9af..4b130e2103 100644 --- a/vector/src/main/java/im/vector/riotx/features/home/room/detail/timeline/action/MessageActionsViewModel.kt +++ b/vector/src/main/java/im/vector/riotx/features/home/room/detail/timeline/action/MessageActionsViewModel.kt @@ -227,7 +227,7 @@ class MessageActionsViewModel @AssistedInject constructor(@Assisted } if (canRedact(timelineEvent, session.myUserId)) { - add(EventSharedAction.Delete(eventId)) + add(EventSharedAction.Redact(eventId)) } if (canCopy(msgType)) { diff --git a/vector/src/main/res/values/strings_riotX.xml b/vector/src/main/res/values/strings_riotX.xml index 914d3a1ddf..e43eb70a88 100644 --- a/vector/src/main/res/values/strings_riotX.xml +++ b/vector/src/main/res/values/strings_riotX.xml @@ -11,7 +11,7 @@ - + Remove…