Commit graph

94 commits

Author SHA1 Message Date
Stypox
2d92f18471 Reimplement storing backup import/export path
#6319 and #6402 were reverted before adding SAF changes, and have been readded at the end of SAF changes
2021-06-08 10:41:24 +02:00
Stypox
3399ed2b30 Pass mime type so that SAF treats file extension correctly 2021-06-08 10:40:45 +02:00
wb9688
995264e5e2 Move Stored(File|Directory)Helper into NewPipe 2021-06-08 10:40:44 +02:00
wb9688
4e133a3599 Support SAF properly 2021-06-08 10:40:44 +02:00
ix5
393491281e Downloader: Deleter: Dismiss previous Snackbars
Bug:
In Downloader view, while deleting items, Snackbars at the
bottom of the UI keep queuing up. You need to wait for all
of them to dismiss themselves for files to actually be
deleted. If you close NewPipe before all snackbars are
dismissed, your files will not be deleted and show up again
next time you start NewPipe.

Fix:
When running append(), trigger the commit() action
immediately and cancel all delayed callbacks for commit().

This prevents Snackbars from stacking up in reverse order.

Fixes: https://github.com/TeamNewPipe/NewPipe/issues/5660
2021-05-04 19:44:09 +02:00
TacoTheDank
7640aa85c3 Migrate rest of AlertDialogs to AppCompat 2021-04-04 10:26:38 -04:00
krlvm
a8de222577 Fix Dark elements in Light Theme 2021-03-27 17:46:05 +03:00
Stypox
22c92f1fb3 Completely remove return activity, now outdated 2021-03-12 23:21:54 +01:00
Stypox
0ea6b4928c Add report/solve-recaptcha button in error panel
It will be shown even when nothing could be loaded not due to a network error, and the user can choose to ignore or report it.

Also improve error reporting arguments
Also completely refactor error activity
Also improve some code here and there
2021-03-12 23:21:49 +01:00
Stypox
bb398189d6 Move all error-related classes into error package 2021-03-07 17:49:28 +01:00
TiA4f8R
e44495af9a Apply the requested changes and little improvements
Apply the requested changes, use ShareUtils.shareText to share an stream in the play queue and optimize imports for Java files, using Android Studio functionality.

Apply the requested changes and do little improvements
Apply the requested changes, use ShareUtils.shareText to share an stream in the play queue and optimize imports for Java files, using Android Studio functionality.
2021-01-16 13:23:42 +01:00
TiA4f8R
d2cb003585 External sharing improvements
Improve NewPipe's share on some devices + fix crash when no browser is set on some devices

Catching ActivityNotFoundException when trying to open the default browser
Use an ACTION_CHOOSER intent and put as an extra intent the intent to
open an URI / share an URI when no default app is set.

