From 889224807158aa829b91d0849ff68eddceafe2cf Mon Sep 17 00:00:00 2001 From: SpiritCroc Date: Thu, 12 Aug 2021 09:22:35 +0200 Subject: [PATCH] Bring back setting to disable voice message recorder button Change-Id: I81d647796b82e2034383278da7b169795a092f2e --- .../app/features/home/room/detail/RoomDetailFragment.kt | 8 ++++---- .../im/vector/app/features/settings/VectorPreferences.kt | 6 ++++++ vector/src/main/res/values/strings_sc.xml | 3 +++ vector/src/main/res/xml/vector_settings_labs.xml | 6 ++++++ 4 files changed, 19 insertions(+), 4 deletions(-) diff --git a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailFragment.kt b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailFragment.kt index 98380f1968..c7c5511b96 100644 --- a/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailFragment.kt +++ b/vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailFragment.kt @@ -989,7 +989,7 @@ class RoomDetailFragment @Inject constructor( autoCompleter.exitSpecialMode() views.composerLayout.collapse() - views.voiceMessageRecorderView.isVisible = text.isBlank() + views.voiceMessageRecorderView.isVisible = text.isBlank() && vectorPreferences.useVoiceMessage() updateComposerText(text) views.composerLayout.views.sendButton.contentDescription = getString(R.string.send) @@ -1330,7 +1330,7 @@ class RoomDetailFragment @Inject constructor( } override fun onTextBlankStateChanged(isBlank: Boolean) { - if (!views.composerLayout.views.sendButton.isVisible) { + if (!views.composerLayout.views.sendButton.isVisible && vectorPreferences.useVoiceMessage()) { // Animate alpha to prevent overlapping with the animation of the send button views.voiceMessageRecorderView.alpha = 0f views.voiceMessageRecorderView.isVisible = true @@ -1403,10 +1403,10 @@ class RoomDetailFragment @Inject constructor( if (state.canSendMessage) { if (!views.voiceMessageRecorderView.isActive()) { views.composerLayout.isVisible = true - views.voiceMessageRecorderView.isVisible = views.composerLayout.text?.isBlank().orFalse() + views.voiceMessageRecorderView.isVisible = vectorPreferences.useVoiceMessage() && views.composerLayout.text?.isBlank().orFalse() views.composerLayout.setRoomEncrypted(summary.isEncrypted) views.notificationAreaView.render(NotificationAreaView.State.Hidden) - views.composerLayout.alwaysShowSendButton = false + views.composerLayout.alwaysShowSendButton = !vectorPreferences.useVoiceMessage() } } else { views.composerLayout.isVisible = false diff --git a/vector/src/main/java/im/vector/app/features/settings/VectorPreferences.kt b/vector/src/main/java/im/vector/app/features/settings/VectorPreferences.kt index c8afcc2183..b1b9ccfa70 100755 --- a/vector/src/main/java/im/vector/app/features/settings/VectorPreferences.kt +++ b/vector/src/main/java/im/vector/app/features/settings/VectorPreferences.kt @@ -202,6 +202,7 @@ class VectorPreferences @Inject constructor(private val context: Context) { private const val SETTINGS_USER_COLOR_MODE_DEFAULT = "SETTINGS_USER_COLOR_MODE_DEFAULT" private const val SETTINGS_USER_COLOR_MODE_PUBLIC_ROOM = "SETTINGS_USER_COLOR_MODE_PUBLIC_ROOM" private const val SETTINGS_OPEN_CHATS_AT_FIRST_UNREAD = "SETTINGS_OPEN_CHATS_AT_FIRST_UNREAD" + private const val SETTINGS_VOICE_MESSAGE = "SETTINGS_VOICE_MESSAGE" private const val DID_ASK_TO_ENABLE_SESSION_PUSH = "DID_ASK_TO_ENABLE_SESSION_PUSH" @@ -1001,6 +1002,11 @@ class VectorPreferences @Inject constructor(private val context: Context) { return defaultPrefs.getBoolean(SETTINGS_OPEN_CHATS_AT_FIRST_UNREAD, false) } + // Element removed this, SC added it back (but this time, default to true) + fun useVoiceMessage(): Boolean { + return defaultPrefs.getBoolean(SETTINGS_VOICE_MESSAGE, true) + } + /** * The user enable protecting app access with pin code. * Currently we use the pin code store to know if the pin is enabled, so this is not used diff --git a/vector/src/main/res/values/strings_sc.xml b/vector/src/main/res/values/strings_sc.xml index e5de7cee99..d11b50ad0e 100644 --- a/vector/src/main/res/values/strings_sc.xml +++ b/vector/src/main/res/values/strings_sc.xml @@ -87,6 +87,9 @@ Open at first unread Open chats at the first unread message instead of at the bottom. + Voice messages + Show a button to record voice messages + Light green Dark green diff --git a/vector/src/main/res/xml/vector_settings_labs.xml b/vector/src/main/res/xml/vector_settings_labs.xml index 2e6c78bd77..c3c1142c99 100644 --- a/vector/src/main/res/xml/vector_settings_labs.xml +++ b/vector/src/main/res/xml/vector_settings_labs.xml @@ -63,6 +63,12 @@ android:key="SETTINGS_LABS_ENABLE_SWIPE_TO_REPLY" android:title="@string/labs_swipe_to_reply_in_timeline" /> + +