Commit graph

1734 commits

Author SHA1 Message Date
kapodamy
62d934dd8e fix integer overflows
* available() method in ChunkFileInputStream.java
* free "ahead space" calculation in CircularFileWriter.java
2020-04-01 15:30:33 -03:00
kapodamy
96086b7733 code cleanup 2020-04-01 15:30:32 -03:00
Tobias Groza
182fc104bb
Merge pull request #3259 from mauriciocolli/improve-drawer-layout
Improvements for the drawer header layout
2020-04-01 18:47:53 +02:00
Stypox
00a8906128
Fix mute button causing crashes on API 19
Using rootView.getContext() because getApplicationContext() didn't work (it was probably missing information about theme)
2020-04-01 09:08:03 +02:00
TobiGr
f7697007e5 Merge branch 'master' into dev 2020-03-31 12:33:16 +02:00
TobiGr
a5153f5375 Improve database migration SQL statement 2020-03-31 00:20:13 +02:00
Mauricio Colli
053440c4a8
Fix handling of null values in database migration to version 3
Some values prior to this version could be null, this wasn't handled
properly before.
2020-03-30 15:50:46 -03:00
Tobias Groza
5f549a8fc6
Merge pull request #3289 from B0pol/grid_moreinfo
add upload date on stream grid items
2020-03-29 23:49:39 +02:00
Tobias Groza
7c72f17fad
Merge pull request #3279 from mauriciocolli/fix-not-found-handling
Handle content not available exception more comprehensively
2020-03-28 19:10:43 +01:00
Mauricio Colli
b4cabe23e3
Handle content not available exception more comprehensively 2020-03-28 14:54:52 -03:00
Tobias Groza
40de014732
Merge pull request #3283 from Stypox/fix-mute-button
Fix mute button inflation problems on API<21
2020-03-28 18:38:36 +01:00
Mauricio Colli
f9b718f1eb
Use correct class for getting a vector drawable in older APIs 2020-03-28 14:30:47 -03:00
Mauricio Colli
4dc28989c8
Fix bug when searching for urls from shared content 2020-03-28 14:06:11 -03:00
Mauricio Colli
f133bbf499
Introduce a proper way to find urls in a string input 2020-03-28 14:06:09 -03:00
bopol
b995f39206 add upload date on stream grid items
fixes #3175
2020-03-28 14:19:57 +01:00
Mauricio Colli
d8e83dabc6
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
Mauricio Colli
10faa45182
Align and enable autosizing for the app name text view in drawer header
- Use a proper drop up/down arrow icon.
- Move selected service views for better visibility.
- Show the selected service icon next to its name.
- Add a subtle fade background to the service name/icon for better
readability.
2020-03-26 19:21:30 -03:00
Linus Jahn
edff3c35f2
ThemeHelper: Fix 'the the' typo 2020-03-26 01:50:32 +01:00
TobiGr
55c577e76e Seek duration should not be rounded up when opening the settings, even if inexact seek is disabled 2020-03-25 22:34:02 +01:00
kapodamy
5f940c40ed fix integer overflow 2020-03-25 16:13:36 -03:00
Tobias Groza
5a8b565199
Merge pull request #3252 from B0pol/mute_button
Change mute button color for more visibility
2020-03-23 23:10:48 +01:00
bopol
8d068b339a remove unused imports 2020-03-21 21:54:40 +01:00
bopol
c54ac32732 mute button color for queue 2020-03-21 21:51:11 +01:00
bopol
47c5008871 Change mute button color for more visibility 2020-03-21 16:58:53 +01:00
Tobias Groza
27156d74da
Merge pull request #3220 from kapodamy/webm-seek-fix
fix for #3204
2020-03-20 11:49:39 +01:00
Mauricio Colli
27fc0d5900
Make duration plurals naming consistent 2020-03-19 09:44:13 -03:00
bopol
85e16afaa0 use val instead of val, make sentence more natural 2020-03-19 09:44:12 -03:00
bopol
0ae4d1369d use plural string for feed_group_dialog_selection_count 2020-03-19 09:44:11 -03:00
bopol
d0f2a02277 delete «seconds» plural string in favor of «dynamic_seek_duration_description» to avoid weblate conflicts 2020-03-19 09:44:10 -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
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
f01e40e671
Simplify screen handling in feed group dialog 2020-03-14 00:12:51 -03:00
Mauricio Colli
d8b9d353aa
Add a confirmation dialog when deleting a feed group 2020-03-14 00:12:50 -03:00
Mauricio Colli
98c65d8ddb
Don't expose MutableLiveData in view models 2020-03-14 00:12:48 -03:00
Mauricio Colli
597859eb23
Disable buttons when processing actions in the feed dialogs 2020-03-14 00:12:47 -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
18a40168d9
Add Groupie library to the credit list in the about page 2020-03-14 00:12:43 -03:00
Mauricio Colli
2c783ff911
Stick info header when selecting subscriptions in the feed group dialog
- Avoid creating plural translation by using a different wording
2020-03-14 00:12:42 -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
f05b8c9542
Expand import/export options by default when subscriptions list is empty 2020-03-14 00:12:36 -03:00
Mauricio Colli
8b87893248
Update Groupie list library to v2.7.0 2020-03-14 00:12:35 -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
Mauricio Colli
e8ab5aacc7
Setup initial database for feed implementation
- Update the database diagram
- Add new migration for the new tables and fields
- Enable schema exports
2020-03-14 00:12:30 -03:00
Mauricio Colli
0e2f062148
Disable database destructive migration fallback
This really shouldn't be enabled, as this database is not just a temp
one. Making the mistake of shipping the app without a proper migration
would cause a big problem.

