* fix: refactor side loaded text tracks management
More textTracks in source.
android/ios: ensure text tracks are not selected by default
android/ios make textTrack field not nullable
clean up doc
check compatibility with the old api
Add comments on deprecated JS apis
Apply API change on basic sample
* chore: fix linter
* fix(ios): fix build with caching & remove warnings
* feat(android): handle navigation bar status in full-screen mode
* chore: update default value of prop
* chore(android): rework fullscreen configuration
---------
Co-authored-by: mostafahasani <seyedmostafahassani@gmail.com>
* fix(android): add subtitleStyle.subtitlesFollowVideo prop to control subtitles positionning
* docs: add new prop description
* docs: add supported platform for subtitleStyle
* chore: use constructor instead of parse
* perf: ensure we do not provide callback to native if no callback provided from app
* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size
* chore: improve issue template
* fix(android): avoid video view flickering at playback startup
* chore(android): refactor DRM props into a dedicated class
* Update android/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java
* chore: fix linter
* fix: ensure drm prop is correctly cleaned
* feat(android): move viewType (secure texture) & drm inside the source
The origianl behavior has been kept for interoperability, but marked as deprecated in doc
* chore: fix linter
* chore(ios): move drm prop in source like on android
* chore: fix linter
* chore: clean log
* fix: allow to disable secure View
* chore: fix viewType resolution (source value was not handled)
* chore: use contentDeepEquals instead of manual checks
* chore: fix linter
* fix: ensure player doesn't start when view is unmounted
* Fix/ensure view drop stop playback startup (#3875)
* fix: ensure player doesn't start when view is unmounted
* chore: revert change
* chore: add warning in case of invalid Surface configuration
* chore: code clean
* fix: simplify surface management
* chore: restore previous code
* chore: fix typo
* chore: code cleanup
* feat(android): add multiDrm flag support
* docs: update docs
* chore: fix ios build
* chore: fix deprecated declaration
---------
Co-authored-by: Krzysztof Moch <krzysmoch.programs@gmail.com>
* refactor: basic example from class component to functional component
* refactor: toast component path
* refactor: bufferConfig prop
* refacotr: import component path
* fix: seekbar issue on iOS
* refactor: state variable
* chore: refactor overlay component according to new state structure
* feat: 🔥 version bump react native for ios FabricExample
* feat: ✨ copied newly created basic example TS files
* feat: 🔥 bump up native layers of FabricExample android app
* feat: 🔥 turn off buildDir setting in android/build.gradle for correct Fabric codegen dir location
* Revert "feat: 🔥 turn off buildDir setting in android/build.gradle for correct Fabric codegen dir location"
This reverts commit 62ec8d739b1f21906972eb935fc934e87294a8e6.
* perf: ensure we do not provide callback to native if no callback provided from app
* chore: rework bufferConfig to make it more generic and reduce ReactExoplayerView code size
* chore: improve issue template
* fix(android): avoid video view flickering at playback startup
* fix: ensure player doesn't start when view is unmounted
* chore: move basic sample to expo
* Update examples/basic/package.json
Co-authored-by: Krzysztof Moch <krzysmoch.programs@gmail.com>
* chore: use last expo version
* chore: fix podfile
---------
Co-authored-by: Krzysztof Moch <krzysmoch.programs@gmail.com>
* fix: refactor source parameter parsing
Also fix a side issue when using a local file cropping props were not applied
Also fix random DRM issue by refactoring initializePlayerSource https://github.com/TheWidlarzGroup/react-native-video/issues/3082
* chore: restore metadata checks before appling them