bluelinelabs / bluelinelabs/Conductor
Freezing in SharedElementTransitionChangeHandler.waitOnAllTransitionNames
- Dominant language
- Java
- Stars
- 3.9k
- Forks
- 338
- PR merge metrics
- No merged PRs in 30d
Description
It's very easy to completely freeze your app while it's waiting for a view with a specific transition name that may never come.
Repro:
1. Have a controller with a row of 5 images in landscape and 3 in portrait. The type of container layout doesn't matter.
2. Click on the 4th or 5th image while in landscape mode.
3. Correct entering shared element transition is displayed.
4. Rotate to portrait.
5. Now it will freeze because the 4th and 5th images are not shown and `SharedElementTransitionChangeHandler` will wait forever.
There are many situations where this problem may happen. **Is there a suggested way to handle the case when a layout in different screen orientations show different sets of images?**
Contributor guide
Research direction
Start by reading SharedElementTransitionChangeHandler.waitOnAllTransitionNames and reproducing the rotation scenario with transition names that disappear from the layout. Trace how the handler behaves when a requested view never appears, then add regression coverage and verify that the transition no longer freezes indefinitely.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, java
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100