Commit graph

101 commits

Author SHA1 Message Date
Isira Seneviratne
4d59466977 Rewrite ExceptionUtils methods as extension functions. 2021-01-11 16:49:45 +05:30
XiangRongLin
6a03ac88d3 Make Localization.relativeTime testable
Problem is global state in static variable prettyTime. But for performance reasons on Android that is preferred.
Now allow injecting prettyTime dependency by making init function public.
2021-01-06 14:48:34 +01:00
XiangRongLin
417f791973 cleanup 2021-01-03 20:32:16 +01:00
XiangRongLin
7971a468f6 Fix ensureDbDirectoryExists 2021-01-03 20:32:16 +01:00
XiangRongLin
1e632c3d69 Extract settings file deletion 2021-01-03 20:32:16 +01:00
XiangRongLin
e7022ccc94 Remove subclasses from ContentSettingsManagerTest
ExportTest provides no value.
ImportTest creates temporary files even if not needed.
2021-01-03 20:32:16 +01:00
XiangRongLin
2a3198de66 Introduce NewPipeFileLocator class 2021-01-03 20:32:16 +01:00
XiangRongLin
a5f20a3795 Add basic tests for settings import 2021-01-03 20:32:16 +01:00
XiangRongLin
09d7c2289c Adjust ExportTest to new DI with FileLocator 2021-01-03 20:32:16 +01:00
Stypox
3f5b070056 Merge pull request #5204 from XiangRongLin/fix_before_all
Use @BeforeClass for ContentSettingsManagerTest.beforeClass
2020-12-19 14:33:37 +01:00
Stypox
7feb07e686 Merge pull request #5208 from Stypox/recaptcha-pbj
Remove pbj=1 parameter from YouYube urls in recaptcha activity
2020-12-18 18:28:44 +01:00
Stypox
14584b2f12 Remove pbj=1 parameter from YouYube urls in recaptcha activity 2020-12-17 21:02:13 +01:00
XiangRongLin
8455bafdef Use @BeforeClass for ContentSettingsManagerTest.beforeClass 2020-12-17 09:40:04 +01:00
Stypox
8ef61f2765 Merge pull request #5059 from XiangRongLin/content_settings_manager
Extract export database logic into own class
2020-12-15 10:34:32 +01:00
Stypox
342a003cd2 Show radio instead of Youtube logo in mixes
YouTube mixes have YouTube as a creator, though YouTube's logo is not safe to use as it is a trademark (better safe than sorry)
2020-12-14 19:22:00 +01:00
Isira Seneviratne
9d045db71f Add a workaround for a possible null offset ID. 2020-12-10 15:23:30 +05:30
Tobias Groza
2796608428 Merge pull request #4961 from TeamNewPipe/lint
Fix some Lint errors
2020-12-07 11:19:01 +01:00
XiangRongLin
dc7f2bf894 Extract export database logic into own class
- Separate it from the UI.
- Add happy path unit test.
2020-12-04 18:30:29 +01:00
Stypox
34dd7c0fbf Update most dependencies 2020-11-22 14:03:10 +01:00
TobiGr
397ca000e3 Fix typos 2020-11-22 10:39:00 +01:00
TacoTheDank
0b41bd4699 Lint: 'size() == 0' replaceable with 'isEmpty()' 2020-11-18 17:54:16 -05:00
wb9688
25b56bf5e4 Use final where possible 2020-08-16 10:25:09 +02:00
wb9688
d770cf5657 Auto-format using Ktlint 2020-05-01 20:13:21 +02:00
Mauricio Colli
9ff7c90a9c Move exception utils to a separate class and add tests for it 2020-04-09 13:22:18 -03:00
wb9688
ac264464ef Improve code style to be more consistent 2020-04-02 15:57:50 +02:00
Mauricio Colli
561a2c58a2 Introduce a proper way to find urls in a string input 2020-03-28 14:06:09 -03:00
Mauricio Colli
ee00c8c26f Implement new feed and subscriptions groups
- Introduce Groupie for easier lists implementations
- Use some of the new components of the Android Architecture libraries
- Add a bunch of icons for groups, using vectors, which still is
compatible with older APIs through the compatibility layer
2020-03-14 00:12:31 -03:00
Mauricio Colli
532d2f305a Fix mess with tab handling and enable ignored tests again
- Fix typo in a string resource
- Reorder tabs so the default kiosk is on top of the others
2019-11-20 00:23:29 -03:00
Ritvik Saraf
1407008b69 skip tests, fix later 2019-03-11 06:27:18 +05:30
kapodamy
4d6cfd2043 resbase (08/11/2018) 2018-11-08 22:00:13 -03:00
BO41
ce36b5b823 Java language level + javadoc + xml
replace with <>
String builder

