Fixed
Status Update
Comments
il...@google.com <il...@google.com> #2
This looks like a regression caused by the fix in
It sounds like you're asking for changes to
ap...@google.com <ap...@google.com> #3
Project: platform/frameworks/support
Branch: androidx-main
commit b72c198ba05378b4fe1e739c8992f850312742dd
Author: Jeremy Woods <jbwoods@google.com>
Date: Wed Apr 14 16:56:41 2021
Look at DialogFragment inflated layout before the dialog's
When using something like a BottomSheetDialog, because it reuses ids for
its child view, the dialog's view will be consider as the container
instead of the actual inflated container. To fix this, we should just
look at the inflated layout first.
RelNote: "You can now add fragment to `BottomSheetDialogFragment`s and
they will have a properly nested view hierarchy."
Test: DialogFragmentTest
Bug: 180021387
Change-Id: Ie62791677cb8771f22b19bdce5985426c669fba0
M fragment/fragment/src/androidTest/java/androidx/fragment/app/DialogFragmentTest.kt
M fragment/fragment/src/main/java/androidx/fragment/app/DialogFragment.java
https://android-review.googlesource.com/1676082
Branch: androidx-main
commit b72c198ba05378b4fe1e739c8992f850312742dd
Author: Jeremy Woods <jbwoods@google.com>
Date: Wed Apr 14 16:56:41 2021
Look at DialogFragment inflated layout before the dialog's
When using something like a BottomSheetDialog, because it reuses ids for
its child view, the dialog's view will be consider as the container
instead of the actual inflated container. To fix this, we should just
look at the inflated layout first.
RelNote: "You can now add fragment to `BottomSheetDialogFragment`s and
they will have a properly nested view hierarchy."
Test: DialogFragmentTest
Bug: 180021387
Change-Id: Ie62791677cb8771f22b19bdce5985426c669fba0
M fragment/fragment/src/androidTest/java/androidx/fragment/app/DialogFragmentTest.kt
M fragment/fragment/src/main/java/androidx/fragment/app/DialogFragment.java
jb...@google.com <jb...@google.com> #4
This has been fixed internally and will be available in the Fragment 1.3.3
release.
Description
Component used: Fragment Version used: 1.3.0 Devices/Android versions reproduced on: Any
Occurs when we use BottomSheetDialogFragment after updating androidx.fragment:fragment from 1.2.5 to 1.3.0.
Steps to reproduce:
container
container
Expected: A child fragment is added into our container specified in the layout. Actual result: A child fragment added into the container used for CoordinatorLayout.Expected view hierarchy (1.2.5):
Actual view hierarchy (1.3.0):
It seems that it happens because in 1.3.0 a code for finding the right container to use for fragment transaction was changed. A new implementation for DialogFragment is looking for the container starting from the top of hierarchy (DecorView):
At the same time it's different for Fragment:
The only workaround we found is to use a different id for our container, anything but
container
. But this doesn't seem appropriate as we could have a ton of BottomSheets in the project and this kind of id clashing is resolved very well in ordinary fragments.