diff --git a/app/src/main/java/com/nextcloud/talk/activities/CallActivity.kt b/app/src/main/java/com/nextcloud/talk/activities/CallActivity.kt index 5bdc92c51..a0fe8f72b 100644 --- a/app/src/main/java/com/nextcloud/talk/activities/CallActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/activities/CallActivity.kt @@ -112,6 +112,8 @@ import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_CONVERSATION_PASSWORD import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_FROM_NOTIFICATION_START_CALL import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_IS_BREAKOUT_ROOM import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_IS_MODERATOR +import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_IS_ROOM_GROUP +import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_IS_ROOM_ONE_TO_ONE import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_MODIFIED_BASE_URL import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_AUDIO import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_VIDEO @@ -350,6 +352,8 @@ class CallActivity : CallBaseActivity() { private var isModerator = false private var reactionAnimator: ReactionAnimator? = null private var othersInCall = false + private var isOneToOneConversation = false + private var isGroupConversation = false private lateinit var micInputAudioRecorder: AudioRecord private var micInputAudioRecordThread: Thread? = null @@ -381,6 +385,9 @@ class CallActivity : CallBaseActivity() { canPublishAudioStream = extras.getBoolean(KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_AUDIO) canPublishVideoStream = extras.getBoolean(KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_VIDEO) isModerator = extras.getBoolean(KEY_IS_MODERATOR, false) + isOneToOneConversation = extras.getBoolean(KEY_IS_ROOM_ONE_TO_ONE, false) + isGroupConversation = extras.getBoolean(KEY_IS_ROOM_GROUP, false) + if (extras.containsKey(KEY_FROM_NOTIFICATION_START_CALL)) { isIncomingCallFromNotification = extras.getBoolean(KEY_FROM_NOTIFICATION_START_CALL) } @@ -470,7 +477,7 @@ class CallActivity : CallBaseActivity() { binding!!.callRecordingIndicator.visibility = View.GONE } } - initClickListeners(isModerator) + initClickListeners(isModerator, isOneToOneConversation) binding!!.microphoneButton.setOnTouchListener(MicrophoneButtonTouchListener()) pulseAnimation = PulseAnimation.create().with(binding!!.microphoneButton) .setDuration(310) @@ -614,7 +621,7 @@ class CallActivity : CallBaseActivity() { } @SuppressLint("ClickableViewAccessibility") - private fun initClickListeners(isModerator:Boolean) { + private fun initClickListeners(isModerator:Boolean, isOneToOneConversation:Boolean) { binding!!.pictureInPictureButton.setOnClickListener { enterPipMode() } binding!!.audioOutputButton.setOnClickListener { diff --git a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt index 9346e3be6..29a9646c0 100644 --- a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt @@ -167,6 +167,7 @@ import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_FILE_PATHS import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_INTERNAL_USER_ID import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_IS_BREAKOUT_ROOM import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_IS_MODERATOR +import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_IS_ROOM_GROUP import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_IS_ROOM_ONE_TO_ONE import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_RECORDING_STATE import com.nextcloud.talk.utils.bundle.BundleKeys.KEY_ROOM_TOKEN @@ -3073,7 +3074,8 @@ class ChatActivity : BundleKeys.KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_AUDIO, participantPermissions.canPublishAudio() ) - bundle.putBoolean(KEY_IS_ROOM_ONE_TO_ONE, ConversationUtils.isOneToOne(it)) + bundle.putBoolean(KEY_IS_ROOM_ONE_TO_ONE, ConversationUtils.isOneToOneConversation(it)) + bundle.putBoolean(KEY_IS_ROOM_GROUP, ConversationUtils.isGroupConversation(it)) bundle.putBoolean( BundleKeys.KEY_PARTICIPANT_PERMISSION_CAN_PUBLISH_VIDEO, participantPermissions.canPublishVideo() diff --git a/app/src/main/java/com/nextcloud/talk/utils/ConversationUtils.kt b/app/src/main/java/com/nextcloud/talk/utils/ConversationUtils.kt index 2c43914e0..06af4e99e 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/ConversationUtils.kt +++ b/app/src/main/java/com/nextcloud/talk/utils/ConversationUtils.kt @@ -24,10 +24,14 @@ object ConversationUtils { Participant.ParticipantType.USER_FOLLOWING_LINK == conversation.participantType } - fun isOneToOne(conversation:ConversationModel):Boolean{ + fun isOneToOneConversation(conversation:ConversationModel):Boolean{ return ConversationEnums.ConversationType.ROOM_TYPE_ONE_TO_ONE_CALL == conversation.type } + fun isGroupConversation(conversation:ConversationModel):Boolean{ + return ConversationEnums.ConversationType.ROOM_GROUP_CALL == conversation.type + } + fun isParticipantOwnerOrModerator(conversation: ConversationModel): Boolean { return Participant.ParticipantType.OWNER == conversation.participantType || Participant.ParticipantType.GUEST_MODERATOR == conversation.participantType || diff --git a/app/src/main/java/com/nextcloud/talk/utils/bundle/BundleKeys.kt b/app/src/main/java/com/nextcloud/talk/utils/bundle/BundleKeys.kt index 450a2bdb6..7ccb2daf0 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/bundle/BundleKeys.kt +++ b/app/src/main/java/com/nextcloud/talk/utils/bundle/BundleKeys.kt @@ -81,4 +81,5 @@ object BundleKeys { const val KEY_FIELD_MAP: String = "KEY_FIELD_MAP" const val KEY_CHAT_URL: String = "KEY_CHAT_URL" const val KEY_IS_ROOM_ONE_TO_ONE : String = "KEY_IS_ROOM_ONE_TO_ONE" + const val KEY_IS_ROOM_GROUP : String = "KEY_IS_ROOM_GROUP" }