mirror of
https://github.com/facebook/react-native.git
synced 2024-11-21 22:10:14 +00:00
7fb3d830be
Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/46809 BaseViewManagerInterface isn't adding much value right now. It was added in D16984121 to allow codegen generated ViewManager delegates to apply to view managers which derive from ViewMangager instead of BaseViewManager (if they did some cleverness, to make VM delegate apply to a no-op class, still implementing all of BaseViewManager's methods). All of the cases where that was used have since been moved to `SimpleViewManager`, and `BaseViewManagerAdapter` (needed to wire this together) doesn't exist anymore, so it's not possible to take any advantage of this interface existing. We should remove it, since its existence is a source of error (e.g. it was missing setters for `accessibilityValue` or those related to pointer events), and is more generally confusing for anyone adding to `BaseViewManager` in the future. This is a breaking change, because there are some libraries which vendor a copy of generated ViewManagerDelegate when building against legacy arch to be able to share code normally generated at build time. That means these will need to be updated to maintain compatibility with RN versions of 0.77+ with new arch disabled. This will not effect compatibility of these libraries against the default new arch, and the updated delegate is still compatible with older RN version. ``` sourceSets.main { java { if (!isNewArchitectureEnabled()) { srcDirs += [ "src/paper/java", ] } } } ``` 1. `react-native-picker/picker` 2. `rnmapbox/maps` 3. `react-native-gesture-handler` 4. `react-native-screens` 5. `react-native-svg` 6. `react-native-safe-area-context` 7. `react-native-pdf` Changelog: [Android][Breaking] - Remove BaseViewManagerInterface Reviewed By: cortinico Differential Revision: D63819044 fbshipit-source-id: 7e4935c8e43706b168f0f599a6676e8abfa66937 |
||
---|---|---|
.. | ||
android | ||
js | ||
index.d.ts | ||
index.js | ||
package.json | ||
react-native.config.js |