Add a LinkHelper class which set a custom action when clicking web links
in the description of a content. This class also helps to implement a confirmation dialog when trying to open web links in an external app.
2021-01-16 13:23:06 +01:00
Isira Seneviratne
288a9ce2af Use a notification instead of a ProgressDialog in MissionAdapter. 2020-12-13 05:21:38 +05:30
Tobias Groza
2796608428 Merge pull request #4961 from TeamNewPipe/lint
Fix some Lint errors
2020-12-07 11:19:01 +01:00
Stypox
34dd7c0fbf Update most dependencies 2020-11-22 14:03:10 +01:00
TobiGr
40d32034dd Fix Lint: Inconsistent line separators 2020-11-22 10:16:27 +01:00
Isira Seneviratne
39a008db6e Convert ErrorInfo to Kotlin and use the Parcelize annotation. 2020-11-21 12:47:35 +05:30
TacoTheDank
04f9272706 Lint: Inner class may be static 2020-11-18 18:02:33 -05:00
TacoTheDank
497e145c70 Lint: Make a bunch of stuff final 2020-11-18 17:50:00 -05:00
Stypox
129ca6c2e2 Merge pull request #4784 from bd0n4lds/Dont-Use-Float-Type-For-Loop-Indices
Change loop index from float to int
2020-11-09 13:04:17 +01:00
Bri@n
8f8429d575 Change loop index from float to int 2020-11-09 12:55:59 +01:00
Isira Seneviratne
1f4469f1dc Use RxJava instead of AsyncTask in MissionAdapter. 2020-11-05 11:06:51 +05:30
TacoTheDank
166cdd50f4 Push conditionals inside branch expressions 2020-10-31 15:57:26 -04:00
TacoTheDank
b8ab82d148 Replace a ContextCompat with LayoutInflater.from 2020-10-31 15:54:19 -04:00
Isira Seneviratne
3da55d9f40 Use ContextCompat.getSystemService() and the Context.getSystemService() extension function. 2020-10-09 08:52:05 +05:30
TacoTheDank
0ef2e07cf4 Some general-purpose lint cleanup 2020-09-06 12:55:26 +02:00
TacoTheDank
61c10ad427 Use AndroidX preference 2020-09-06 12:52:42 +02:00
Avently
aef78ace88 Merged the latest changes 2020-07-13 04:17:21 +03:00
Avently
60fd42dfa3 Changes for review 2020-06-27 06:25:50 +03:00
Stypox
c80aba9a88 Use vector drawables instead of PNGs for material icons
For all manually-created images PNG have been kept.
- rename all icon attrs to have a `ic_` prefix
- always use `_24dp` icons, because there is no real difference, since they are vector drawables
- always use the original name found on material.io for icon drawables, as to not create confusion and possibly duplicates. Icon names can still be different from real drawable names, though I have made some of them compliant to this or maybe more meaningul.
- remove duplicate `getIconByAttr()` in ThemeHelper (use `resolveResourceIdFromAttr()`
- use standard icons for `expand_more` and `expand_less` instead of triangles
- use `play_button_outline` instead of custom PNG as play button in VideoDetailFragment (questionable, as there is no shadow anymore)
2020-05-21 15:39:35 +02:00
wb9688
205c5ff2ca Optimize imports 2020-05-01 20:13:01 +02:00
Xiang Rong Lin
02bb6494dc Fix bug causing crashes when sharing a downloaded file. 2020-02-03 10:43:08 +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
TobiGr
30c9d97d1a Use Integer value directly for formatted string
a
2020-01-13 20:25:32 +01:00
Kamil Szczęk
4b8d5fbc26 Style corrected 2020-01-11 15:19:24 +01:00
Kamil Szczęk
0a95c7cec3 Add a snackbar to allow user to undo file deletion 2020-01-11 15:09:01 +01:00
Kamil Szczęk
ac10e09acb Reorder buttons in clear downloads dialog 2020-01-11 15:09:01 +01:00
Kamil Szczęk
9f05049e03 Use a dialog option instead of a checkbox 2020-01-11 15:09:01 +01:00
Kamil Szczęk
2bff989a68 Fix inconsistent style 2020-01-11 15:09:01 +01:00
Kamil Szczęk
328339f3a4 Put call to forget finished downloads in an else statement to prevent potential bugs 2020-01-11 15:09:01 +01:00
Kamil Szczęk
578395a351 Remove unnecessary import 2020-01-11 15:09:01 +01:00
Kamil Szczęk
7bd3f1bec4 Add option to remove downloaded files when clearing finished downloads 2020-01-11 15:09:01 +01:00
kapodamy
4cc71a9c01 commit
* rebase fixup, add null check
* better ETA string
* drop connection read timeout, for HSDPA networks
* bump NPE version
2019-11-26 13:41:16 -03:00
kapodamy
fc4a892f45 code cleanup
* migrate few annotations to androidx
* mission recovery: better error handling (except StreamExtractor.getErrorMessage() method always returns an error)
* post-processing: more detailed progress

[file specific changes]

DownloadMission.java
* remove redundant/boilerplate code (again)
* make few variables volatile
* better file "length" approximation
* use "done" variable to count the amount of bytes downloaded (simplify percent calc in UI code)

Postprocessing.java
* if case of error use "ERROR_POSTPROCESSING" instead of "ERROR_UNKNOWN_EXCEPTION"
* simplify source stream init

DownloadManager.java
* move all "service message sending" code to DownloadMission
* remove not implemented method "notifyUserPendingDownloads()" also his unused strings

DownloadManagerService.java
* use START_STICKY instead of START_NOT_STICKY
* simplify addMissionEventListener()/removeMissionEventListener() methods (always are called from the main thread)

Deleter.java
* better method definition

MissionAdapter.java
* better method definition
* code cleanup
* the UI is now refreshed every 750ms
* simplify download progress calculation
* indicates if the download is actually recovering
* smooth download speed measure
* show estimated remain time

MainFragment.java:
* check if viewPager is null (issued by "Apply changes" feature of Android Studio)
2019-11-26 10:46:31 -03:00
kapodamy
fc04ddb5b4 misc changes
* OggFromWebMWriter: rewrite (again), reduce iterations over the input. Works as-is (video streams are not supported)
* WebMReader: use int for SimpleBlock.dataSize instead of long
* Download Recovery: allow recovering uninitialized downloads
* check range-requests using HEAD method instead of GET
* DownloadRunnableFallback: add workaround for 32kB/s issue, unknown issue origin, wont fix
* reporting downloads errors now include the source url with the selected quality and format
2019-11-26 10:46:28 -03:00
kapodamy
2484698e8b long-term downloads resume
* recovery infrastructure
* bump serialVersionUID of DownloadMission
* misc cleanup in DownloadMission.java
* remove unused/redundant from strings.xml
2019-11-26 10:46:26 -03:00
Robin
edd5ad2d13 Migrate to AndroidX 2019-10-04 14:59:08 +02:00
kapodamy
5d34ec2cd4 Changes for Android 9 (Pie)
* validate the stored file before start the mission
* add warning on StoredFileHelper.java
* simplify the communication between MissionAdapter and DownloadManagerService.java since shares the same looper
* simplify setVisible() "start/pause all downloads" buttons logic
2019-09-01 18:37:06 -03: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
dc2ad2132d dont hardcode the buttons 2019-08-03 12:44:55 -03:00