Commit graph

387 commits

Author SHA1 Message Date
Alexander--
a5e28105ac Comply with Checkstyle rules 2020-04-11 09:02:22 +06:59
Alexander--
08459b3a90 Merge remote-tracking branch 'newpipe/dev' into rebase 2020-04-11 08:30:40 +06:59
Alexander--
2cac8a739d Merge remote-tracking branch 'newpipe/dev' into rebase 2020-04-11 08:24:05 +06:59
Tobias Groza
fc02abc918 Merge pull request #3294 from mauriciocolli/fix-network-issues-detection
Fix detection of network related exceptions
2020-04-10 23:10:34 +02:00
wb9688
5e19035317 Use suggested layout for search filters 2020-04-10 10:35:54 +02:00
Stypox
95d3550aed Detect ITEM_COUNT_* in localizeStreamCount()
ITEM_COUNT_INFINITE and ITEM_COUNT_MORE_THAN_100.
Use localizeStreamCount in PlaylistFragment and PlaylistItemHolder
2020-04-10 10:35:54 +02:00
Stypox
f8f035275a Add support for INFINITE_ and MORE_THAN_100_ITEMS in playlists 2020-04-10 10:35:53 +02:00
bopol
3ab53c9c80 handle ContentNotSupportedException for Channel Fragment (when an user has no video tab) 2020-04-10 09:12:29 +02:00
bopol
b659660867 handle ContentNotSupportedException in BaseStateFragment
thus not supported soundcloud streams (e.g. hls streams) don't crash
anyore
2020-04-09 23:58:01 +02:00
Mauricio Colli
40508788dd Use exception utils in network error detection throughout the app 2020-04-09 13:22:24 -03: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
9c8349a8ed Move things back to its original place 2020-04-02 15:57:50 +02:00
wb9688
ac264464ef Improve code style to be more consistent 2020-04-02 15:57:50 +02:00
Alexander--
6253ff6a36 Merge remote-tracking branch 'newpipe/dev' into rebase 2020-03-30 16:54:51 +06:59
Mauricio Colli
5b8eef2ff1 Handle content not available exception more comprehensively 2020-03-28 14:54:52 -03:00
Mauricio Colli
2243d21605 Temporary: Fix menu visibility when restoring state in the pager adapter
When restoring the state of the adapter, all the fragments' menu
visibility were set to false, effectively disabling the menu from the
user until he switched pages or another event that triggered the menu to
be visible again happened.

FragmentStatePagerAdapter is deprecated and should be replaced with its
ViewPager2 counterpart, until then, this should do it.
2020-03-27 11:30:38 -03:00
Alexander--
6f6d33153b Merge remote-tracking branch 'newpipe/dev' into rebase 2020-03-15 09:08:01 +06:59
Mauricio Colli
6e6a1752d6 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
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
Alexander--
a1d056bdb8 Merge remote-tracking branch 'newpipe/dev' into rebase 2020-03-12 04:48:37 +06:59
Mauricio Colli
0cf5afa08a Fix bug in main screen tabs state management
Tabs were not being destroyed/restored correctly due to a call to a
method that populated the view pager before it even had a chance of
restoring itself.

The solution was to null out the adapter before calling that method so
the view pager will postpone the populating process.
2020-03-08 09:09:04 -03:00
Alexander--
c5c7c41c8f Merge remote-tracking branch 'newpipe/dev' into rebase 2020-02-26 05:56:09 +06:59
TobiGr
700ad835c4 Exception is ignored in SearchFragment 2020-02-25 23:12:12 +01:00
Stypox
431be4003d Implement Settings buttons 2020-02-22 10:36:10 +01:00
bopol
b13c03a99f created default_localization_key 2020-02-16 22:41:32 +01:00
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
Alexander--
0dc23288eb Merge remote-tracking branch 'newpipe/dev' into rebase 2020-02-11 08:01:05 +06:59
bopol
49bdc1b350 real markdown support for descriptions
and update third-party licences in about page
2020-02-08 10:48:36 +01:00
bopol
b52b76ff7e refactor Description 2020-02-07 14:14:55 +01:00
bopol
6da847737a fix thumbnail for PeerTube, and description changes
description:
- PeerTube: it's now full description (it cut at 250 characters before), and it displays ok (newlines are ok, but markdown isn't)
- MediaCCC: descriptions are now displayed well (newlines added)
- YouTube: timestamps in descriptions are clickable and work

