YangJH
69a7bc2d26
feat: implement enterPictureInPictureOnLeave prop for both platform (Android, iOS) ( #3385 )
...
* docs: enable Android PIP
* chore: change comments
* feat(android): implement Android PictureInPicture
* refactor: minor refactor code and apply lint
* fix: rewrite pip action intent code for Android14
* fix: remove redundant codes
* feat: add isInPictureInPicture flag for lifecycle handling
- activity provide helper method for same purpose, but this flag makes code simple
* feat: add pipFullscreenPlayerView for makes PIP include video only
* fix: add manifest value checker for prevent crash
* docs: add pictureInPicture prop's Android guide
* fix: sync controller visibility
* refactor: refining variable name
* fix: check multi window mode when host pause
- some OS version call onPause on multi-window mode
* fix: handling when onStop is called while in multi-window mode
* refactor: enhance PIP util codes
* fix: fix FullscreenPlayerView constructor
* refactor: add enterPictureInPictureOnLeave prop and pip methods
- remove pictureInPicture boolean prop
- add enterPictureInPictureOnLeave boolean prop
- add enterPictureInPicture method
- add exitPictureInPicture method
* fix: fix lint error
* fix: prevent audio play in background without playInBackground prop
* fix: fix onDetachedFromWindow
* docs: update docs for pip
* fix(android): sync pip controller with external controller state
- for media session
* fix(ios): fix pip active fn variable reference
* refactor(ios): refactor code
* refactor(android): refactor codes
* fix(android): fix lint error
* refactor(android): refactor android pip logics
* fix(android): fix flickering issue when stop picture in picture
* fix(android): fix import
* fix(android): fix picture in picture with fullscreen mode
* fix(ios): fix syntax error
* fix(android): fix Fragment managed code
* refactor(android): remove redundant override lifecycle
* fix(js): add PIP type definition for codegen
* fix(android): fix syntax
* chore(android): fix lint error
* fix(ios): fix enter background handler
* refactor(ios): remove redundant code
* fix(ios): fix applicationDidEnterBackground for PIP
* fix(android): fix onPictureInPictureStatusChanged
* fix(ios): fix RCTPictureInPicture
* refactor(android): Ignore exception for some device ignore pip checker
- some device ignore PIP availability check, so we need to handle exception to prevent crash
* fix(android): add hideWithoutPlayer fn into Kotlin ver
* refactor(android): remove redundant code
* fix(android): fix pip ratio to be calculated with correct ratio value
* fix(android): fix crash issue when unmounting in PIP mode
* fix(android): fix lint error
* Update android/src/main/java/com/brentvatne/react/VideoManagerModule.kt
* fix(android): fix lint error
* fix(ios): fix lint error
* fix(ios): fix lint error
* feat(expo): add android picture in picture config within expo plugin
* fix: Replace Fragment with androidx.activity
- remove code that uses Fragment, which is a tricky implementation
* fix: fix lint error
* fix(android): disable auto enter when player released
* fix(android): fix event handler to check based on Activity it's bound to
---------
Co-authored-by: jonghun <jonghun@toss.im>
Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com>
2025-01-04 12:37:33 +01:00
Olivier Bouillet
9a3fcda3b8
feat: add setSource API function fix ads playback ( #4185 )
...
* feat: add setSource API function fix ads playback
2024-10-10 22:59:41 +02:00
YangJH
c2084c2ace
refactor: internal refactor for prepare new arch ( #3980 )
...
* chore(js): fix typo
* refactor(js): refactor type code for codegen
* refactor(js): refactor Video component
- parse shutterColor value within JS
- remove internal fullscreen state
* chore(js): add deprecation warning comment
* fix(js): fix return type
* fix(js): fix import path
* refactor(android): apply changed API for new arch
* refactor(ios): apply changed API for new arch
* fix(ios): fix wrong name
* refactor: refactor VideoDecoderProperties
- rename and add wrapper
* refactor(android): Code fixes for backward compatibility with Kotlin
2024-07-12 10:27:42 +02:00
Seyed Mostafa Hasani
3a4a13011a
chore: add setFullScreen to component's ref ( #3855 )
...
* chore: add setFullScreen to component's ref and remove presentFullscreenPlayer & dismissFullscreenPlayer
2024-06-10 22:41:26 +02:00
Dibyendu Das
ac0a9c3e3a
fix(ios): Implicit use of 'self' in closure - use 'self.' to make capture semantics explicit ( #3764 ) ( #3881 )
...
* Fix/ensure view drop stop playback startup (#3875 )
* fix: ensure player doesn't start when view is unmounted
* Patch commit to fix the error:
Implicit use of 'self' in closure; use 'self.' to make capture semantics explicit
---------
Co-authored-by: Olivier Bouillet <62574056+freeboub@users.noreply.github.com>
2024-06-07 14:04:00 +02:00
Seyed Mostafa Hasani
c7f4d7b83b
feat: add getCurrentPosition to component's ref ( #3824 )
...
* feat: add getCurrentPosition to component's ref
---------
Co-authored-by: mostafahasani <hasanie.mostafa@alopeyk.com>
2024-05-28 11:00:38 +02:00
Krzysztof Moch
cd28d370d2
fix(ios): don't crash app if view wasn't found ( #3841 )
...
* fix(ios): don't crash app if view wasn't found
* lint code
2024-05-27 09:22:22 +02:00
Seyed Mostafa Hasani
3cd7ab60b2
feat: add setVolume function to component's ref ( #3794 )
...
* feat: add setVolume function to component's ref
* Update methods.mdx
2024-05-20 12:21:48 +02:00
Krzysztof Moch
0312afc8ea
fix: remove setNativeProps
usage ( #3605 )
...
* fix: remove `setNativeProps` usage
* code review
2024-03-28 11:22:04 +01:00
Krzysztof Moch
46c8c498c4
fix(ios): fix missing bridge in bridgeless mode ( #3570 )
2024-03-07 20:16:11 +01:00
Krzysztof Moch
800aee09de
chore: lint project ( #3395 )
...
* chore: format swift code
* chore: format clang code
* chore: format kotlin code
* refactor: rename folder "API" to "api"
2023-12-07 08:47:40 +01:00
YangJH
7f49b56027
fix(ios): fix wrong fullscreen method definition ( #3338 )
2023-11-08 19:04:39 +01:00
Krzysztof Moch
7fd7b3ff32
feat: refactor resize prop handler ( #3286 )
2023-10-11 21:56:54 +02:00
Facundo Gutierrez
f4acaccd80
fix(ios): fairplay different key per asset ( #3261 )
...
* [Fix] Replace _loadingRequest instance with _loadingRequests dictionary to support multiple concurrent requests
* Remove stored finished requests from dictionary
* Keep contentId as is, and send loadingRequest.url in licenseUrl.
* Update DRM.md
---------
Co-authored-by: Facundo Gutierrez <facundo.gutierrez@tcc.com.uy>
2023-10-05 21:37:28 +02:00
KrzysztofMoch
f9743fdbd6
chore: invert setPlayerPauseState
logic
2023-09-22 09:04:20 +02:00
KrzysztofMoch
421712825b
chore: rename setPlayerStatus
to setPlayerPauseState
2023-09-21 07:25:21 +02:00
KrzysztofMoch
85c9e8f990
feat(ios): add playback functions to ref
2023-09-18 11:46:39 +02:00
olivier
ddc87acf84
fix: implement lost presentFullscreenPlayer & dismissFullscreenPlayer
...
These apis has been removed during swift porting
2023-09-04 23:57:45 +02:00
nbennink
16e346c0b1
Merge branch 'master' into fix/disable-sideloaded-texttracks
2022-06-13 11:40:43 +02:00
Nick Fujita
68b9db4d11
iOS Swift Conversion ( #2527 )
...
Converts iOS implementation from Objective-c to Swift
# During the conversion process some updates to the code structure were also made
- Modularize codebase from single file to smaller focused files
- Untangled large nested IF statements
- Added more null checks, since Swift is more strict with null pointers
- Added property to allow for decoding of local video sources with self contained key for offline playback
- Updates example apps to test react-native 0.63.4 and uses auto native dependency imports for android and ios
2022-05-19 22:29:25 +09:00