From f3233528d679c4472585ebefa42dba6038750d12 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Fri, 4 Aug 2023 12:21:16 +0200 Subject: [PATCH] Reverted some previous changes --- .idea/deploymentTargetDropDown.xml | 17 ++ .../main/java/org/linphone/ui/MainActivity.kt | 3 - .../linphone/ui/contacts/ContactFragment.kt | 4 - .../linphone/ui/contacts/ContactsFragment.kt | 39 ++-- .../contacts/adapter/ContactsListAdapter.kt | 4 - .../drawable-land/shape_gray_background.xml | 4 - .../drawable-land/shape_white_background.xml | 4 - .../res/layout-land/contacts_fragment.xml | 193 +++++++++--------- app/src/main/res/layout/contacts_fragment.xml | 180 ++++++++-------- .../main/res/navigation/chat_nav_graph.xml | 11 + .../main/res/navigation/main_nav_graph.xml | 6 - 11 files changed, 246 insertions(+), 219 deletions(-) create mode 100644 .idea/deploymentTargetDropDown.xml delete mode 100644 app/src/main/res/drawable-land/shape_gray_background.xml delete mode 100644 app/src/main/res/drawable-land/shape_white_background.xml diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml new file mode 100644 index 000000000..06260ba85 --- /dev/null +++ b/.idea/deploymentTargetDropDown.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/java/org/linphone/ui/MainActivity.kt b/app/src/main/java/org/linphone/ui/MainActivity.kt index 7eafcf5fa..6adf6f160 100644 --- a/app/src/main/java/org/linphone/ui/MainActivity.kt +++ b/app/src/main/java/org/linphone/ui/MainActivity.kt @@ -20,7 +20,6 @@ package org.linphone.ui import android.Manifest -import android.content.pm.ActivityInfo import android.content.pm.PackageManager import android.os.Bundle import android.view.Gravity @@ -43,8 +42,6 @@ class MainActivity : AppCompatActivity() { WindowCompat.setDecorFitsSystemWindows(window, true) super.onCreate(savedInstanceState) - requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_LOCKED - window.statusBarColor = ContextCompat.getColor( this, R.color.primary_color diff --git a/app/src/main/java/org/linphone/ui/contacts/ContactFragment.kt b/app/src/main/java/org/linphone/ui/contacts/ContactFragment.kt index 0f26f60b5..3e4cb3d9a 100644 --- a/app/src/main/java/org/linphone/ui/contacts/ContactFragment.kt +++ b/app/src/main/java/org/linphone/ui/contacts/ContactFragment.kt @@ -27,7 +27,6 @@ import androidx.core.view.doOnPreDraw import androidx.fragment.app.Fragment import androidx.navigation.fragment.navArgs import androidx.transition.ChangeBounds -import org.linphone.core.tools.Log import org.linphone.databinding.ContactFragmentBinding class ContactFragment : Fragment() { @@ -58,9 +57,6 @@ class ContactFragment : Fragment() { val model = args.contact binding.model = model - Log.i("[Contact] Model ID is [${model.id}]") - binding.avatar.transitionName = "transition-avatar-${model.id}" - binding.name.transitionName = "transition-name-${model.id}" binding.setBackClickListener { requireActivity().onBackPressedDispatcher.onBackPressed() diff --git a/app/src/main/java/org/linphone/ui/contacts/ContactsFragment.kt b/app/src/main/java/org/linphone/ui/contacts/ContactsFragment.kt index b703c4ad0..8e7fd2b83 100644 --- a/app/src/main/java/org/linphone/ui/contacts/ContactsFragment.kt +++ b/app/src/main/java/org/linphone/ui/contacts/ContactsFragment.kt @@ -33,13 +33,14 @@ import androidx.navigation.fragment.NavHostFragment import androidx.navigation.fragment.findNavController import androidx.navigation.navGraphViewModels import androidx.recyclerview.widget.LinearLayoutManager +import androidx.slidingpanelayout.widget.SlidingPaneLayout import androidx.transition.AutoTransition import org.linphone.R -import org.linphone.core.tools.Log import org.linphone.databinding.ContactsFragmentBinding import org.linphone.ui.MainActivity import org.linphone.ui.contacts.adapter.ContactsListAdapter import org.linphone.ui.contacts.viewmodel.ContactsListViewModel +import org.linphone.utils.SlidingPaneBackPressedCallback import org.linphone.utils.hideKeyboard import org.linphone.utils.setKeyboardInsetListener import org.linphone.utils.showKeyboard @@ -82,6 +83,15 @@ class ContactsFragment : Fragment() { listViewModel.bottomNavBarVisible.value = !portraitOrientation || !keyboardVisible } + binding.root.doOnPreDraw { + val slidingPane = binding.slidingPaneLayout + requireActivity().onBackPressedDispatcher.addCallback( + viewLifecycleOwner, + SlidingPaneBackPressedCallback(slidingPane) + ) + slidingPane.lockMode = SlidingPaneLayout.LOCK_MODE_LOCKED + } + adapter = ContactsListAdapter(viewLifecycleOwner) binding.contactsList.setHasFixedSize(true) binding.contactsList.adapter = adapter @@ -101,19 +111,14 @@ class ContactsFragment : Fragment() { val model = pair.second if (findNavController().currentDestination?.id == R.id.contactsFragment) { - val extras = FragmentNavigatorExtras( - b.avatar to "transition-avatar-${model.id}", - b.name to "transition-name-${model.id}" - ) - Log.i("[Contacts List] Model ID is [${model.id}]") + val navHostFragment = childFragmentManager.findFragmentById( + R.id.contacts_nav_container + ) as NavHostFragment val action = ContactFragmentDirections.actionGlobalContactFragment(model) + navHostFragment.navController.navigate(action) - val navHostFragment = - childFragmentManager.findFragmentById(R.id.contacts_nav_container) as NavHostFragment? - if (navHostFragment != null) { - navHostFragment.navController.navigate(action, extras) - } else { - findNavController().navigate(action, extras) + if (!binding.slidingPaneLayout.isOpen) { + binding.slidingPaneLayout.openPane() } } } @@ -151,9 +156,13 @@ class ContactsFragment : Fragment() { binding.setOnNewContactClicked { if (findNavController().currentDestination?.id == R.id.contactsFragment) { - findNavController().navigate( - R.id.action_contactsFragment_to_newContactFragment - ) + val navHostFragment = + childFragmentManager.findFragmentById(R.id.contacts_nav_container) as NavHostFragment? + if (navHostFragment != null) { + navHostFragment.navController.navigate(R.id.action_global_newContactFragment) + } else { + findNavController().navigate(R.id.action_contactsFragment_to_newContactFragment) + } } } diff --git a/app/src/main/java/org/linphone/ui/contacts/adapter/ContactsListAdapter.kt b/app/src/main/java/org/linphone/ui/contacts/adapter/ContactsListAdapter.kt index 02e7d8dee..24b76c258 100644 --- a/app/src/main/java/org/linphone/ui/contacts/adapter/ContactsListAdapter.kt +++ b/app/src/main/java/org/linphone/ui/contacts/adapter/ContactsListAdapter.kt @@ -9,7 +9,6 @@ import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.ListAdapter import androidx.recyclerview.widget.RecyclerView import org.linphone.R -import org.linphone.core.tools.Log import org.linphone.databinding.ContactListCellBinding import org.linphone.ui.contacts.model.ContactModel import org.linphone.utils.Event @@ -73,9 +72,6 @@ class ContactsListAdapter( lifecycleOwner = viewLifecycleOwner binding.root.isSelected = bindingAdapterPosition == selectedAdapterPosition - Log.i("[Contacts List] Model ID is [${contactModel.id}]") - binding.avatar.transitionName = "transition-avatar-${contactModel.id}" - binding.name.transitionName = "transition-name-${contactModel.id}" binding.setOnClickListener { contactClickedEvent.value = Event(Pair(binding, contactModel)) diff --git a/app/src/main/res/drawable-land/shape_gray_background.xml b/app/src/main/res/drawable-land/shape_gray_background.xml deleted file mode 100644 index 960325aff..000000000 --- a/app/src/main/res/drawable-land/shape_gray_background.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable-land/shape_white_background.xml b/app/src/main/res/drawable-land/shape_white_background.xml deleted file mode 100644 index 95a658bb5..000000000 --- a/app/src/main/res/drawable-land/shape_white_background.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/app/src/main/res/layout-land/contacts_fragment.xml b/app/src/main/res/layout-land/contacts_fragment.xml index ea17dd88d..3c9085c25 100644 --- a/app/src/main/res/layout-land/contacts_fragment.xml +++ b/app/src/main/res/layout-land/contacts_fragment.xml @@ -19,123 +19,122 @@ type="org.linphone.ui.contacts.viewmodel.ContactsListViewModel" /> - + android:layout_height="match_parent"> - + - + - + - + - + - + - + - + - + + + - + \ No newline at end of file diff --git a/app/src/main/res/layout/contacts_fragment.xml b/app/src/main/res/layout/contacts_fragment.xml index 85135aa97..cae54f3d0 100644 --- a/app/src/main/res/layout/contacts_fragment.xml +++ b/app/src/main/res/layout/contacts_fragment.xml @@ -19,97 +19,113 @@ type="org.linphone.ui.contacts.viewmodel.ContactsListViewModel" /> - + android:layout_height="match_parent"> - + - + - + - + - + - + - + - + - + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/navigation/chat_nav_graph.xml b/app/src/main/res/navigation/chat_nav_graph.xml index ca55b255e..1330a2b0f 100644 --- a/app/src/main/res/navigation/chat_nav_graph.xml +++ b/app/src/main/res/navigation/chat_nav_graph.xml @@ -24,4 +24,15 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/navigation/main_nav_graph.xml b/app/src/main/res/navigation/main_nav_graph.xml index 6c5d5bc0a..1ffc3a710 100644 --- a/app/src/main/res/navigation/main_nav_graph.xml +++ b/app/src/main/res/navigation/main_nav_graph.xml @@ -72,12 +72,6 @@ app:popUpTo="@id/conversationsFragment" app:popUpToInclusive="true" /> -