Commit graph

150 commits

Author SHA1 Message Date
bopol
9020ba6280 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
TobiGr
13b747263a Improve formatting 2020-02-01 15:35:33 +01:00
bopol
953fd580f7 fix toast on app language change
I forgot to change the key here when I renamed it
2020-02-01 15:30:51 +01:00
bopol
649e188b67 Merge remote-tracking branch 'upstream/dev' into dev
merging dev
2020-02-01 15:11:01 +01:00
TobiGr
8a417a127f Fix formatting and use lamda functions 2020-02-01 13:41:03 +01:00
bopol
a74f0873a3 fix wrong language shown many popup dialogs
Changed android.R.string.ok, which is "OK", into R.string.finish, which is also OK, but from our strings
Then for a small amount of languages that don't have Android translation, it will show the good string.
2020-02-01 09:44:49 +01:00
bopol
eaed951dbd 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
Harshal Lele
f99ac44a99 reformatted code 2020-01-28 20:54:24 +05:30
Harshal Lele
c4c50d25cd reformatted and commented code 2020-01-28 20:14:35 +05:30
Harshal Lele
a8d4964be9 ask for display over other apps permission in settings 2020-01-25 22:30:49 +05:30
bopol
3dd492e82b app language now changes time formatting (3hrs ago), was system language b4 2020-01-09 15:51:41 +01:00
bopol
daa4d852f2 removed unused imports 2020-01-09 12:15:01 +01:00
bopol
af690618d4 changed the way to change language, now is «NewPipe's language» selector 2020-01-09 09:40:05 +01:00
yausername
e9196eb852 made instance list url non translatable 2019-12-31 20:10:51 +05:30
yausername
f44cd776a3 fix add instance dialog 2019-12-15 01:30:47 +05:30
yausername
12596ea62c more grammar fix 2019-12-10 12:36:56 +05:30
yausername
7f835029fc grammar fix 2019-12-05 05:11:05 +05:30
yausername
aba23d54bb white space changes 2019-11-24 21:42:05 +05:30
yausername
491cc18bfd easily switch between multiple peertube instances 2019-11-24 21:08:06 +05:30
yausername
58668cac92 removed extra white spaces 2019-11-23 00:53:14 +05:30
yausername
512fca8897 validate peertube instance. changed peertube color 2019-11-23 00:31:35 +05:30
yausername
05bc51c70b merged upstream/dev 2019-11-22 22:41:59 +05:30
Mauricio Colli
5dd9ef156d Make the KioskFragment aware of changes in the preferred content country 2019-11-20 00:23:35 -03:00
Mauricio Colli
991776c25e Fix broken view pager tabs implementation
- Fragments were being recreated from scratch (losing their state) every
time some configuration change occurred (e.g. screen rotation).
- Use `FragmentStatePagerAdapter` instead, as it is built to work with
them and manage their states.
2019-11-20 00:23:30 -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
yausername
2a843a16d7 merged upstream/dev 2019-11-20 03:48:56 +05:30
Mauricio Colli
cb2f0625b1 Use new Localization and Downloader implementations from extractor 2019-11-17 23:58:52 -03:00
yausername
ca9dff049c merged upstream/dev 2019-11-16 04:37:14 +05:30
TobiGr
5a8714f8e4 Make "Default Kiosk" string translatable
Closes #2778
2019-11-04 11:21:41 +01:00
Robin
edd5ad2d13 Migrate to AndroidX 2019-10-04 14:59:08 +02:00
kapodamy
d91722192f add warning after toggle the SAF option 2019-09-01 18:53:12 -03:00
TobiGr
0099d0d3f9 Add option in history settings to delete playback positions 2019-08-22 21:49:33 +02:00
kapodamy
fa0dbaf953 add manual switch in download setting fragment
switch for:
* Java I/O Api
* Storage Access Framework
2019-08-17 13:38:33 -03:00
kapodamy
3827bce238 check if the if the content provider is disabled (the app itself) 2019-08-15 21:48:07 -03:00
kapodamy
a73b0ef5e2 misc changes
* restore permission request popup previously removed in #2486
* use legacy file picker in cases where saf file picker is not available
* fix missing file check logic in prepareSelectedDownload method (DownloadDialog.java)
2019-08-15 01:09:36 -03:00
kapodamy
21b88f7320 check for Storage Access Framework features
* creating files though saf
* picking folder though saf
2019-08-14 21:54:26 -03:00
TobiGr
e3fc3cdcdd Fix typo in HistorySettinsFragment
Rename viewsHistroyClearKey to viewsHistoryClearKey
2019-08-13 14:25:47 +02:00
TobiGr
1ab22b66c9 Fix playback position not being deleted on clearing watch history 2019-08-07 14:34:49 +02:00
Christian Schabesberger
5c97131362 fix import settings not working 2019-08-04 17:27:56 +02:00
kapodamy
1ea852df1f drop unused popup storage permission request 2019-08-02 01:07:37 -03:00
Christian Schabesberger
0716fff448 Merge branch 'dev' into defaultTrending 2019-07-22 22:39:47 +02:00
kapodamy
b92b434e2c 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
ca05af9570 Forget the download save path if the storage API is changed 2019-06-03 18:19:20 -03:00
kapodamy
64626a7709 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
7ca7952790 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
8d8059229f 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
Ritvik Saraf
809c2aac0a added default kiosk 2019-03-11 03:08:30 +05:30
Ritvik Saraf
ac4e0a51ef init services in app onCreate 2019-03-10 17:30:21 +05:30
Ritvik Saraf
1c45948255 merged upstream/dev, changes for peertube support 2019-03-10 01:02:25 +05:30
Ritvik Saraf
1cfdbea898 added themeing for peertube, change peertube instance 2018-12-29 23:06:39 +05:30