diff --git a/vector/src/main/AndroidManifest.xml b/vector/src/main/AndroidManifest.xml
index aca68ab15c..89cdb26dc2 100644
--- a/vector/src/main/AndroidManifest.xml
+++ b/vector/src/main/AndroidManifest.xml
@@ -165,6 +165,8 @@
+
+
{
+ startActivity(RoomMemberListActivity.newIntent(requireContext(), roomDetailArgs.roomId))
+ true
+ }
+ R.id.show_room_info -> {
+ navigator.openRoomProfile(requireActivity(), roomDetailArgs.roomId)
+ true
+ }
else -> super.onOptionsItemSelected(item)
}
}
diff --git a/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailViewModel.kt b/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailViewModel.kt
index e6288be2c8..c8f4c9208c 100644
--- a/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailViewModel.kt
+++ b/vector/src/main/java/im/vector/riotx/features/home/room/detail/RoomDetailViewModel.kt
@@ -421,6 +421,8 @@ class RoomDetailViewModel @AssistedInject constructor(
R.id.voice_call,
R.id.video_call -> room.canStartCall() && webRtcPeerConnectionManager.currentCall == null
R.id.hangup_call -> webRtcPeerConnectionManager.currentCall != null
+ R.id.show_room_info -> true
+ R.id.show_participants -> true
else -> false
}
}
diff --git a/vector/src/main/java/im/vector/riotx/features/roomprofile/RoomProfileActivity.kt b/vector/src/main/java/im/vector/riotx/features/roomprofile/RoomProfileActivity.kt
index b61075be80..6ded77f487 100644
--- a/vector/src/main/java/im/vector/riotx/features/roomprofile/RoomProfileActivity.kt
+++ b/vector/src/main/java/im/vector/riotx/features/roomprofile/RoomProfileActivity.kt
@@ -37,7 +37,7 @@ import im.vector.riotx.features.roomprofile.settings.RoomSettingsFragment
import im.vector.riotx.features.roomprofile.uploads.RoomUploadsFragment
import javax.inject.Inject
-class RoomProfileActivity :
+open class RoomProfileActivity :
VectorBaseActivity(),
ToolbarConfigurable,
RequireActiveMembershipViewModel.Factory {
@@ -53,7 +53,7 @@ class RoomProfileActivity :
}
private lateinit var sharedActionViewModel: RoomProfileSharedActionViewModel
- private lateinit var roomProfileArgs: RoomProfileArgs
+ protected lateinit var roomProfileArgs: RoomProfileArgs
private val requireActiveMembershipViewModel: RequireActiveMembershipViewModel by viewModel()
@@ -75,7 +75,7 @@ class RoomProfileActivity :
sharedActionViewModel = viewModelProvider.get(RoomProfileSharedActionViewModel::class.java)
roomProfileArgs = intent?.extras?.getParcelable(MvRx.KEY_ARG) ?: return
if (isFirstCreation()) {
- addFragment(R.id.simpleFragmentContainer, RoomProfileFragment::class.java, roomProfileArgs)
+ addInitialFragment()
}
sharedActionViewModel
.observe()
@@ -95,6 +95,10 @@ class RoomProfileActivity :
}
}
+ open fun addInitialFragment() {
+ addFragment(R.id.simpleFragmentContainer, RoomProfileFragment::class.java, roomProfileArgs)
+ }
+
private fun handleRoomLeft(roomLeft: RequireActiveMembershipViewEvents.RoomLeft) {
if (roomLeft.leftMessage != null) {
Toast.makeText(this, roomLeft.leftMessage, Toast.LENGTH_LONG).show()
diff --git a/vector/src/main/java/im/vector/riotx/features/roomprofile/members/RoomMemberListActivity.kt b/vector/src/main/java/im/vector/riotx/features/roomprofile/members/RoomMemberListActivity.kt
new file mode 100644
index 0000000000..0d6e723e3f
--- /dev/null
+++ b/vector/src/main/java/im/vector/riotx/features/roomprofile/members/RoomMemberListActivity.kt
@@ -0,0 +1,27 @@
+package im.vector.riotx.features.roomprofile.members
+
+import android.content.Context
+import android.content.Intent
+import com.airbnb.mvrx.MvRx
+import im.vector.riotx.R
+import im.vector.riotx.core.extensions.addFragment
+import im.vector.riotx.features.roomprofile.RoomProfileActivity
+import im.vector.riotx.features.roomprofile.RoomProfileArgs
+
+class RoomMemberListActivity :
+ RoomProfileActivity() {
+
+ companion object {
+
+ fun newIntent(context: Context, roomId: String): Intent {
+ val roomProfileArgs = RoomProfileArgs(roomId)
+ return Intent(context, RoomMemberListActivity::class.java).apply {
+ putExtra(MvRx.KEY_ARG, roomProfileArgs)
+ }
+ }
+ }
+
+ override fun addInitialFragment() {
+ addFragment(R.id.simpleFragmentContainer, RoomMemberListFragment::class.java, roomProfileArgs)
+ }
+}
diff --git a/vector/src/main/res/menu/menu_timeline.xml b/vector/src/main/res/menu/menu_timeline.xml
index faebf9a2aa..9d7c283a2d 100644
--- a/vector/src/main/res/menu/menu_timeline.xml
+++ b/vector/src/main/res/menu/menu_timeline.xml
@@ -58,4 +58,18 @@
app:showAsAction="never"
tools:visible="true" />
+
+
+
+
diff --git a/vector/src/main/res/values-de/strings.xml b/vector/src/main/res/values-de/strings.xml
index f5912a9368..5cf2903809 100644
--- a/vector/src/main/res/values-de/strings.xml
+++ b/vector/src/main/res/values-de/strings.xml
@@ -2107,7 +2107,7 @@ Verwahre deinen Wiederherstellungsschlüssel an einem sehr sicheren Ort wie eine
Sicherheit
Mehr erfahren
Mehr
- Raum Einstellungen
+ Raum-Einstellungen
Benachrichtigungen
- Eine Person
diff --git a/vector/src/main/res/values-de/strings_sc.xml b/vector/src/main/res/values-de/strings_sc.xml
index d39091a830..b04f55f468 100644
--- a/vector/src/main/res/values-de/strings_sc.xml
+++ b/vector/src/main/res/values-de/strings_sc.xml
@@ -26,4 +26,7 @@
Benutzerdefinierter Server
Serveradresse angeben zum Anmelden oder Registrieren
+ Rauminfo
+ Teilnehmer
+
diff --git a/vector/src/main/res/values/strings_sc.xml b/vector/src/main/res/values/strings_sc.xml
index 3d1948e504..242c6a763c 100644
--- a/vector/src/main/res/values/strings_sc.xml
+++ b/vector/src/main/res/values/strings_sc.xml
@@ -26,4 +26,7 @@
Custom server
Enter server address to login or register
+ Room details
+ Participants
+