Commit Graph

256 Commits

Author SHA1 Message Date
bopol 22b2f52f8c
Use a switch preference to follow device theme 2021-03-18 11:23:55 +01:00
bopol a713ce2126
Add settings for device theme (dark & black)
fix bugs related to isLightThemeSelected not handling device themes
such as license having dark background when it should be white
2021-03-18 11:17:06 +01:00
mhmdanas 427ac4ef35 Fix indentation 2021-02-28 18:15:48 +03:00
mhmdanas d9c4495e8e Add Northern Kurdish to language selector 2021-02-28 18:10:34 +03:00
Stypox 9be970a4c4
Add crash button to debug settings 2021-02-22 21:59:04 +01:00
XiangRongLin 2926cb7682 Respect expires header when checking for new version
It was called to many times and acted similar to a DOS attack.
2021-01-23 09:02:11 +01:00
Stypox 750c4ffbd3
Add preference to hide description tab in video details 2021-01-17 15:36:42 +01:00
Stypox f6e2dd1480
Merge player classes into a single one 2021-01-14 10:25:44 +01:00
nadiration 0ff7170ab1
Update settings_keys.xml
Changed the Somali language name from Af-Soomaali to Soomaali which is common and more user friendly when users are looking for Somali language in the list (since they aren't expecting it starts with A as in Af-Soomaali).
I contributed the language to the project on Weblate and I think this is name is better.
2021-01-09 18:39:43 +03:00
TobiGr ced3898499 Add Somali (Af Soomaali)[so] to app language chooser 2020-12-23 16:47:36 +01:00
TobiGr 0a831ec84e
Display meta info about search query, stream creator or topic
Closes #4614
2020-12-20 11:56:22 +01:00
Stypox 06b7072240
Merge pull request #4642 from XiangRongLin/hide_thumbnail
Add option to hide thumbnail on lock screen
2020-11-20 16:35:10 +01:00
TobiGr 493e47f7e6 Add Central Atlas Tamazight (Tamaziɣt) to app locales 2020-11-18 19:59:15 +01:00
Stypox 7a6e0d651f
Add Uzbek language (O'zbek) and remove Neapolitan
Neapolitan only has 43 translated strings, so it should not appear as a possible language
2020-11-15 23:37:39 +01:00
XiangRongLin 7805f8a9b1 Add option to hide thumbnail on lock screen and inside notification 2020-11-14 10:01:07 +01:00
Stypox 1d42e45d78
Unify all ways of opening VideoDetailFragment 2020-11-08 10:00:27 +01:00
Tobias Groza 8b02154f5a
Merge pull request #4749 from Prasanta-Hembram/dev
[Translation]Added Santali language
2020-11-08 01:02:37 +01:00
Xiang Rong Lin 974f8f692c
Add option to not colorize notification 2020-11-01 22:13:00 +01:00
Prasanta Hembram 37d1541d6b
Added Santali language 2020-11-01 13:46:51 +05:30
wb9688 2c23678fb9 Add button in settings to clear reCAPTCHA cookies 2020-10-14 14:39:08 +02:00
wb9688 aced2b124c Format all XML resources 2020-10-14 11:04:48 +02:00
wb9688 ca9fbe2f11 Hide Leaks launcher icon 2020-10-07 12:56:22 +02:00
TobiGr 9fe4de5709 Added Portuguese (Portugal), Neapolitan and Sardinian 2020-10-04 12:01:16 +02:00
bopol e4ab250729 add berber, bengali languages 2020-10-03 18:29:52 +02:00
Tobias Groza d5f603303d
Merge pull request #4259 from TeamNewPipe/pref_migration
Add settings migration, remove "Detail page" option from share dialog and minimize to background by default
2020-09-27 11:20:39 +02:00
Tobias Groza fc9c073a60
Merge pull request #3178 from cool-student/notificationImprovements
Notification Improvements
2020-09-27 10:43:11 +02:00
TobiGr 3c4a4e5384
Set default value for "minimize_on_exit" to background for better UX. 2020-09-26 21:58:38 +02:00
TobiGr ad3364671d
Add migration concept for shared preferences 2020-09-26 21:43:58 +02:00
bopol e93a2850d6 Translations improvements :
- remove duplicated string (name) and avoid potential duplicate (autoplay_never_description -> Never, autoplay_always_description -> Always because they are just "Always" or "Never"). Fixes #4268
- leakCanary string removed (fixes #4233)
2020-09-24 15:24:59 +02:00
bopol b747d09836 change default quality 2020-09-13 14:01:01 +02:00
Stypox a13e6b69e3
Merge branch 'dev' into pr3178 2020-09-08 23:58:10 +02:00
Stypox 71b32fe641
Add notification costumization settings menu 2020-09-08 22:00:24 +02:00
Stypox 97ff9e9c5b
Merge branch 'dev' into pr3178 2020-09-03 21:56:48 +02:00
Stypox 7766fd13fd
Extract hardcoded strings into strings.xml and improve them 2020-09-03 21:54:31 +02:00
vmazoyer 99442b6e04
Remember last selected media type for downloads. 2020-09-03 19:47:34 +02:00
Stypox e08480f345
Completely remove old player notification 2020-08-15 22:03:32 +02:00
ButterflyOfFire 70b643e7ba
Fixing name for Taqbaylit language
Fixing name for Taqbaylit language
2020-08-03 19:01:51 +02:00
Stypox 963ee4dbab
Merge branch 'dev' into pr3178 2020-08-02 22:59:43 +02:00
cool-student 4abf6b2f5c Notification Improvements
- add MediaStyle notifications for Background and Popup playback
- reduce excessive notification updating ( / recreating of Notification.Builder object) when playing background / popup media
- add new buffering state indicator (can be disabled)
- upscale close icon / downscale replay icon
- add notification slot settings
- move notification settings to appearance
- fix Metadata (song title, artist and album art) sometimes not being set correctly
- other misc notification fixes

Co-authored-by: wb9688 <wb9688@users.noreply.github.com>
2020-07-31 09:10:28 +02:00
Avently 5293d17e32 Removed unused files, translations, styles, settings key 2020-07-25 09:39:42 +03:00
Avently d2aaa6f691 Merged the latest changes 2020-07-13 04:17:21 +03:00
bopol 713c53d170 add bengali (india) and arabic (lybia) 2020-07-08 21:34:34 +02:00
TobiGr 110b3a6a8f Add some new languages to the language selector
ckb - Central Kurdish
jv - Javanese
kab - Kabyle
2020-07-07 22:32:14 +02:00
bopol b42bef32fd remove totally untranslated languages 2020-05-28 23:21:28 +02:00
wb9688 40b1cd82b1
Merge pull request #2727 from vnagel/ageRestrictedContent
Restricted mode setting for youtube
2020-05-04 15:05:11 +02:00
TobiGr 5ba1df52e0 Add Achinese (ACE) to the language selector 2020-04-23 23:24:52 +02:00
Vincent Nagel f60cce54ea rename setting to "YouTube restricted mode" 2020-04-20 21:47:32 -05:00
Vincent Nagel 63087a4311 renamed to "restricted mode" 2020-04-20 21:46:40 -05:00
Stypox ee5ce0c809
Save and restore cookies to/from preferences
So that the user does not have to solve a recaptcha every time he opens the app
2020-04-15 13:30:27 +02:00
Xiang Rong Lin 3855e488cb Save and restore playback parameters into/from preferences
Playback parameters are speed, pitch and skip silence.
Remove parameters being passed on as intent to the player, since the parameters can be restored from the preferences instead.

# Conflicts:
#	app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
2020-04-05 17:46:49 +02:00
Mauricio Colli 27fc0d5900
Make duration plurals naming consistent 2020-03-19 09:44:13 -03:00
Mauricio Colli ac44ed0862
Localize duration strings used in feed settings using plurals 2020-03-14 00:12:53 -03:00
Mauricio Colli b62142db82
Detect if the subscription list should be shown as a grid
Also used proper string keys for the preferences, left a TODO to fix it
in other places later.
2020-03-14 00:12:52 -03:00
Mauricio Colli 5ea323ce02
New option to use dedicated feed sources for services that support it
YouTube, for example, has a dedicated feed which was built to be used
like this. It comes with some caveats though, like lacking enough
information about the items and returning a limited amount of them.

Nonetheless, a nice option for users that like speedy updates but don't
mind this issue.
2020-03-14 00:12:39 -03:00
Mauricio Colli b2f317ab7c
Load only the selected group and customizable updated status timeout
Now only the subscriptions from the selected group by the user will be
loaded.

Also add an option to decide how much time have to pass since the last
refresh before the subscription is deemed as not up to date. This helps
when a subscription appear in multiple groups, since updating in one
will not require to be fetched again in the others.
2020-03-14 00:12:38 -03:00
Mauricio Colli 20a4bb0936
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
Avently 398cbe9284 Better backstack, better tablet support, switching players confirmation, fix for background playback 2020-03-10 12:06:38 +03:00
Tobias Groza 7da28f28e5
Merge branch 'dev' into unhook-save-restore 2020-02-23 00:19:44 +01:00
bopol 54f71c623a use plural string for dynamic_seek_duration_description 2020-02-17 10:12:08 +01:00
bopol e62e34fd5c created default_localization_key 2020-02-16 22:41:32 +01:00
bopol 5b541cc9fb resolve merge conflicts 2020-02-15 14:53:05 +01:00
B0pol ea54520e0b
Merge branch 'dev' into localisation 2020-02-15 14:14:33 +01:00
bopol f089cd027e Multiple localization fixes
With the extractor PR, fixes title & description shown in the wrong language.
Fixed views / spectators counts possibly in the wrong language
Fixed live spectators not showing full count on detail page
Fixed LIVE shown on players, it shows translated instead

Fixed Videos string in search / three dots not available in Weblate
(because it was videos, but there already was a plural string named videos, in Weblate)

Subscriber count is always giving the short count.
We can't get exact number since this YouTube update: https://support.google.com/youtube/thread/6543166
But only short count (B, M, k), so showing full number, eg for 1.9M: 1,900,000, is wrong because the number could be 1,923,490 or 1,897,789…

Added a « sytem default » option to content language and country language selector.
It's the one selected by default (not en-GB anymore then), and correspond to the
language of the system / country of the system
By system I mean phone, tablet, TV…

Fixed russian showing - before time ago (eg 19hrs ago)
This is a workaround fix, I opened an issue on prettytime library repo.

Fixed russian plurals:
other was used instead of many for videos and subscribers

Fixed seek_duration english only
2020-02-15 12:40:23 +01:00
chr56 5151c6cb54 fix wrong langcode of Chinesein settings_keys.xml 2020-02-15 18:39:41 +08:00
Stypox 0f22833ad5
Save and restore whether pitch and tempo are unhooked or not
Fixes #1536
2020-02-02 15:52:35 +01:00
bopol edc9d47da7 app language: refactoring
renamed NewPipe's language into App language, and same for all the
concerning thing (keys, comments…)

we now call assureCorrectAppLanguage(CONTEXT) in activities needing it
instead of changeAppLanguage(getAppLocale(CONTEXT), RESOURCES)
changeAppLanguage becomes private.
2020-01-29 21:21:00 +01:00
bopol 105981b2eb made system translatable + renamed it to system's language 2020-01-14 19:11:46 +01:00
bopol 055365a449 added Occitan to the selector 2020-01-14 14:26:53 +01:00
bopol f8a7aac40d fixed indonesian, see https://stackoverflow.com/questions/13291578/how-to-localize-an-android-app-in-indonesian-language 2020-01-14 14:15:42 +01:00
bopol 11d06dc86d remove todo as it's already done 2020-01-10 16:03:24 +01:00
Avently 6fc91312d2 Changed default autoplay type to "Only on WiFi" 2020-01-09 19:27:10 +03:00
B0pol e0a39efa2b
Merge branch 'dev' into dev 2020-01-09 10:07:22 +01:00
bopol 3ad0e313ca changed the way to change language, now is «NewPipe's language» selector 2020-01-09 09:40:05 +01:00
Avently 4c57893312 New features and fixes
- added autoplay options inside settings: always, only on wifi, never
- now statusbar will be shown in fullscreen mode
- playlists, channels can be autoplayed too (if enabled)
- changed title of background activity to Play queue
- fixed a crash
2020-01-08 19:16:50 +03:00
bopol dea1e0dcb9 Update localizations settings
1) now, on « content language » change, it will also change the app language
2) added Esperanto to the list of language in content language
2020-01-04 21:38:27 +01:00
k1rakishou 0395dc6e9e Add a setting for the lock screen thumbnail feature 2020-01-02 15:00:31 +01:00
Xiang Rong Lin 8970a663ec Rename "seek_duration_default_key" and use it in BasePlayer 2019-12-13 07:14:17 +01:00
Xiang Rong Lin 550364906d Add new preference for seek duration.
Add new ListPreference under settings/ video & audio for the duration of a seek.
With options for 5, 10, 15, 20, 25, 30 seconds.
2019-12-13 07:14:17 +01:00
yausername fd5f4d9840
merged upstream/dev 2019-12-10 01:37:33 +05:30
yausername 527c38adf9 easily switch between multiple peertube instances 2019-11-24 21:08:06 +05:30
Robin 8e152df46d Remember caption option in player, closes #2811 2019-11-24 11:10:50 +01:00
yausername ac2543d0a1 validate peertube instance. changed peertube color 2019-11-23 00:31:35 +05:30
yausername 596005c69e merged upstream/dev 2019-11-20 03:48:56 +05:30
Mauricio Colli b125ff702a
Show parsed relative times instead of whatever the service gives us
Before, the direct value was given to the user, now it uses the parsed
date so we can match the device's language.

To get the relative time from the parsed dates, we use the PrettyTime
library.

Also introduces a debug option to check the service's original value.
2019-11-17 23:58:55 -03:00
yausername b6be586766 merged upstream/dev 2019-11-16 04:37:14 +05:30
TobiGr 2a15f5fb51 Make export_data and import_data settings keys untranslatable 2019-08-22 21:51:59 +02:00
TobiGr 7cd5af5e72 Add option in history settings to delete playback positions 2019-08-22 21:49:33 +02:00
kapodamy 10dfcbf0b9 add manual switch in download setting fragment
switch for:
* Java I/O Api
* Storage Access Framework
2019-08-17 13:38:33 -03:00
Vasily 2a41802f36 Merge branch 'dev' into playback_state_list 2019-06-23 20:23:29 +03:00
kapodamy 34b2b96158 Simplify the storage APIs use
* use Java I/O (classic way) on older android versions
* use Storage Access Framework on newer android versions (Android Lollipop or later)
* both changes have the external SD Card write permission
* add option to ask the save path on each download
* warn the user if the save paths are not defined, this only happens on the first NewPipe run (Android Lollipop or later)
2019-06-03 18:26:24 -03:00
kapodamy d00dc798f4 more SAF implementation
* full support for Directory API (Android Lollipop or later)
* best effort to handle any kind errors (missing file, revoked permissions, etc) and recover the download
* implemented directory choosing
* fix download database version upgrading
* misc. cleanup
* do not release permission on the old save path (if the user change the download directory) under SAF api
2019-06-03 18:18:20 -03:00
kapodamy f6b32823ba Implement Storage Access Framework
* re-work finished mission database
* re-work DownloadMission and bump it Serializable version
* keep the classic Java IO API
* SAF Tree API support on Android Lollipop or higher
* add wrapper for SAF stream opening
* implement Closeable in SharpStream to replace the dispose() method

* do required changes for this API:
** remove any file creation logic from DownloadInitializer
** make PostProcessing Serializable and reduce the number of iterations
** update all strings.xml files
** storage helpers: StoredDirectoryHelper & StoredFileHelper
** best effort to handle any kind of SAF errors/exceptions
2019-06-03 18:16:41 -03:00
kapodamy 9e34fee58c New MP4 muxer + Queue changes + Storage fixes
Main changes:
* correctly check the available space (CircularFile.java)
* misc cleanup (CircularFile.java)
* use the "Error Reporter" for non-http errors
* rewrite network state checking and add better support for API 21 (Lollipop) or higher
* implement "metered networks"
* add buttons in "Downloads" activity to start/pause all pending downloads, ignoring the queue flag or if the network is "metered"
* add workaround for VPN connections and/or network switching. Example: switching WiFi to 3G
* rewrite DataReader ¡Webm muxer is now 57% more faster!
* rewrite CircularFile, use file buffers instead of memory buffers. Less troubles in low-end devices
* fix missing offset for KaxCluster (WebMWriter.java), manifested as no thumbnails on file explorers

Download queue:
* remember queue status, unless the user pause the download (un-queue)
* semi-automatic downloads, between networks. Effective if the user create a new download or the downloads activity is starts
* allow enqueue failed downloads
* new option, queue limit, enabled by default. Used to allow one or multiple downloads at same time

Miscellaneous:
* fix crash while selecting details/error menu (mistake on MissionFragment.java)
* misc serialize changes (DownloadMission.java)
* minor UI tweaks
* allow overwrite paused downloads
* fix wrong icons for grid/list button in downloads
* add share option
* implement #2006
* correct misspelled word in strings.xml (es) (cmn)
* fix MissionAdapter crash during device shutdown

New Mp4Muxer + required changes:
* new mp4 muxer (from dash only) with this, muxing on Android 7 is possible now!!!
* re-work in SharpStream
* drop mp4 dash muxer
* misc changes: add warning in SecondaryStreamHelper.java,
* strip m4a DASH files to normal m4a format (youtube only)

Fix storage issues:
* warn to the user if is choosing a "read only" download directory (for external SD Cards), useless is rooted :)
* "write proof" allow post-processing resuming only if the device ran out of space
* implement "insufficient storage" error for downloads
2019-06-03 18:09:43 -03:00
Vasiliy c7cd9e86ac
Option to disable states indicators 2019-04-27 19:04:13 +03:00
Vasiliy 4e1423d224
Implement playback state management 2019-04-13 13:34:36 +03:00
yausername 657125f43c save selected tab sate in stream detail fragment, fixes #2238 2019-03-24 06:31:28 +05:30
Ritvik Saraf d90b1ca5be merged upstream/dev, changes for peertube support 2019-03-10 01:02:25 +05:30
Ritvik Saraf 77c6d3d576 merged upstream/dev 2019-01-29 22:32:58 +05:30
Ritvik Saraf 845663f80f added themeing for peertube, change peertube instance 2018-12-29 23:06:39 +05:30
krtkush b674006fcc Conflict resolution. 2018-12-28 18:07:54 +05:30