Really hard to happen but an error is far better than data loss.
2020-03-14 00:12:29 -03:00
kapodamy
ca8f8e0ee9
misc changes
* read "SeekPreRoll" from the source track (if available)
* use the longest track duration as segment duration, instead of the video track duration
* do not hardcode the "Cue" reserved space behavior
* do not hardcode the "EBML Void" element, unreported issue. The size was not properly calculated
* rewrite the key-frame picking
* remove writeInt(), writeFloat() and writeShort() methods, use inline code
* set "SeekPreRoll" and "CodecDelays" values on output tracks (if available)
* rewrite the "Cluster" maker
* rewrite the code of how "Cluster" sizes are written

Fix encode() method (the reason of this commit/pull-request):
* Use the unsigned shift operator instead of dividing the value, due precession lost
2020-03-12 00:50:14 -03:00
Tobias Groza
33475ef403
Merge pull request #3197 from mauriciocolli/fix-main-tabs
Fix bug in main screen tabs state management
2020-03-11 22:03:16 +01:00
Mauricio Colli
f2526ed5a8
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
Stypox
8fa29ffc19
Merge pull request #3165 from karkaminski/mute_button
Mute button
2020-03-08 10:29:25 +01:00
Stypox
029758fdff
Merge pull request #3046 from XiangRongLin/shareDownload
Fix bug causing crashes when sharing a downloaded file.
2020-03-08 09:44:04 +01:00
Tobias Groza
9db2197be1 Improve code style
Co-Authored-By: B0pol <bopol@e.email>
2020-03-07 20:09:05 +01:00
yausername
3e1e07e468 refactor checkpointing 2020-03-07 20:09:05 +01:00
yausername
c6b062a698 checkpoint db before export 2020-03-07 20:09:05 +01:00
karol
55d7be0b2f null risk issue 2020-03-05 19:07:46 +01:00
karol
83c7c4a68e mute/unmute text change in action bar 2020-03-04 18:53:17 +01:00
karol
1ae8a72ba6 mute icon change in action bar 2020-03-04 18:37:04 +01:00
XiangRongLin
f7ef7a18ac
Update app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
Co-Authored-By: Stypox <stypox@pm.me>
2020-03-03 21:41:15 +01:00
Xiang Rong Lin
efb67b0fd4 Change toast string resource to be useable with different languages 2020-03-03 19:50:50 +01:00
Xiang Rong Lin
e3fff4356a Show a toast when seek duration was rounded up 2020-03-03 19:40:10 +01:00
Xiang Rong Lin
7d3b21582c Use DateUtils constant for 1000 2020-03-03 19:40:10 +01:00
Xiang Rong Lin
6a42714326 Round seek duration up instead of setting it to 10 seconds 2020-03-03 19:40:10 +01:00
Xiang Rong Lin
4463804338 Update seek options on inexact seek option change.
Reset to 10 seconds when previous value is not valid anymore
2020-03-03 19:40:10 +01:00
Xiang Rong Lin
57504acd00 If inexact seekt is used, hide 5,15,25 seconds seek duration options when opening settings 2020-03-03 19:40:10 +01:00
karol
840bb29c54 icon color change in action bar 2020-03-03 00:01:19 +01:00
karol
c79f09c119 mute button in actionbar, no color change 2020-03-02 22:52:58 +01:00
karol
92ee51b8db resolved issues 2020-03-02 21:12:02 +01:00
karol
a6fcb70d12 fix typo 2020-03-01 16:42:46 +01:00
TobiGr
2b9c7fee20 Update extractor version 2020-03-01 15:37:47 +01:00
karol
ee75909c80 set mute button in main player from other player 2020-03-01 13:02:20 +01:00
bopol
22aa6d16a2 public Utils.round() moved to private Localization.round() 2020-02-28 17:04:25 +01:00
bopol
dfaa5675b6 Round at one place for Localization.shortCount() 2020-02-28 17:04:25 +01:00
karol
0400fcb106 mute icon in main refactored 2020-02-27 23:30:17 +01:00
karol
40f54aea53 mute intent send between main-bckgrnd-popup players 2020-02-27 22:30:18 +01:00
Marcel Dopita
91aa65e717 Support display cutout
Fixes #2682
2020-02-26 17:47:22 +01:00
TobiGr
ec684434dc Merge branch 'master' into dev 2020-02-26 17:46:59 +01:00
TobiGr
3b5b9d7dab Release 0.18.5 (850) and update extractor version
Update User-Agent
2020-02-25 23:38:51 +01:00
TobiGr
e7082baaff Exception is ignored in SearchFragment 2020-02-25 23:12:12 +01:00
karol
c4d5886059 icon change implemented in queque 2020-02-23 23:44:16 +01:00
karol
2a63f2a3a6 mute-buton in queue layout and logic, but no icon change 2020-02-23 23:31:30 +01:00
karol
cc559dc9ce isMuted() added 2020-02-23 22:55:34 +01:00
karol
4415888324 mute-button implementation in main player 2020-02-23 22:32:23 +01:00
Tobias Groza
7da28f28e5
Merge branch 'dev' into unhook-save-restore 2020-02-23 00:19:44 +01:00
TobiGr
0bc769b971 Fix regression: Unable to find explicit activity class
See https://github.com/TeamNewPipe/NewPipe/issues/3114#issuecomment-589940878 for info on this crash.
This reverts ef90493c27 partly.
2020-02-22 20:43:38 +01:00
Stypox
d65b8d7d18
Address @mauriciocolli suggestions in #2960
Simplify code to enable history button
2020-02-22 11:34:08 +01:00
Stypox
6968dd266a
Remove empty about menu 2020-02-22 11:30:57 +01:00
Stypox
8754cbb38f
Remove Settings button from download activity 2020-02-22 11:12:22 +01:00
Stypox
c7b4705538
Implement Settings buttons 2020-02-22 10:36:10 +01:00
Stypox
5680b7c477
Merge branch 'dev' into localisation 2020-02-21 14:34:40 +01:00
kapodamy
61632b3d9d fixup for #3081
* dont write the "sbpg" box in video tracks
2020-02-20 13:20:20 -03:00
Alexey Dubrov
4230e11c4d
Merge branch 'dev' into dev 2020-02-19 15:05:42 +03:00
Laurent Arnoud
831e9985e2
Migrate annotation to androidx on ReCaptchaActivity 2020-02-18 21:50:28 +01:00
bopol
9912ee8199 give info if content language is system on crash 2020-02-18 18:35:13 +01:00
Alexey Dubrov
5495be749b
Merge branch 'dev' into dev 2020-02-17 12:14:07 +03:00
bopol
54f71c623a use plural string for dynamic_seek_duration_description 2020-02-17 10:12:08 +01:00
Alexey Dubrov
e3a891688b
Get brightness from settings if screenBrightness is set to auto 2020-02-17 12:11:00 +03:00