BUILD SUCCESSFUL in 4s
39 actionable tasks: 4 executed, 35 up-to-date
2018-09-11 19:20:10 +02:00
BO41
89eeaab6f0 code cleanup
mainly removes throw statements

automated using Android Studio, staged by hand

BUILD SUCCESSFUL in 52s
39 actionable tasks: 37 executed, 2 up-to-date
2018-09-11 19:14:21 +02:00
Mauricio Colli
d38a7ced70 Improve tabs UX and saving/loading
- Show icons in the tabs list and dialog chooser
- Add a "restore to defaults" button
- Make removing gesture more user intuitive
2018-09-04 23:54:17 -03:00
Christian Schabesberger
f26c4463d1 fix conflict 2018-05-27 13:30:23 +02:00
Christian Schabesberger
22725316d3 put local foo into local foo folder 2018-04-29 12:47:12 +02:00
James Straub
fa896abecc Added the ability to limit video quality if using mobile data.
* Added a dropdown to video & audio settings
* Changes to ListHelper:
** Limits resolution when code requests the default video resolution
** Limits audio bitrate when code requests the default audio bitrate
** Removed some dead code and did some cleanup
** Make methods private/protected to help understand what was in use
** The code now chooses one format over an other using a simple raking system defined in array constants. I realized I needed to do this in order to choose the most efficient video stream. I did my best to evaluate the video and audio formats based on quality and efficiency. It's not an exact science.
** Made changes to the tests to support my changes
2018-04-21 12:35:04 -04:00
John Zhen Mo
c66413793e -Added quadratic slider strategy implementation and tests.
-Modified playback speed control to use quadratic sliders instead of linear.
-Modified number formatters in player helper to use double instead of float.
-Simplified slider behavior in playback parameter dialog.
-Fixed potential NPE in base local fragment.
2018-03-21 20:08:33 -07:00
Mauricio Colli
6b5c818cbf Implement subscriptions import/export
- Import subscriptions from YouTube and SoundCloud (all services that the extractor support)
- Import/export a JSON representation of the subscriptions
- [Minor] Remove some javax annotations in favor of the one provided by the android support library
2018-03-08 10:39:24 -03:00
Coffeemakr
e39bd293c8 Use Mediaformat objects instead of ids for tests 2017-12-08 13:57:44 +01:00
Coffeemakr
d6fffc7e55 Use correct long comparison (fixes #726) 2017-09-23 08:35:06 -03:00
Mauricio Colli
146d4a8365 Update extractor and refactored NewPipe 2017-09-03 13:57:12 -03:00
Coffeemakr
b03723c3fb Code improvements
* Replace unchecked casts with checked casts
 * remove Utility.finViewById
 * Fix return activity checking
 * Create UserAction enum
 * Fix typos
 * Add instrumented test for error info
 * ErrorInfo make fields final
 * Log exception using logger
 * Add inherited annotations
 * Resolve deprecation warnings
 * Remove unused methods from utility
 * Reformat code
 * Remove unused methods from Utility and improve getFileExt
 * Create OnScrollBelowItemsListener
2017-06-28 18:56:05 +02:00
Mauricio Colli
3b9a477499 Add resolution support up to 4k and 60 fps
- Up to 4k with 60 fps
    - Not every device can play in that resolution and bitrate
    - Add option to hide these high resolution greater than 1080p (2k,4k) for not clutter the menus
- Add a default resolution for the popup, wil be used when opening in popup mode from another app
2017-04-12 03:07:15 -03:00
Christian Schabesberger
927057ab83 Merge pull request #465 from mauriciocolli/fix-travis
Fix travis and YoutubeStreamUrlIdHandler
2017-02-27 19:03:28 +01:00
Christian Schabesberger
c14771534f redesign channel activity 2017-02-27 15:58:09 +01:00
Mauricio Colli
319d769233 Change video Id
The previous wasn't working
2017-02-25 18:14:32 -03:00
Christian Schabesberger
4cc2976061 add unit test for new channel search 2017-02-16 00:46:15 +01:00
Christian Schabesberger
477f182b43 convert android tests to junit tests 2017-02-16 00:17:43 +01:00
Christian Schabesberger
849a45a3ca resolve conflict 2017-01-22 14:26:01 +01:00
Coffeemakr
2ded33110f Improve YoutubeStreamUrlIdHandler
* Make it a singelton
 * Accept embed links
 * Accept share links (youtube.com/shared?ci=...)
 * Add tests
 * Accept host case insensititve
2017-01-11 17:25:53 +01:00