Commit Graph

181 Commits

Author SHA1 Message Date
Koitharu 111dc4963d
Ignore feed update threshold when run from NotificationWorker 2021-09-07 13:30:26 +03:00
Koitharu 5a6d0455ec
Migrate NotificationIcon to Picasso 2021-09-07 13:30:26 +03:00
Koitharu a5b9fe4c35
Refactor FeedLoadService to use it within the notification worker 2021-09-07 13:30:26 +03:00
Stypox a555aab3e7
Merge pull request #7024 from Stypox/string-fixes
Never use ``android.R.string``s; remove unused ``add`` string
2021-08-31 12:00:07 +02:00
Stypox 039bd5d413
Rename string finish to ok, as its content was "OK" 2021-08-30 16:36:57 +02:00
litetex f18a7c91ca Suppressed warning
There seems to be a bug in the kotlin plugin as it tells you when building that this can't be null:
"Condition 'throwable != null' is always 'true'"
However it can indeed be null as seen in https://github.com/TeamNewPipe/NewPipe/pull/6986#issuecomment-906822218
2021-08-27 16:32:59 +02:00
Stypox 2027b743b4
Merge pull request #6919 from ktprograms/channel-details-all-places
Add Show Channel Details where it's missing
2021-08-24 16:43:21 +02:00
Stypox fcef783bbb
Replace UniversalImageLoader with Picasso 2021-08-24 10:56:25 +02:00
TobiGr 8715e7dd98 Only show "mark as watched" context menu entry when watch history is enabled 2021-08-22 22:15:05 +02:00
ktprograms c248741c00 Add Show Channel Details to Subscription Feed & History 2021-08-13 17:04:10 +08:00
Stypox a3440cc8ef
Merge pull request #6814 from Stypox/channel-grid-span-count
Fix channel item span count for SubscriptionFragment
2021-08-05 14:25:39 +02:00
Stypox a9623f8e6a
Merge pull request #6550 from Douile/fix/clickthrough-feed-refresh
Disable feed click events while refresh overlay is shown
2021-08-01 13:11:24 +02:00
Stypox 644396149b
Fix channel item span count for SubscriptionFragment 2021-07-31 11:02:57 +02:00
Nathan Schulzke f451bdbfa4 Do not add Mark as Watched to a live stream. 2021-07-27 15:21:56 -06:00
Nathan Schulzke 2b41f710a8 Change played to watched 2021-07-27 13:26:51 -06:00
Nathan Schulzke 7fd2ebc252 Add ability to mark an item as played 2021-07-26 20:51:41 -06:00
Stypox 5ba3ef0a25
Fix grid span count calculation; remove duplicate methods 2021-07-19 20:47:50 +02:00
litetex 08d5dfa49c Removed updateRelativeTimeViews when the activity is paused
We don't need to call ``updateRelativeTimeViews`` when the activity is paused, because the user likely won't  notice it.
Despite that onResume already calls ``updateRelativeTimeViews`` so there is no need to do that twice.
2021-07-16 21:04:32 +02:00
Douile 2e053ea25a
Fix crash when refreshing feed 2021-07-11 03:00:32 +01:00
evermind 48c2c156cb convert PlayerHolder to Singleton, handle context within, bugfix ServiceConnection leak
- bugfix: have ServiceConnection created only once!

- select the context within the PlayerHolder to start, stop, bind or unbind the service
  -> we have to make sure the Service is started AND stopped within the same context
  -> so let PlayerHolder be the one to select the context

