Commit graph

130 commits

Author SHA1 Message Date
Aayush Gupta
3ae93402cf ktlint: Fix standard_argument-list-wrapping violations
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2026-01-24 00:31:44 +08:00
Aayush Gupta
8f779d8ac5 ktlint: Fix blank-line-between-when-conditions violations
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2026-01-24 00:31:44 +08:00
Aayush Gupta
9f60f8b6a1 ktlint: Fix indentation violations
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2026-01-24 00:31:44 +08:00
Aayush Gupta
4fd959ed60 ktlint: Drop unused trailing commas
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2026-01-24 00:31:14 +08:00
Aayush Gupta
f388d7abb0 ktlint: Drop unused semi-colons
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2026-01-24 00:31:14 +08:00
Aayush Gupta
8d86430222 ktlint: Order imports in lexicographic order
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2026-01-24 00:31:13 +08:00
Yevhen Babiichuk (DustDFG)
71ffd17967 Refactor ExportPlaylist to use more idiomatic kotlin code 2026-01-01 15:03:29 +02:00
Tobi
0909f8c029 Merge pull request #12746 from TeamNewPipe/kspMigration
Migrate from KAPT to KSP
2025-11-07 07:41:56 -08:00
Aayush Gupta
e622f54594 Migrate & adapt database tests to Kotlin as well
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-11-03 16:14:29 +08:00
TransZAllen
b984a31117 refactor(ttml): improve extractText() to preserve spaces and special characters
- Replaced `text()` with `getWholeText()`:
  - avoids losing whitespaces at the beginning, end, or within the text;
  - avoids merging two or more consecutive spaces into a single space ' ';
  - avoids converting '\r', '\n', and '\r\n' within the text into a single space ' ';
  For subtitle conversion, the goal is to preserve every character exactly as intended by the subtitle author.
