Commit graph

765 commits

Author SHA1 Message Date
litetex
5c1315641d setRecovery: Remove checks and use Math.min/max 2021-11-15 19:56:14 +01:00
litetex
ca37d7cb66 Prevent automatic replay after returning from background
See also https://github.com/TeamNewPipe/NewPipe/pull/7195#issuecomment-962624380
2021-11-15 19:47:08 +01:00
Robin
a86e819a35 Merge pull request #7363 from litetex/playback-speed-ctrls-simple-landscape-improvements
Simple playback-speed-controls improvements
2021-11-12 21:19:17 +01:00
litetex
2a9d3f5f53 Refactored `PlaybackResolver`
* fixes the deprecation of ``setTag``
* makes the code more consistent
* de-duplicates some code
2021-11-12 20:14:39 +01:00
litetex
24bf4487d0 De-duplicated PlayerDataSource-code 2021-11-12 19:40:00 +01:00
Robin
38360b5c92 Use Android11+ extractors 2021-11-12 19:17:52 +01:00
Robin
6205dce2c8 Update ExoPlayer to 2.14.2 2021-11-12 19:17:51 +01:00
litetex
2d21925dae Removed obvious title from the "Playback Speed Controls" 2021-11-07 13:51:43 +01:00
litetex
7858970446 Added a custom title
to also save some margin/padding/etc
2021-11-04 19:47:08 +01:00
litetex
5bc68ffd1d Merge pull request #6844 from 0x416c6578/shuffle-mode-ui-fix
Fixed shuffle button opacity UI bug
2021-11-03 18:18:31 +01:00
litetex
3103ebab71 Fixed typo 2021-11-03 17:30:30 +01:00
litetex
1625c4b2a7 Always create a backup list when shuffling
The backup-list has to be created at all cost (even when current list size <= 2). Otherwise it's not possible to enter shuffle-mode (as ``isShuffled()`` always returns false)!
2021-10-23 17:35:42 +02:00
litetex
be83a6bd0e Fixing the shuffle button on the UI is enough.
No need for doing the heavier method ``onShuffleModeEnabledChanged(false);``
2021-10-23 16:46:56 +02:00
0x416c6578
128b079f4f Removed changes to the intent handler 2021-10-23 16:43:29 +02:00
0x416c6578
085df96ad8 Fixed shuffle button opacity bug
Parameterised shuffle state into initPlayback for potentially passing the shuffle state into the player in the future
2021-10-23 16:43:28 +02:00
TacoTheDank
8f7a36dc48 Update RecyclerView & Groupie 2021-10-19 17:31:59 -04:00
litetex
617cde9930 Merge pull request #7194 from KalleStruik/add-to-playlist-in-share
Add a "add to playlist" option in the share menu
2021-10-13 20:34:07 +02:00
TobiGr
3a7f39d684 Simplify code and add annotations 2021-10-10 20:33:05 +02:00
litetex
2361d32f75 Cleaned up PlaylistDialog-related code 2021-10-09 18:46:20 +02:00
Tobi
c1444b75cd Merge pull request #7176 from litetex/fix-progress-bar-end-not-synced
Fixed seekbar not completed after video end
2021-10-02 09:24:59 +02:00
litetex
e9669884f5 Referenced issue in code 2021-09-26 20:58:49 +02:00
litetex
085990c609 Fixed progress bar not completing after video end 2021-09-26 20:50:24 +02:00
litetex
9aaa75fd3d Improved streamType check and documentation 2021-09-25 10:31:42 +02:00
litetex
45a1900b27 Removed useless check for livestreams 2021-09-25 00:04:53 +02:00
litetex
2f5f052aa4 Reformatted MediaSessionManager code 2021-09-24 23:55:06 +02:00
litetex
b44e9ccd7f Fixed performance problems with mediaSessionManager
* Built on top of Redirons changes
* MediaSessionManager-Metadata get's only update when metadata changes - not every second as it only changes when the metadata changes
* Reworked mediasessionmanager
2021-09-24 23:40:12 +02:00
Robin
52a83f3f47 Two fixes for setMetadata 2021-09-24 23:28:55 +02:00
Stypox
890b5b3895 Merge branch 'master' into dev 2021-09-19 22:37:00 +02:00
z3r0r4
ac3a8214b2 Add play next to long press menu & refactor enqueue methods (#6872)
* added mvp play next button in long press menu; new intent handling, new long press dialog entry, new dialog functions, new strings

* changed line length for checkstyle pass

* cleaned comments, moved strings

* Update app/src/main/res/values/strings.xml

to make long press entry more descriptive

Co-authored-by: opusforlife2 <53176348+opusforlife2@users.noreply.github.com>

* Update app/src/main/res/values/strings.xml

Co-authored-by: Stypox <stypox@pm.me>

* replace redundant nextOnVideoPlayer methods

Co-authored-by: Stypox <stypox@pm.me>

* add enqueueNextOnPlayer and enqueueOnPlayer without selectOnAppend and RESUME_PLAYBACK/ deprecate enqueueNextOn*Player and enqueueOn*Player methods
add getPlayerIntent, getPlayerEnqueueIntent and getPlayerEnqueueNextIntent without selectOnAppend and RESUME_PLAYBACK/ deprecate those with
add section comments

* removed deprecated methods
removed redundant methods

* removed deprecated methods
removed redundant methods

* replaced APPEND_ONLY, removed SELECT_ON_APPEND / replaced remaining enqueueOn*Player methods

* now works with playlists

* renamed dialog entry

* checking for >1 items in the queue using the PlayerHolder

* making enqueue*OnPlayer safe to call when no video is playing (defaulting to audio)

* corrected strings

* improve getQueueSize in PlayerHolder

* long press to enqueue only if queue isnt empty

* add Whitespace

Co-authored-by: Stypox <stypox@pm.me>

* clarify comments / add spaces

* PlayerType as parameter of the enqueueOnPlayer method
add Helper method

* using the helper function everywhere (except for the background and popup long-press actions (also on playlists, history, ...)), so basically nowhere
/ passing checkstyle

* assimilated the enqueue*OnPlayer methods

* removed redundant comment, variable

* simplify code line

Co-authored-by: Stypox <stypox@pm.me>

* move if

* replace workaround for isPlayerOpen()

Co-authored-by: Stypox <stypox@pm.me>

* replaced workarounds (getType), corrected static access with getInstance

* remove unused imports

* changed method call to original, new method doesnt exist yet.

* Use getter method instead of property access syntax.

* improve conditional for play next entry

Co-authored-by: Stypox <stypox@pm.me>

* show play next btn in feed fragment

Co-authored-by: Stypox <stypox@pm.me>

* add play next to local playlist and statistics fragment

Co-authored-by: Stypox <stypox@pm.me>

* formating

Co-authored-by: Stypox <stypox@pm.me>

* correcting logic

Co-authored-by: Stypox <stypox@pm.me>

* remove 2 year old unused string, formating

Co-authored-by: Stypox <stypox@pm.me>

* correct enqueue (next) conditionals, default to background if no player is open. Dont generally default to background play.

* remove player open checks from button long press enqueue actions

* improve log msg

* Rename next to enqueue_next

* Refactor kotlin

Co-authored-by: opusforlife2 <53176348+opusforlife2@users.noreply.github.com>
Co-authored-by: Stypox <stypox@pm.me>
2021-09-18 11:22:49 +02:00
Tobi
01c7041d6f Merge pull request #7056 from TeamNewPipe/fix/playOnPopup
Fix handling exception in `playOnPopup` and toggle description tab
2021-09-10 18:21:41 +02:00
thefalsedev
33a13651f9 Change player progress bar update from 500 ms to 1 s
Just like in the issue 7062, https://github.com/TeamNewPipe/NewPipe/issues/7062, this doesn't affect UI as it updates every one second anyway, but reduces very heavy android widget progress bar high cpu usage. With every 500s there is 6% cpu usage and with 1s only 4%. However further changes will have to be made to disable updating of player progress bar when screen is off to further reduce power consumption. With this, total power savings would be 20% in mAh consumption.
2021-09-07 00:04:05 +02:00
TobiGr
5a257f9ebb Fix a few SonarLint warnings 2021-09-05 19:54:28 +02:00
Stypox
a551cc72f6 Move fullscreen-related comments to javadocs 2021-09-01 20:13:27 +02:00
Stypox
d330da58a8 Fix null pointer exception in player initialization 2021-09-01 20:13:27 +02:00
Stypox
e825e9db55 Completely close player when changing stream w/o autoplay 2021-09-01 20:13:27 +02:00
Stypox
70e8065ea6 Fix opening directly fullscreen on tablets 2021-09-01 20:12:09 +02:00
Stypox
b2e0859e8a Extract isLandscape and isInMultiWindow to DeviceUtils 2021-09-01 20:09:08 +02:00
Stypox
28c1384391 Add option to directly open fullscreen when the main player starts 2021-09-01 20:08:37 +02:00
Robin
c76ebb21f5 Merge pull request #6993 from Redirion/closeaudioeffectsession
Close audio effect control session properly
2021-08-31 12:37:20 +02:00
Stypox
ef08fce9f1 Merge pull request #6955 from ktprograms/queue-long-press-menu
Show popup menu when long pressing in play queue (Full screen player)
2021-08-31 12:22:59 +02:00
Stypox
bde378618d Merge pull request #7024 from Stypox/string-fixes
Never use ``android.R.string``s; remove unused ``add`` string
2021-08-31 12:00:07 +02:00
Stypox
3d393f2bb9 Merge pull request #6985 from litetex/set-seekbarjump-when-using-dpad-to-seek-duration-from-preferences
Set ``KeyProgressIncrement`` manually / Fix long seekbar jumps when using a DPad
2021-08-30 23:36:29 +02:00
Stypox
14ebb41264 Rename string finish to ok, as its content was "OK" 2021-08-30 16:36:57 +02:00
litetex
8ee0352f66 Fixed double tapping the replay button 2021-08-29 17:53:09 +02:00
Robin
1b10aa685c Merge pull request #6515 from Redirion/buffersharmonization
Use ExoPlayer default values for buffers
2021-08-29 17:44:43 +02:00
Robin
6242d3f28d close audio effect control session properly 2021-08-27 10:53:44 +02:00
litetex
cb15d97cf9 Set `KeyProgressIncrement` manually
* Set ``KeyProgressIncrement`` manually to the value of the seek duration in the settings so that it works when using the DPad
* consolidated code inside a new method to avoid duplication
2021-08-26 17:16:51 +02:00
ktprograms
b448f87b99 Remove TAG parameter, refactor method calls 2021-08-25 17:04:15 +08:00
ktprograms
6cc6ad2346 Move opening popup menu to utility class 2021-08-25 09:30:40 +08:00
ktprograms
cf1f0cf2da Remove Details option in Main Player Queue menu 2021-08-25 08:56:26 +08:00