- remove removeListener() and replace the call with setListener(null)
- Compatibility: use ContextCompat.startForegroundService instead of startService()
2021-07-06 12:31:26 +02:00
Douile cb1a138140
#6081: Disable feed click handlers during refresh
This patch changes click handlers for feed (Whats new) so that they do
nothing while the feed is refreshing and the items being clicked are not
visible.
2021-06-22 19:42:20 +01:00
Stypox 32df4d39a4
Reshow feed if grid/list view mode changed 2021-06-15 18:40:25 +02:00
Stypox 7145b117cc
Fix long press menu in feed 2021-06-14 19:02:57 +02:00
Stypox 4698d07323
Do not hide feed buttons (show/hide & help) behind three-dots menu 2021-06-14 19:02:57 +02:00
Stypox 0113ad5e14
Correctly save stream progress at the end of a video 2021-06-09 15:53:51 +02:00
Stypox e58feadba9
Remove IN HISTORY label on stream info items 2021-06-09 15:53:51 +02:00
Mauricio Colli e846f69e38
Add ability to hide played items in a feed
- Use components from the new Groupie list library for displaying the
feed list.
2021-06-09 15:53:51 +02:00
TobiGr b57ecae565 Fix getting error cause
Fix error dialog not shown when getting elemets from first subscription failed.
2021-06-08 10:12:36 +02:00
Stypox 89317d4abc Fix feed loading and show a dialog for each invalid subscription 2021-06-08 10:12:36 +02:00
TobiGr c5dd3dc7a9 Improve error message when loading feed
Add name of unavailable channel
2021-06-08 10:12:36 +02:00
TobiGr 6ad4b425e4 Better error handling of terminated channels when loading feed 2021-06-08 10:12:36 +02:00
Isira Seneviratne 74e20a8c52 Use PrettyTime's new formatUnrounded(OffsetDateTime) method.
Also change the types of the relevant variables from Calendar to OffsetDateTime.
2021-03-18 06:38:12 +05:30
Stypox aee0478235
FeedFragment: fix view binding and show loading indicator correctly 2021-03-12 23:21:54 +01:00
Stypox c43bca6007
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 553b80164b
Move all error-related classes into error package 2021-03-07 17:49:28 +01:00
Stypox 10ec67854e
Fix number being shown instead of corresponding string resorce in feed 2021-01-20 10:44:44 +01:00
Stypox fa7613b8d1
Refactor feed fragment 2021-01-18 11:43:05 +01:00
Stypox d3d05d613d
Fix reload feed button does nothing
initListeners was being called before the bindings were assigned, and therefore the click listener was never setup
2021-01-18 11:42:25 +01:00
Isira Seneviratne 920e560b4b Convert AnimationUtils functions to extension functions. 2021-01-16 14:49:37 +05:30
Isira Seneviratne 87568b6590 Fix the crash that occurs on navigating back to the main fragment. 2021-01-15 06:54:20 +05:30
Stypox 9ee7740fcc
Merge pull request #4947 from Isira-Seneviratne/Convert_ExceptionUtils_to_extensions
Rewrite ExceptionUtils methods as extension functions.
2021-01-14 14:54:37 +01:00
Isira Seneviratne f80e1bd214 Use view binding in FeedFragment. 2021-01-14 11:16:05 +05:30
Isira Seneviratne 486e720e00 Rewrite ExceptionUtils methods as extension functions. 2021-01-11 16:49:45 +05:30
bopol 2b8837609b dynamically get package name
it fixes issues with forks or debug builds, e.g. when you open two newpipe apps (with debug or fork apps), close one notification, it closes all newpipe notifications
fixes https://github.com/TeamNewPipe/NewPipe/issues/4653
2020-12-20 13:52:20 +01:00
Isira Seneviratne 0fe3fe7594 Use ServiceCompat.stopForeground(). 2020-12-19 16:52:17 +05:30
Stypox b66047e084
Fix ktlint errors 2020-11-22 14:03:10 +01:00
Stypox f0ca916432
Update most dependencies 2020-11-22 14:03:10 +01:00
Stypox 66d15ea635
Merge pull request #4893 from okan35/whatsNewSwipeRefresh
Pull to Refresh Feed
2020-11-20 18:13:32 +01:00
TacoTheDank ea5939c1b7 Kotlin lint fixing 2020-11-18 17:45:19 -05:00
TacoTheDank 4734d04d4f Use two more KTX extensions 2020-11-18 17:29:58 -05:00
okan35 9b6a201bbb removed unnecessary spaces - code change 2020-11-17 19:23:29 +01:00
okan35 745773b207 swipe to refresh added 2020-11-15 17:54:40 +01:00
Isira Seneviratne c745b845c5 Switch to the Java 8 Date/Time API. 2020-11-05 15:02:51 +05:30
TacoTheDank a48529872d Fix a few Kotlin style issues 2020-10-31 15:57:49 -04:00
Isira Seneviratne 293e2ff5e3 Use isVisible and isGone extensions for View. 2020-10-17 15:54:35 +05:30
Isira Seneviratne 55d242fa08 Use bundleOf(). 2020-10-17 15:38:45 +05:30
TacoTheDank a4feb3fc09
Fix some deprecations 2020-09-06 12:52:43 +02:00
TacoTheDank ba6c7de35a
Use AndroidX preference 2020-09-06 12:52:42 +02:00
wb9688 b0415a5289 Auto-format using Ktlint 2020-05-01 20:13:21 +02:00
wb9688 ff7344438b Optimize imports 2020-05-01 20:13:01 +02:00
Mauricio Colli 913796ff0f
Use exception utils in network error detection throughout the app 2020-04-09 13:22:24 -03:00
wb9688 fda5405e48 Improve code style to be more consistent 2020-04-02 15:57:50 +02:00
bopol 0ae4d1369d use plural string for feed_group_dialog_selection_count 2020-03-19 09:44:11 -03:00
Mauricio Colli 97f5490c13
Add help dialog to feed screen
Help to a possible confusion or simply awareness that NewPipe has both
ways to load the feed.
2020-03-14 13:24:25 -03:00
Mauricio Colli ac44ed0862
Localize duration strings used in feed settings using plurals 2020-03-14 00:12:53 -03:00
Mauricio Colli 98c65d8ddb
Don't expose MutableLiveData in view models 2020-03-14 00:12:48 -03:00
Mauricio Colli d1d5f6821f
Implement feed groups manual sorting
Now, the user can sort its groups to his liking even after he created
them.

Also updated the database diagram to reflect the table's new column.
2020-03-14 00:12:45 -03:00
Mauricio Colli 50714c3006
Add ability to cancel a feed update through a notification action
- Change prefetch value default so each parallel rail buffers less
items.
2020-03-14 00:12:44 -03:00
Mauricio Colli 3f32573638
Replace hardcoded value that represents the group "All" with a constant 2020-03-14 00:12:41 -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 2948e4190b
Change feed groups header title and icon from feed representing "All" 2020-03-14 00:12:37 -03:00
Mauricio Colli a93e2cdc30
Quick fix for NPE when exiting the feed fragment 2020-03-14 00:12:34 -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
Robin bf2a3ca043 Migrate to AndroidX 2019-10-04 14:59:08 +02: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
BO41 802b26e870 error handling + imports + unboxing 2018-09-11 19:18:50 +02:00
Christian Schabesberger 4a19c78fa5 despaget certain parts of the new design 2018-08-24 12:27:02 +02:00
Somethingweirdhere 8dde25532a Code reviewed 2018-08-24 12:26:15 +02:00
Somethingweirdhere 5cb7771484 Fixed bugs&crashes 2018-08-24 12:14:53 +02:00
Christian Schabesberger 8ed9d71e14 put local foo into local foo folder 2018-04-29 12:47:12 +02:00