1
0
Fork 0

For #3209: Disable shared element animations for crash temporarily (#3482)

master
Colin Lee 2019-06-14 12:13:13 -05:00 committed by GitHub
parent 9009d16ac6
commit d5c5587a0c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 39 additions and 35 deletions

View File

@ -24,7 +24,6 @@ import androidx.fragment.app.Fragment
import androidx.lifecycle.Observer
import androidx.lifecycle.ViewModelProviders
import androidx.navigation.fragment.NavHostFragment.findNavController
import androidx.transition.TransitionInflater
import com.google.android.material.snackbar.Snackbar
import kotlinx.android.synthetic.main.component_search.*
import kotlinx.android.synthetic.main.fragment_browser.*
@ -133,11 +132,12 @@ class BrowserFragment : Fragment(), BackHandler, CoroutineScope {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
postponeEnterTransition()
sharedElementEnterTransition =
TransitionInflater.from(context).inflateTransition(android.R.transition.move).setDuration(
SHARED_TRANSITION_MS
)
// Disabled while awaiting a better solution to #3209
// postponeEnterTransition()
// sharedElementEnterTransition =
// TransitionInflater.from(context).inflateTransition(android.R.transition.move).setDuration(
// SHARED_TRANSITION_MS
// )
job = Job()
}

View File

@ -8,7 +8,6 @@ import android.content.Context
import android.view.ViewGroup
import androidx.navigation.NavOptions
import androidx.navigation.Navigation
import androidx.navigation.fragment.FragmentNavigator
import mozilla.components.browser.domains.autocomplete.DomainAutocompleteProvider
import mozilla.components.browser.session.SessionManager
import mozilla.components.browser.session.runWithSession
@ -60,13 +59,15 @@ class ToolbarIntegration(
// We need to dynamically add the options here because if you do it in XML it overwrites
val options = NavOptions.Builder().setPopUpTo(R.id.homeFragment, true)
.setEnterAnim(R.anim.fade_in).build()
val extras =
FragmentNavigator.Extras.Builder()
.addSharedElement(
browserLayout,
"$TAB_ITEM_TRANSITION_NAME${sessionManager.selectedSession?.id}"
)
.build()
val extras = null
// Disabled while awaiting a better solution to #3209
// val extras =
// FragmentNavigator.Extras.Builder()
// .addSharedElement(
// browserLayout,
// "$TAB_ITEM_TRANSITION_NAME${sessionManager.selectedSession?.id}"
// )
// .build()
val navController = Navigation.findNavController(toolbar)
if (!navController.popBackStack(
R.id.homeFragment,

View File

@ -20,12 +20,10 @@ import androidx.constraintlayout.widget.ConstraintLayout.LayoutParams.PARENT_ID
import androidx.fragment.app.Fragment
import androidx.lifecycle.Observer
import androidx.lifecycle.ViewModelProviders
import androidx.navigation.fragment.FragmentNavigator
import androidx.navigation.fragment.NavHostFragment.findNavController
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import androidx.recyclerview.widget.RecyclerView.SCROLL_STATE_IDLE
import androidx.transition.TransitionInflater
import com.google.android.material.snackbar.Snackbar
import kotlinx.android.synthetic.main.fragment_home.*
import kotlinx.android.synthetic.main.fragment_home.view.*
@ -119,9 +117,10 @@ class HomeFragment : Fragment(), CoroutineScope, AccountObserver {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
postponeEnterTransition()
sharedElementEnterTransition = TransitionInflater.from(context).inflateTransition(android.R.transition.move)
.setDuration(SHARED_TRANSITION_MS)
// Disabled while awaiting a better solution to #3209
// postponeEnterTransition()
// sharedElementEnterTransition = TransitionInflater.from(context).inflateTransition(android.R.transition.move)
// .setDuration(SHARED_TRANSITION_MS)
sessionObserver = BrowserSessionsObserver(sessionManager, singleSessionObserver) {
emitSessionChanges()
@ -235,11 +234,13 @@ class HomeFragment : Fragment(), CoroutineScope, AccountObserver {
invokePendingDeleteJobs()
onboarding.finish()
val directions = HomeFragmentDirections.actionHomeFragmentToSearchFragment(null)
val extras =
FragmentNavigator.Extras.Builder()
.addSharedElement(toolbar_wrapper, "toolbar_wrapper_transition")
.build()
nav(R.id.homeFragment, directions, extras)
// Disabled while awaiting a better solution to #3209
// val extras =
// FragmentNavigator.Extras.Builder()
// .addSharedElement(toolbar_wrapper, "toolbar_wrapper_transition")
// .build()
// nav(R.id.homeFragment, directions, extras)
nav(R.id.homeFragment, directions)
requireComponents.analytics.metrics.track(Event.SearchBarTapped(Event.SearchBarTapped.Source.HOME))
}
@ -342,11 +343,13 @@ class HomeFragment : Fragment(), CoroutineScope, AccountObserver {
val session = sessionManager.findSessionById(action.sessionId)
sessionManager.select(session!!)
val directions = HomeFragmentDirections.actionHomeFragmentToBrowserFragment(null)
val extras =
FragmentNavigator.Extras.Builder()
.addSharedElement(action.tabView, "$TAB_ITEM_TRANSITION_NAME${action.sessionId}")
.build()
nav(R.id.homeFragment, directions, extras)
// Disabled while awaiting a better solution to #3209
// val extras =
// FragmentNavigator.Extras.Builder()
// .addSharedElement(action.tabView, "$TAB_ITEM_TRANSITION_NAME${action.sessionId}")
// .build()
// nav(R.id.homeFragment, directions, extras)
nav(R.id.homeFragment, directions)
}
is TabAction.Close -> {
if (pendingSessionDeletion?.deletionJob == null) {

View File

@ -20,7 +20,6 @@ import androidx.appcompat.app.AppCompatActivity
import androidx.coordinatorlayout.widget.CoordinatorLayout
import androidx.fragment.app.Fragment
import androidx.navigation.Navigation
import androidx.transition.TransitionInflater
import kotlinx.android.synthetic.main.fragment_search.*
import kotlinx.android.synthetic.main.fragment_search.view.*
import mozilla.components.browser.search.SearchEngine
@ -64,11 +63,12 @@ class SearchFragment : Fragment(), BackHandler {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
postponeEnterTransition()
sharedElementEnterTransition =
TransitionInflater.from(context).inflateTransition(android.R.transition.move).setDuration(
SHARED_TRANSITION_MS
)
// Disabled while awaiting a better solution to #3209
// postponeEnterTransition()
// sharedElementEnterTransition =
// TransitionInflater.from(context).inflateTransition(android.R.transition.move).setDuration(
// SHARED_TRANSITION_MS
// )
}
override fun onCreateView(