diff --git a/app/src/main/java/org/linphone/activities/main/chat/fragments/MasterChatRoomsFragment.kt b/app/src/main/java/org/linphone/activities/main/chat/fragments/MasterChatRoomsFragment.kt index 2e2d4f3e2..272a4f7c8 100644 --- a/app/src/main/java/org/linphone/activities/main/chat/fragments/MasterChatRoomsFragment.kt +++ b/app/src/main/java/org/linphone/activities/main/chat/fragments/MasterChatRoomsFragment.kt @@ -25,6 +25,7 @@ import android.view.View import androidx.core.content.ContextCompat import androidx.core.view.doOnPreDraw import androidx.lifecycle.ViewModelProvider +import androidx.navigation.fragment.NavHostFragment import androidx.recyclerview.widget.ItemTouchHelper import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView @@ -101,6 +102,13 @@ class MasterChatRoomsFragment : MasterFragment() { sharedViewModel.layoutChangedEvent.observe(viewLifecycleOwner, { it.consume { sharedViewModel.canSlidingPaneBeClosed.value = binding.slidingPane.isSlideable + if (binding.slidingPane.isSlideable) { + val navHostFragment = childFragmentManager.findFragmentById(R.id.settings_nav_container) as NavHostFragment + if (navHostFragment.navController.currentDestination?.id == R.id.emptySettingsFragment) { + Log.i("[Settings] Foldable device has been folded, closing side pane with empty fragment") + binding.slidingPane.closePane() + } + } } }) binding.slidingPane.lockMode = SlidingPaneLayout.LOCK_MODE_LOCKED