From 365b5854f972add5da47f1482a7ae8448b3d06e0 Mon Sep 17 00:00:00 2001 From: Kevin Boulongne Date: Thu, 1 Feb 2024 15:10:45 +0100 Subject: [PATCH] Let BottomSheetDialogs handle the `navigationBarColor` by themselves --- .../com/infomaniak/mail/ui/MainActivity.kt | 23 ------------------- .../DetailedContactBottomSheetDialog.kt | 4 ---- .../MessageActionsBottomSheetDialog.kt | 6 +++-- .../thread/actions/ReplyBottomSheetDialog.kt | 2 -- .../actions/ThreadActionsBottomSheetDialog.kt | 6 +++-- 5 files changed, 8 insertions(+), 33 deletions(-) diff --git a/app/src/main/java/com/infomaniak/mail/ui/MainActivity.kt b/app/src/main/java/com/infomaniak/mail/ui/MainActivity.kt index 07e3d9fa94a..5c991eacd34 100644 --- a/app/src/main/java/com/infomaniak/mail/ui/MainActivity.kt +++ b/app/src/main/java/com/infomaniak/mail/ui/MainActivity.kt @@ -435,35 +435,12 @@ class MainActivity : BaseActivity() { // This `SuppressLint` seems useless, but it's for the CI. Don't remove it. @SuppressLint("RestrictedApi") private fun onDestinationChanged(destination: NavDestination, arguments: Bundle?) { - SentryDebug.addNavigationBreadcrumb(destination.displayName, arguments) trackDestination(destination) - - updateColorsWhenDestinationChanged() setDrawerLockMode(isLocked = destination.id != R.id.threadListFragment) - previousDestinationId = destination.id } - private fun updateColorsWhenDestinationChanged() { - when (previousDestinationId) { - R.id.threadActionsBottomSheetDialog, - R.id.messageActionsBottomSheetDialog, - R.id.replyBottomSheetDialog, - R.id.detailedContactBottomSheetDialog -> { - val fragment = currentFragment - if (fragment is TwoPaneFragment) { - val navigationBarColor = if (twoPaneViewModel.isInThreadInPhoneMode(context = this)) { - R.color.elevatedBackground - } else { - R.color.backgroundColor - } - window.updateNavigationBarColor(getColor(navigationBarColor)) - } - } - } - } - fun setDrawerLockMode(isLocked: Boolean) { val drawerLockMode = if (isLocked) DrawerLayout.LOCK_MODE_LOCKED_CLOSED else DrawerLayout.LOCK_MODE_UNLOCKED binding.drawerLayout.setDrawerLockMode(drawerLockMode) diff --git a/app/src/main/java/com/infomaniak/mail/ui/main/thread/DetailedContactBottomSheetDialog.kt b/app/src/main/java/com/infomaniak/mail/ui/main/thread/DetailedContactBottomSheetDialog.kt index d1b4fcf47fe..d109b462cfe 100644 --- a/app/src/main/java/com/infomaniak/mail/ui/main/thread/DetailedContactBottomSheetDialog.kt +++ b/app/src/main/java/com/infomaniak/mail/ui/main/thread/DetailedContactBottomSheetDialog.kt @@ -25,7 +25,6 @@ import androidx.fragment.app.activityViewModels import androidx.navigation.fragment.navArgs import com.infomaniak.lib.core.utils.safeBinding import com.infomaniak.mail.MatomoMail.trackContactActionsEvent -import com.infomaniak.mail.R import com.infomaniak.mail.databinding.BottomSheetDetailedContactBinding import com.infomaniak.mail.ui.MainViewModel import com.infomaniak.mail.ui.main.SnackbarManager @@ -33,7 +32,6 @@ import com.infomaniak.mail.ui.main.thread.actions.ActionsBottomSheetDialog import com.infomaniak.mail.ui.newMessage.NewMessageActivityArgs import com.infomaniak.mail.utils.copyRecipientEmailToClipboard import com.infomaniak.mail.utils.safeNavigateToNewMessageActivity -import com.infomaniak.mail.utils.setSystemBarsColors import dagger.hilt.android.AndroidEntryPoint import javax.inject.Inject @@ -55,8 +53,6 @@ class DetailedContactBottomSheetDialog : ActionsBottomSheetDialog() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) = with(binding) { super.onViewCreated(view, savedInstanceState) - setSystemBarsColors(statusBarColor = null, navigationBarColor = R.color.backgroundColorSecondary) - contactDetails.setCorrespondent(navigationArgs.recipient) setupListeners() } diff --git a/app/src/main/java/com/infomaniak/mail/ui/main/thread/actions/MessageActionsBottomSheetDialog.kt b/app/src/main/java/com/infomaniak/mail/ui/main/thread/actions/MessageActionsBottomSheetDialog.kt index 6ca189222d0..b70457ec33c 100644 --- a/app/src/main/java/com/infomaniak/mail/ui/main/thread/actions/MessageActionsBottomSheetDialog.kt +++ b/app/src/main/java/com/infomaniak/mail/ui/main/thread/actions/MessageActionsBottomSheetDialog.kt @@ -38,7 +38,10 @@ import com.infomaniak.mail.data.models.Folder.FolderRole import com.infomaniak.mail.data.models.draft.Draft.DraftMode import com.infomaniak.mail.ui.alertDialogs.DescriptionAlertDialog import com.infomaniak.mail.ui.main.menu.MoveFragmentArgs -import com.infomaniak.mail.utils.* +import com.infomaniak.mail.utils.animatedNavigation +import com.infomaniak.mail.utils.deleteWithConfirmationPopup +import com.infomaniak.mail.utils.notYetImplemented +import com.infomaniak.mail.utils.safeNavigateToNewMessageActivity import dagger.hilt.android.AndroidEntryPoint import javax.inject.Inject @@ -56,7 +59,6 @@ class MessageActionsBottomSheetDialog : MailActionsBottomSheetDialog() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) = with(navigationArgs) { super.onViewCreated(view, savedInstanceState) - setSystemBarsColors(statusBarColor = null, navigationBarColor = R.color.backgroundColorSecondary) mainViewModel.getMessage(messageUid).observe(viewLifecycleOwner) { message -> diff --git a/app/src/main/java/com/infomaniak/mail/ui/main/thread/actions/ReplyBottomSheetDialog.kt b/app/src/main/java/com/infomaniak/mail/ui/main/thread/actions/ReplyBottomSheetDialog.kt index ded79dfe6dd..aca011154f9 100644 --- a/app/src/main/java/com/infomaniak/mail/ui/main/thread/actions/ReplyBottomSheetDialog.kt +++ b/app/src/main/java/com/infomaniak/mail/ui/main/thread/actions/ReplyBottomSheetDialog.kt @@ -30,7 +30,6 @@ import com.infomaniak.mail.R import com.infomaniak.mail.data.models.draft.Draft.DraftMode import com.infomaniak.mail.databinding.BottomSheetReplyBinding import com.infomaniak.mail.utils.safeNavigateToNewMessageActivity -import com.infomaniak.mail.utils.setSystemBarsColors open class ReplyBottomSheetDialog : ActionsBottomSheetDialog() { @@ -45,7 +44,6 @@ open class ReplyBottomSheetDialog : ActionsBottomSheetDialog() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) = with(navigationArgs) { super.onViewCreated(view, savedInstanceState) - setSystemBarsColors(statusBarColor = null, navigationBarColor = R.color.backgroundColorSecondary) binding.mainActions.setClosingOnClickListener { id: Int -> val replyMode = if (id == R.id.actionReplyAll) DraftMode.REPLY_ALL else DraftMode.REPLY diff --git a/app/src/main/java/com/infomaniak/mail/ui/main/thread/actions/ThreadActionsBottomSheetDialog.kt b/app/src/main/java/com/infomaniak/mail/ui/main/thread/actions/ThreadActionsBottomSheetDialog.kt index 7d302e1983c..b87aa8bdf2d 100644 --- a/app/src/main/java/com/infomaniak/mail/ui/main/thread/actions/ThreadActionsBottomSheetDialog.kt +++ b/app/src/main/java/com/infomaniak/mail/ui/main/thread/actions/ThreadActionsBottomSheetDialog.kt @@ -43,7 +43,10 @@ import com.infomaniak.mail.data.models.draft.Draft.DraftMode import com.infomaniak.mail.data.models.thread.Thread import com.infomaniak.mail.ui.alertDialogs.DescriptionAlertDialog import com.infomaniak.mail.ui.main.menu.MoveFragmentArgs -import com.infomaniak.mail.utils.* +import com.infomaniak.mail.utils.animatedNavigation +import com.infomaniak.mail.utils.deleteWithConfirmationPopup +import com.infomaniak.mail.utils.notYetImplemented +import com.infomaniak.mail.utils.safeNavigateToNewMessageActivity import dagger.hilt.android.AndroidEntryPoint import javax.inject.Inject @@ -64,7 +67,6 @@ class ThreadActionsBottomSheetDialog : MailActionsBottomSheetDialog() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) = with(threadActionsViewModel) { super.onViewCreated(view, savedInstanceState) - setSystemBarsColors(statusBarColor = null, navigationBarColor = R.color.backgroundColorSecondary) threadLive.observe(viewLifecycleOwner) { thread ->