more PeerTube fixes:
thumbnail is now high quality
age limit is now handled
upload date in «recently added» feed is good now (it was one hour delayed)
all fixes come from https://github.com/TeamNewPipe/NewPipeExtractor/pull/239, so it need to be merged before this PR
2020-02-06 22:42:09 +01:00
Alexander--
909d1bbccc Rename FireTvUtils to AndroidTvUtils and isFireTv() to isTV()
Because those methods are no longer exclusive to Amazon devices
2020-01-29 03:16:33 +06:59
Alexander--
b1a2612958 Merge remote-tracking branch 'newpipe/dev' into rebase 2020-01-29 03:10:16 +06:59
Christophe
37d8cddf1f Add send to Kodi button to player next to share button 2020-01-27 10:27:24 +01:00
Paweł Matuszewski
fae26b94b8 make main page tabs scrollable 2020-01-02 13:02:14 +01:00
Alexander--
1a01d8b5af Merge remote-tracking branch 'newpipe/dev' into rebase 2020-01-01 12:55:05 +06:59
Peter Hindes
1663f18a34 Merge branch 'dev' into dev 2019-12-10 09:59:12 -07:00
Alexander--
825135d7af Merge remote-tracking branch 'newpipe/dev' into rebase 2019-12-10 21:20:26 +06:59
Peter Hindes
a17caf50e3 Merge branch 'dev' into dev 2019-12-06 08:57:43 -07:00
Peter Hindes
8f2abd8806 remove unused code pt2 2019-12-06 08:38:15 -07:00
Peter Hindes
b0f23fdf55 Remove unused code pt1 2019-12-06 08:32:45 -07:00
yausername
d8f8849110 null check on share 2019-12-03 02:04:52 +05:30
Alexander--
31bd60f3b1 Disable srolling down comment list while comments are loading
Prevents comment list from losing focus to some outside View
when user tries to scroll down after reaching "end"
2019-12-01 12:41:11 +06:59
Alexander--
86fc9c0785 Special MovementMethod for video description
Video descriptions can be very long. Some of them are
basically walls of text with couple of lines at top or bottom.
They are also not scrolled within TextView itself, - instead
NewPipe expects user to scroll their containing ViewGroup.
This renders all builtin MovementMethod implementations useless.

This commit adds a new MovementMethod, that uses requestRectangleOnScreen
to intelligently re-position the TextView within it's scrollable container.
2019-12-01 12:41:11 +06:59
Alexander--
8018f6d37f Save/restore focused item 2019-12-01 12:41:11 +06:59
Alexander--
ac28cc7364 Remove FixedGridLayoutManager 2019-12-01 12:41:11 +06:59
Alexander
d2935d616c Focus video view thumbnail after it is loaded 2019-12-01 12:41:11 +06:59
Alexander
b1aa3b018b Fix scrolling in main screen grid
GridLayoutManager is buggy - https://issuetracker.google.com/issues/37067220:
it randomly loses or incorrectly assigns focus when being scrolled via
direction-based navigation. This commit reimplements onFocusSearchFailed()
on top of scrollBy() to work around that problem.

Ordinary touch-based navigation should not be affected.
2019-12-01 12:41:10 +06:59
Alexander
0d0b3b888f Fix scrolling comments list
AppBarLayout mostly gets it, but we still need to uphold our own part -
expanding it back after focus returns to it
2019-12-01 12:41:10 +06:59
TobiGr
62f43902f7 Fix code formatting 2019-11-23 20:04:40 +01:00
yausername
05bc51c70b merged upstream/dev 2019-11-22 22:41:59 +05:30