- Normalized tabs, line breaks, and other special characters for SRT-safe output.
- Added comprehensive unit tests in `SrtFromTtmlWriterTest.java`, including cases for simple and nested tags.
2025-10-17 01:57:01 +08:00
Diana Victoria Furrer
8a405efb2b added FeedGroup to Tab Settings UnitTest 2025-05-31 01:41:06 +02:00
tfga
9e898fa838 YouTube video IDs are 11 characters long
Co-authored-by: Stypox <stypox@pm.me>
2025-03-11 20:35:41 -03:00
tfga
65db605ddc YouTube video IDs are 11 characters long
Co-authored-by: Stypox <stypox@pm.me>
2025-03-11 20:35:18 -03:00
Thiago F. G. Albuquerque
2e9b52bde7 getYouTubeId(): Changing implementation to use YoutubeStreamLinkHandler
(PR review from @Stypox)
2025-03-11 20:12:25 -03:00
Thiago F. G. Albuquerque
9e5cc9491e [#11930] Converting to Kotlin 2025-02-25 18:56:12 -03:00
Thiago F. G. Albuquerque
4038ecdfd2 [#11930] Extracting to a separate file 2025-02-24 20:16:40 -03:00
Thiago F. G. Albuquerque
ec48da7b3a [#11930] Making it more efficient: Reverse iteration + limit(50) + reverse 2025-02-24 19:22:36 -03:00
Thiago F. G. Albuquerque
4d26517d86 [#11930] Playlist with more than 50 items 2025-02-20 16:26:03 -03:00
Thiago F. G. Albuquerque
a03fd7517f [#11930] Non-Youtube URLs should be ignored 2025-02-19 16:29:34 -03:00
Thiago F. G. Albuquerque
e2b376ec99 [#11930] Making CheckStyle happy 2025-02-18 20:59:13 -03:00
Thiago F. G. Albuquerque
71463c734d [#11930] @Test export_justUrls() 2025-02-18 17:47:22 -03:00
Thiago F. G. Albuquerque
6c778e453e [#11930] Share as YouTube temporary playlist
Initial commit.
2025-02-14 21:14:42 -03:00
Stypox
fb1fe7f85a Mock openAndTruncateStream instead of getStream in test 2024-11-27 16:37:25 +01:00
TwoAi
c8d27d49a7 Remove outdated returnActivity test code
returnActivity was removed in 22c92f1
2024-08-10 23:09:54 -04:00
Stypox
3f4aebac1b Add test zips and extensive tests for ImportExportManager
Now all possible combinations of files in the zip (present or not) are checked at the same time
2024-03-30 18:42:11 +01:00
Stypox
dd4bbdffd6 Use JSON for settings imports/exports 2024-03-30 16:58:12 +01:00
Stypox
db840d6fc3 Add test: vulnerable settings should fail importing 2024-03-30 16:12:41 +01:00
Stypox
0e2f590723 Move import export manager to separate folder 2024-03-30 15:49:05 +01:00
Stypox
d95d953258 Fix PlaylistLocalItemTest 2024-03-29 20:58:07 +01:00
Stypox
564e34b3e7 Merge branch 'dev' into pr8221 2024-03-29 18:08:31 +01:00
TacoTheDank
7d6dec1379 Update miscellaneous libraries 2023-12-23 11:47:57 +01:00
Stypox
39d29cedf0 Add test for ImageStrategy 2023-09-22 10:14:45 +02:00
ThetaDev
e947c88483 fix: audio stream cache key, code fmt 2023-05-01 00:04:04 +02:00
ThetaDev
486488cf78 fix: audio stream format selection 2023-03-19 23:47:33 +01:00
ThetaDev
8749eb9f15 fix: sonarcloud lint 2023-03-19 22:55:37 +01:00
ThetaDev
bb889cf5b7 fix: ListHelper tests 2023-03-19 22:31:31 +01:00
Stypox
d8319716fc Merge pull request #9706 from Jared234/9131_bug_background_player
Fixed a bug that caused the background player to stop working
2023-01-28 21:56:00 +01:00
Jared Fantaye
e119fa40de Replaced the equals method 2023-01-21 14:56:55 +01:00
Jared Fantaye
9459e4951d Fixed tests 2023-01-20 11:12:32 +01:00
Stypox
0470fc2853 Create text subpackage in util 2023-01-15 11:51:07 +01:00
Stypox
1bd45af4fb Fix ListHelperTest failure caused by immutable list being used 2022-07-22 16:09:43 +02:00
Isira Seneviratne
6f77ff6c53 Use List.of(). 2022-07-20 04:39:11 +05:30
litetex
c32fd9a20c Changed the code accordingly
+ Removed some unused code
2022-07-15 19:55:19 +02:00
GGAutomaton
ad240404ed Update index modification logic & redo sorting in the merge algorithm 2022-06-23 23:19:59 +08:00
AudricV
f7d2975ad1 Add support of other delivery methods than progressive HTTP (in the player only)
Detailed changes:

- External players:

  - Add a message instruction about stream selection;
  - Add a message when there is no stream available for external players;
  - Return now HLS, DASH and SmoothStreaming URL contents, in addition to progressive HTTP ones.

- Player:

  - Support DASH, HLS and SmoothStreaming streams for videos, whether they are content URLs or the manifests themselves, in addition to progressive HTTP ones;
  - Use a custom HttpDataSource to play YouTube contents, based of ExoPlayer's default one, which allows better spoofing of official clients (custom user-agent and headers (depending of the client used), use of range and rn (set dynamically by the DataSource) parameters);
  - Fetch YouTube progressive contents as DASH streams, like official clients, support fully playback of livestreams which have ended recently and OTF streams;
  - Use ExoPlayer's default retries count for contents on non-fatal errors (instead of Integer.MAX_VALUE for non-live contents and 5 for live contents).

- Download dialog:

  - Add message about support of progressive HTTP streams only for downloading;
  - Remove several duplicated code and update relevant usages;
  - Support downloading of contents with an unknown media format.

- ListHelper:

  - Catch NumberFormatException when trying to compare two video streams between them.

- Tests:

  - Update ListHelperTest and StreamItemAdapterTest to fix breaking changes in the extractor.

- Other places:

  - Fixes deprecation of changes made in the extractor;
  - Improve some code related to the files changed.

- Issues fixed and/or improved with the changes:

  - Seeking of PeerTube HLS streams (the duration shown was the one from the stream duration and not the one parsed, incomplete because HLS streams are fragmented MP4s with multiple sidx boxes, for which seeking is not supported by ExoPlayer) (the app now uses the HLS manifest returned for each quality, in the master playlist (not fetched and computed by the extractor));
  - Crash when loading PeerTube streams with a separated audio;
  - Lack of some streams on some YouTube videos (OTF streams);
  - Loading times of YouTube streams, after a quality change or a playback start;
  - View count of YouTube ended livestreams interpreted as watching count (this type of streams is not interpreted anymore as livestreams);
  - Watchable time of YouTube ended livestreams;
  - Playback of SoundCloud HLS-only tracks (which cannot be downloaded anymore because the workaround which was used is being removed by SoundCloud, so it has been removed from the extractor).
2022-06-17 22:00:22 +02:00
GGAutomaton
5a52c71278 Update test and Javadoc 2022-05-11 18:08:14 +08:00
GGAutomaton
f2059e725a Add tests 2022-04-17 20:20:20 +08:00
litetex
b4217315e3 Fixed test compilation 2022-03-26 21:44:16 +01:00
TacoTheDank
15064830d2 Kotlin-ize ReleaseVersionUtil, merge with NewVersionManager 2022-03-03 13:21:50 -05:00
TacoTheDank
112b7dde65 Update ktlint to 0.44.0 2022-02-26 16:08:10 -05:00