diff --git a/app/src/main/java/org/thoughtcrime/securesms/main/MainActivityListHostFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/main/MainActivityListHostFragment.kt index ac6b0a61a..896c550af 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/main/MainActivityListHostFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/main/MainActivityListHostFragment.kt @@ -14,6 +14,7 @@ import androidx.fragment.app.Fragment import androidx.fragment.app.viewModels import androidx.navigation.NavController import androidx.navigation.NavDestination +import androidx.navigation.Navigator import androidx.navigation.findNavController import androidx.navigation.fragment.FragmentNavigatorExtras import org.signal.core.util.concurrent.SimpleTask @@ -106,14 +107,23 @@ class MainActivityListHostFragment : Fragment(R.layout.main_activity_list_host_f if (state.tab == ConversationListTab.CHATS) { return } else { + val cameraFab = requireView().findViewById(R.id.camera_fab_new) + val newConvoFab = requireView().findViewById(R.id.fab_new) + + val extras: Navigator.Extras? = if (cameraFab == null || newConvoFab == null) { + null + } else { + FragmentNavigatorExtras( + cameraFab to "camera_fab", + newConvoFab to "new_convo_fab" + ) + } + navController.navigate( R.id.action_conversationListFragment_to_storiesLandingFragment, null, null, - FragmentNavigatorExtras( - requireView().findViewById(R.id.camera_fab_new) to "camera_fab", - requireView().findViewById(R.id.fab_new) to "new_convo_fab" - ) + extras ) } } diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingFragment.kt index 165a87557..0a77f70ca 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingFragment.kt @@ -97,6 +97,7 @@ class StoriesLandingFragment : DSLSettingsFragment(layoutId = R.layout.stories_l setEnterSharedElementCallback(object : SharedElementCallback() { override fun onSharedElementStart(sharedElementNames: MutableList?, sharedElements: MutableList?, sharedElementSnapshots: MutableList?) { if (sharedElementNames?.contains("camera_fab") == true) { + cameraFab.setImageResource(R.drawable.ic_compose_24) lifecycleDisposable += Single.timer(200, TimeUnit.MILLISECONDS).subscribeBy { cameraFab.setImageResource(R.drawable.ic_camera_outline_24) } diff --git a/app/src/main/res/layout/stories_landing_fragment.xml b/app/src/main/res/layout/stories_landing_fragment.xml index 2bfcd3e89..6b0757035 100644 --- a/app/src/main/res/layout/stories_landing_fragment.xml +++ b/app/src/main/res/layout/stories_landing_fragment.xml @@ -55,7 +55,7 @@ app:backgroundTint="@color/signal_colorPrimaryContainer" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" - app:srcCompat="@drawable/ic_compose_outline_24" + app:srcCompat="@drawable/ic_camera_outline_24" app:tint="@color/signal_colorOnPrimaryContainer" /> -