diff --git a/app/src/main/java/org/linphone/ui/call/model/ConferenceModel.kt b/app/src/main/java/org/linphone/ui/call/model/ConferenceModel.kt index cf2a26f11..e810fb220 100644 --- a/app/src/main/java/org/linphone/ui/call/model/ConferenceModel.kt +++ b/app/src/main/java/org/linphone/ui/call/model/ConferenceModel.kt @@ -342,7 +342,17 @@ class ConferenceModel { } if (meDeviceData != null) { val index = sortedList.indexOf(meDeviceData) - val expectedIndex = sortedList.size - 1 // TODO FIXME : use different order for active speaker layout & grid layout + val expectedIndex = if (conferenceLayout.value == ACTIVE_SPEAKER_LAYOUT) { + Log.i( + "$TAG Current conference layout is [Active Speaker], expecting our device to be at the beginning of the list" + ) + 0 + } else { + Log.i( + "$TAG Current conference layout isn't [Active Speaker], expecting our device to be at the end of the list" + ) + sortedList.size - 1 + } if (index != expectedIndex) { Log.i( "$TAG Me device data is at index $index, moving it to index $expectedIndex" diff --git a/app/src/main/java/org/linphone/ui/main/meetings/fragment/MeetingWaitingRoomFragment.kt b/app/src/main/java/org/linphone/ui/main/meetings/fragment/MeetingWaitingRoomFragment.kt index c9a98b531..08218166f 100644 --- a/app/src/main/java/org/linphone/ui/main/meetings/fragment/MeetingWaitingRoomFragment.kt +++ b/app/src/main/java/org/linphone/ui/main/meetings/fragment/MeetingWaitingRoomFragment.kt @@ -33,6 +33,7 @@ import androidx.lifecycle.ViewModelProvider import androidx.navigation.fragment.findNavController import androidx.navigation.fragment.navArgs import org.linphone.LinphoneApplication.Companion.coreContext +import org.linphone.R import org.linphone.core.tools.Log import org.linphone.databinding.MeetingWaitingRoomFragmentBinding import org.linphone.ui.main.fragment.GenericFragment @@ -62,6 +63,8 @@ class MeetingWaitingRoomFragment : GenericFragment() { } } + private var navBarDefaultColor: Int = -1 + override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, @@ -79,6 +82,8 @@ class MeetingWaitingRoomFragment : GenericFragment() { postponeEnterTransition() super.onViewCreated(view, savedInstanceState) + navBarDefaultColor = requireActivity().window.navigationBarColor + binding.lifecycleOwner = viewLifecycleOwner viewModel = ViewModelProvider(this)[MeetingWaitingRoomViewModel::class.java] @@ -124,6 +129,9 @@ class MeetingWaitingRoomFragment : GenericFragment() { } override fun onResume() { + // Force this navigation bar color + requireActivity().window.navigationBarColor = requireContext().getColor(R.color.gray_900) + super.onResume() if (isCameraPermissionGranted()) { @@ -144,6 +152,13 @@ class MeetingWaitingRoomFragment : GenericFragment() { super.onPause() } + override fun onDestroy() { + // Reset default navigation bar color + requireActivity().window.navigationBarColor = navBarDefaultColor + + super.onDestroy() + } + private fun isCameraPermissionGranted(): Boolean { val granted = ContextCompat.checkSelfPermission( requireContext(),