fix: remove runtime warning by replacing UIManager.RCTVideo
with UIManager.getViewManagerConfig('RCTVideo')
(and ensuring backwards compat) (#1487)
* replaced UIManager.RCTVideo > UIManager.getViewManagerConfig('RCTVideo') * added requested changes * updated changelog.md * docs: adjust wording
This commit is contained in:
parent
d8a2a9e108
commit
b448b30de6
@ -1,7 +1,7 @@
|
||||
## Changelog
|
||||
|
||||
### next
|
||||
|
||||
* Fix runtime warning by replacing `UIManager.RCTVideo` with `UIManager.getViewManagerConfig('RCTVideo')` (and ensuring backwards compat) [#1487](https://github.com/react-native-community/react-native-video/pull/1487)
|
||||
* Fix loading package resolved videos when using video-caching [#1438](https://github.com/react-native-community/react-native-video/pull/1438)
|
||||
* Fix "message sent to deallocated instance" crash on ios [#1482](https://github.com/react-native-community/react-native-video/pull/1482)
|
||||
|
||||
|
17
Video.js
17
Video.js
@ -210,6 +210,13 @@ export default class Video extends Component {
|
||||
}
|
||||
};
|
||||
|
||||
getViewManagerConfig = viewManagerName => {
|
||||
if (!UIManager.getViewManagerConfig) {
|
||||
return UIManager[viewManagerName];
|
||||
}
|
||||
return UIManager.getViewManagerConfig(viewManagerName);
|
||||
};
|
||||
|
||||
render() {
|
||||
const resizeMode = this.props.resizeMode;
|
||||
const source = resolveAssetSource(this.props.source) || {};
|
||||
@ -224,14 +231,16 @@ export default class Video extends Component {
|
||||
const isAsset = !!(uri && uri.match(/^(assets-library|ipod-library|file|content|ms-appx|ms-appdata):/));
|
||||
|
||||
let nativeResizeMode;
|
||||
const RCTVideoInstance = this.getViewManagerConfig('RCTVideo');
|
||||
|
||||
if (resizeMode === VideoResizeMode.stretch) {
|
||||
nativeResizeMode = NativeModules.UIManager.RCTVideo.Constants.ScaleToFill;
|
||||
nativeResizeMode = RCTVideoInstance.Constants.ScaleToFill;
|
||||
} else if (resizeMode === VideoResizeMode.contain) {
|
||||
nativeResizeMode = NativeModules.UIManager.RCTVideo.Constants.ScaleAspectFit;
|
||||
nativeResizeMode = RCTVideoInstance.Constants.ScaleAspectFit;
|
||||
} else if (resizeMode === VideoResizeMode.cover) {
|
||||
nativeResizeMode = NativeModules.UIManager.RCTVideo.Constants.ScaleAspectFill;
|
||||
nativeResizeMode = RCTVideoInstance.Constants.ScaleAspectFill;
|
||||
} else {
|
||||
nativeResizeMode = NativeModules.UIManager.RCTVideo.Constants.ScaleNone;
|
||||
nativeResizeMode = RCTVideoInstance.Constants.ScaleNone;
|
||||
}
|
||||
|
||||
const nativeProps = Object.assign({}, this.props);
|
||||
|
Loading…
Reference in New Issue
Block a user