Commit e3970a4
Restore subclipping view removal (#48329)
Summary:
Pull Request resolved: #48329
With the call to `removeView()` removed from `ReactViewClippingManager` in #47634, we're seeing views erroneously sticking around in the layout.
While `removeViewWithSubviewClippingEnabled()` calls `removeViewsInLayout()`, it does not trigger the corresponding side effects of [removeView()](https://android.googlesource.com/platform/frameworks/base/+/refs/tags/android-15.0.0_r9/core/java/android/view/ViewGroup.java#5501):
```
public void removeView(View view) {
if (removeViewInternal(view)) {
--> requestLayout();
--> invalidate(true);
}
}
```
To compensate, flip `removeViewsInLayout()` to [`removeViews()`](https://android.googlesource.com/platform/frameworks/base/+/refs/tags/android-15.0.0_r9/core/java/android/view/ViewGroup.java#5562), which will ensure layout.
Changelog: [Android][Fixed] Restore layout/invalidate during ReactViewClippingManager.removeViewAt()
Reviewed By: javache
Differential Revision: D67398971
fbshipit-source-id: b100db468cc3be6ddc6edd6c6d078a8a0b59a2c11 parent 4370860 commit e3970a4
1 file changed
Lines changed: 1 addition & 0 deletions
File tree
- packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/view
packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
708 | 708 | | |
709 | 709 | | |
710 | 710 | | |
| 711 | + | |
711 | 712 | | |
712 | 713 | | |
713 | 714 | | |
| |||
0 commit comments