diff --git a/CHANGES.md b/CHANGES.md index 17605b4940..726d7f0931 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -6,6 +6,7 @@ Features ✨: Improvements 🙌: - VoIP : new tiles in timeline + - Improve room profile UX Bugfix 🐛: - VoIP : fix audio devices output diff --git a/vector/src/main/java/im/vector/app/features/roomprofile/RoomProfileController.kt b/vector/src/main/java/im/vector/app/features/roomprofile/RoomProfileController.kt index 6b988df94d..5ab86f7138 100644 --- a/vector/src/main/java/im/vector/app/features/roomprofile/RoomProfileController.kt +++ b/vector/src/main/java/im/vector/app/features/roomprofile/RoomProfileController.kt @@ -54,6 +54,8 @@ class RoomProfileController @Inject constructor( fun createShortcut() fun onSettingsClicked() fun onLeaveRoomClicked() + fun onRoomAliasesClicked() + fun onRoomPermissionsClicked() fun onRoomIdClicked() fun onUrlInTopicLongClicked(url: String) } @@ -174,8 +176,29 @@ class RoomProfileController @Inject constructor( ) // Advanced + buildProfileSection(stringProvider.getString(R.string.room_settings_category_advanced_title)) + + buildProfileAction( + id = "alias", + title = stringProvider.getString(R.string.room_settings_alias_title), + subtitle = stringProvider.getString(R.string.room_settings_alias_subtitle), + dividerColor = dividerColor, + divider = true, + editable = true, + action = { callback?.onRoomAliasesClicked() } + ) + + buildProfileAction( + id = "permissions", + title = stringProvider.getString(R.string.room_settings_permissions_title), + subtitle = stringProvider.getString(R.string.room_settings_permissions_subtitle), + dividerColor = dividerColor, + divider = true, + editable = true, + action = { callback?.onRoomPermissionsClicked() } + ) + if (vectorPreferences.developerMode()) { - buildProfileSection(stringProvider.getString(R.string.room_settings_category_advanced_title)) buildProfileAction( id = "roomId", title = stringProvider.getString(R.string.room_settings_room_internal_id), diff --git a/vector/src/main/java/im/vector/app/features/roomprofile/RoomProfileFragment.kt b/vector/src/main/java/im/vector/app/features/roomprofile/RoomProfileFragment.kt index 0cb57fda4f..3c5e050935 100644 --- a/vector/src/main/java/im/vector/app/features/roomprofile/RoomProfileFragment.kt +++ b/vector/src/main/java/im/vector/app/features/roomprofile/RoomProfileFragment.kt @@ -269,6 +269,14 @@ class RoomProfileFragment @Inject constructor( } } + override fun onRoomAliasesClicked() { + roomProfileSharedActionViewModel.post(RoomProfileSharedAction.OpenRoomAliasesSettings) + } + + override fun onRoomPermissionsClicked() { + roomProfileSharedActionViewModel.post(RoomProfileSharedAction.OpenRoomPermissionsSettings) + } + override fun onRoomIdClicked() { copyToClipboard(requireContext(), roomProfileArgs.roomId) } diff --git a/vector/src/main/java/im/vector/app/features/roomprofile/settings/RoomSettingsController.kt b/vector/src/main/java/im/vector/app/features/roomprofile/settings/RoomSettingsController.kt index 1984be078d..6e77ceaa36 100644 --- a/vector/src/main/java/im/vector/app/features/roomprofile/settings/RoomSettingsController.kt +++ b/vector/src/main/java/im/vector/app/features/roomprofile/settings/RoomSettingsController.kt @@ -45,8 +45,6 @@ class RoomSettingsController @Inject constructor( fun onNameChanged(name: String) fun onTopicChanged(topic: String) fun onHistoryVisibilityClicked() - fun onRoomAliasesClicked() - fun onRoomPermissionsClicked() fun onJoinRuleClicked() } @@ -106,26 +104,6 @@ class RoomSettingsController @Inject constructor( } } - buildProfileAction( - id = "alias", - title = stringProvider.getString(R.string.room_settings_alias_title), - subtitle = stringProvider.getString(R.string.room_settings_alias_subtitle), - dividerColor = dividerColor, - divider = true, - editable = true, - action = { callback?.onRoomAliasesClicked() } - ) - - buildProfileAction( - id = "permissions", - title = stringProvider.getString(R.string.room_settings_permissions_title), - subtitle = stringProvider.getString(R.string.room_settings_permissions_subtitle), - dividerColor = dividerColor, - divider = true, - editable = true, - action = { callback?.onRoomPermissionsClicked() } - ) - buildProfileAction( id = "historyReadability", title = stringProvider.getString(R.string.room_settings_room_read_history_rules_pref_title), diff --git a/vector/src/main/java/im/vector/app/features/roomprofile/settings/RoomSettingsFragment.kt b/vector/src/main/java/im/vector/app/features/roomprofile/settings/RoomSettingsFragment.kt index 1ca539ea7e..6d63e5014f 100644 --- a/vector/src/main/java/im/vector/app/features/roomprofile/settings/RoomSettingsFragment.kt +++ b/vector/src/main/java/im/vector/app/features/roomprofile/settings/RoomSettingsFragment.kt @@ -174,14 +174,6 @@ class RoomSettingsFragment @Inject constructor( .show(childFragmentManager, "RoomHistoryVisibilityBottomSheet") } - override fun onRoomAliasesClicked() { - roomProfileSharedActionViewModel.post(RoomProfileSharedAction.OpenRoomAliasesSettings) - } - - override fun onRoomPermissionsClicked() { - roomProfileSharedActionViewModel.post(RoomProfileSharedAction.OpenRoomPermissionsSettings) - } - override fun onJoinRuleClicked() = withState(viewModel) { state -> val currentJoinRule = state.newRoomJoinRules.newJoinRules ?: state.currentRoomJoinRules val currentGuestAccess = state.newRoomJoinRules.newGuestAccess ?: state.currentGuestAccess