Releases: libre-tube/LibreTube
0.21.1
Bug fixes
- fix: Audio Pausing on quickly volume level adjustment by @RafaelsRamos in #5435
- fix: can't open channel from player fragment by @Bnyro in #5456
- fix: can't open playlists by @Bnyro in #5449
- fix: clarify setting description by @RafaelsRamos in #5440
- fix: correctly display transparent channelImages by @Bnyro in #5447
- fix: crash on download menu by @synicalico in #5424
- fix: Improve home feed layout and fix issue where incorrect cache size was defaulted. by @RafaelsRamos in #5443
- fix: Improve player to mini-player transition + bottom space when there are no navigation tabs by @RafaelsRamos in #5436
- fix: Incorrect actions management through bluetooth devices by @RafaelsRamos in #5427
- fix: only apply white image background to channel avatars by @Bnyro in #5450
- fix: remove unnecessary subscription status api call in channel fragment by @Bnyro in #5405
New features/design changes
- feat: Support setting sleep timer on Audio player by @RafaelsRamos in #5425
- style: tweak speed/pitch bottom sheet layout by @RafaelsRamos in #5434
Chore/refactor
- refactor: improve script to generate changelogs by @Bnyro in #5404
- chore: improve save feed summary by @FineFindus in #5441
- chore: limit max amount of concurrent downloads to 6 to prevent rate limiting by @Bnyro in #5448
New Contributors
- @synicalico made their first contribution in #5424
Full Changelog: v0.21.0...v0.21.1
0.21.0
New features
- style: new player layout and various UI improvements by @Bnyro in #5301
- feat: support close video on MiniPlayer swipe down by @RafaelsRamos in #5392
- feat: new sleep timer (integrated into the player UI) by @Bnyro in #5204
- feat: quick actions to add a channel to a group by @Bnyro in #5334
- feat: separate landscape grid columns pref + more impacted adapters by @Bnyro in #5359
- feat: show instance regions, uptime and registration status in settings by @Bnyro in #5344
- feat: automatically play the next downloaded video in offline audio mode by @Bnyro in #5286
- feat: add copy video ID button in stats sheet by @FineFindus in #5364
- feat: add preset to use 1.75x playback speed by @Bnyro in #5358
- feat: add Rich caption rendering setting by @RafaelsRamos in #5371
Bug fixes
- fix: add to playlist dialog doesnt show any playlists by @Bnyro in #5383
- fix: audio player stuck when swipe up, correct transition duration by @Azuras03 in #5339
- fix: can't play videos when Piped proxy disabled by @Bnyro in #5297
- fix: clicking now playing notification in offline player opens audio player by @Bnyro in #5381
- fix: crash in add to playlist dialog if playlists empty by @Bnyro in #5369
- fix: crash in channel fragment when binding already recycled by @Bnyro in #5309
- fix: crash when deleting account by @Bnyro in #5228
- fix: crash when player fragment is being destroyed by @Bnyro in #5283
- fix: crash when playing deleted playlist in background by @Bnyro in #5382
- fix: don't auto-add live videos to the playing queue by @Bnyro in #5399
- fix: don't fail to load channel page when auth instance down by @Bnyro in #5248
- fix: don't use dead fallback instances api anymore by @Bnyro in #5340
- fix: download sheet share dialog shares channel instead of video by @Bnyro in #5328
- fix: ensure correct persistent notification lifecycle by @RafaelsRamos in #5388
- fix: Error on Settings > Player > Playback speed by @RafaelsRamos in #5357
- fix: home tab content not included in preferences backup by @Bnyro in #5311
- fix: improve constrast between background and buttons by @RafaelsRamos in #5366
- fix: improve download speeds and anonymity by @Bnyro in #5300
- fix: Increase subtitle font size in fullscreen by @saymanrifat in #5200
- fix: Make setting's descriptions more consistent by @RafaelsRamos in #5378
- fix: oldest videos repeatedly displayed when loading channel videos by @RafaelsRamos in #5386
- fix: player resolution updates upexpectedly on fullscreen change by @Bnyro in #5219
- fix: properly display tags in description by @FineFindus in #5365
- fix: regressions by persistent notification lifecycle fix by @Bnyro in #5402
- fix: text animation slowly fades out when collapsing description by @HritikBhat in #5236
- fix: fix black screen and delay when unsetting fullscreen by @IndusAryan in #5367
Refactor
- refactor: base option sheets selections on their string resource ids by @Bnyro in #5341
- refactor: Improve view binding by @Isira-Seneviratne in #5290
- refactor: match the size of continue watching and related streams by @Bnyro in #5299
- refactor: remove bottom reached toast and show progress indicator instead by @Bnyro in #5229
- refactor: simplify channel page and tabs logic by @Bnyro in #5250
- refactor: simplify the dropdown menu component by @Bnyro in #5370
- refactor: support outdated Piped instance versions by @Bnyro in #5285
- refactor: Use batch notification API by @Isira-Seneviratne in #5212
- refactor: Use Navigation Safe Args by @Isira-Seneviratne in #5380
- refactor: Use SoftwareKeyboardControllerCompat by @Isira-Seneviratne in #5385
- refactor: Use TypedArray.use() extension by @Isira-Seneviratne in #5305
- style: also apply new player design to landscape layout by @Bnyro in #5332
- style: various player UI improvements, fix navigation bar color by @Bnyro in #5331
- refactor: start playing video when using add to queue action if queue empty by @Bnyro in #5400
Chore
- chore: add abort on lint function by @IndusAryan in #5234
- chore(CI/CD): clean up code by @XelXen in #5207
- chore(CI/CD): Fix unknown function error by @XelXen in #5227
- chore: fix ci builds by @Bnyro in #5235
- chore: fix nightly builds by @Bnyro in #5240
- chore: improve the License section in readme by @o0nd7ots in #5276
- chore: properly name the ci config file by @Bnyro in #5241
- chore(roadmap): add direct use of NPE, YTjs as not planned by @Pamilg8 in #5314
New Contributors
- @saymanrifat made their first contribution in #5200
- @HritikBhat made their first contribution in #5236
- @o0nd7ots made their first contribution in #5276
- @Pamilg8 made their first contribution in #5314
- @Azuras03 made their first contribution in #5339
- @RafaelsRamos made their first contribution in #5357
Full Changelog: v0.20.1...v0.21.0
0.20.1
Bug fixes
- fix: properly apply creator highlight by @FineFindus in #5159
- fix: restoring nav after process death by @Pittvandewitt in #5171
- fix: auto fullscreen stops working after first rotation by @Zoo-M0 in #5174
- fix: increase area that can be used to control the time bar by @Bnyro in #5175
- fix: crash when trying to vote while there are no sb segments yet by @Bnyro in #5176
- fix: related videos are truncated after rotation by @Bnyro in #5178
- fix: light theme setting doesn't work properly by @Bnyro in #5185
- fix: share dialog doesn't use shortened yt links for videos by @Bnyro in #5197
- fix: missing horizontal padding for player in landscape by @Bnyro in #5201
Code chnages
- refactor: correct migration argument names by @Isira-Seneviratne in #5187
- refactor: Use listOfNotNull by @Isira-Seneviratne in #5186
- refactor: simplify logic of loading comments and replies by @Bnyro in #5179
- feat: show toast if the bottom/end of comments/replies is reached by @Bnyro in #5180
New Contributors
- @Pittvandewitt made their first contribution in #5171
- @Zoo-M0 made their first contribution in #5174
Full Changelog: v0.20.0...v0.20.1
0.20.0
This release finally introduces the long awaited landscape layout for the player page. Even though it is still at its beginnings, tablet support will continue to be improved in the future, starting with this release. π
However, Android TVs are still not in scope of the project, please don't open any issues concerning Android TVs.
Major new features
- feat: landscape layout for player page by @Bnyro in #4981
- feat(comments): highlight creator comments by @FineFindus in #5040
- feat(comments): show if creator replied by @FineFindus in #4955
- feat: filter options for Watch History Tab by @Silther in #5032
- feat: add undo action after removing video from playlist by @Bnyro in #5044
- feat: support for up/downvoting SponsorBlock segments by @Bnyro in #4969
- feat: filter options for Watch History Tab by @Silther in #5032
Minor new features
- feat: support for 1.25x playback speed by @Bnyro in #5009
- feat: support for repeating video in audio mode by @Bnyro in #4984
- feat: hide watched videos from featured in homepage when enabled by @Bnyro in #4950
- feat: shorten youtube links when sharing video by @Bnyro in #4948
- feat: show navigation bar when showing controller if gesture navigati⦠by @Bnyro in #5104
- feat: show success toast when segment was submitted successfully by @Bnyro in #4967
- feat: show title/name in playlist/video/channel bottom sheet by @Bnyro in #5116
Bug fixes
- fix: background service audio playback when screen locked by @lu4p in #5142
- fix: broken offline video duration by @janisslsm in #5008
- fix: can't resume playback at end of video by @Bnyro in #4983
- fix: channel avatar placeholder visible for shorts of a channel by @Bnyro in #5057
- fix: channel groups are temporarily duplicated after editing by @Bnyro in #5010
- fix: chapters stop working when starting different video by @Bnyro in #4917
- fix: conflicts between chapters and video highlight by @Bnyro in #4916
- fix: crash on startup when auto fullscreen enabled by @Bnyro in #5062
- fix: crash when blocked due to too many requests in playing queue by @Bnyro in #5058
- fix: crash when comments are opened when video isn't initialized by @IndusAryan in #5066
- fix(deps): update kotlin monorepo to v1.9.20 by @renovate in #5070
- fix(deps): update navigation to v2.7.5 by @renovate in #5085
- fix(deps): update room to v2.6.0 by @renovate in #5005
- fix: double tap required to view comment replies by @malik0011 in #4963
- fix: fullscreen video doesn't use landscape by @Bnyro in #5068
- fix: hide scroll to top button for replies by @Bnyro in #5060
- fix: multiple seekbar listeners interfering with each other by @Bnyro in #5102
- fix: new created playlist not immediately visible by @Bnyro in #5091
- fix: parse playlist descriptions as html by @Bnyro in #5129
- fix: Properly parse date strings by @Isira-Seneviratne in #4924
- fix: queue moves first video to end in background mode by @Bnyro in #4985
- fix: related streams are not visible in landscape layout by @Bnyro in #5136
- fix: remove view count from continue watching section by @Bnyro in #4949
- fix: repeat all doesn't work if auto-insert to queue is enabled by @Bnyro in #5113
- fix: restore fullscreen after PiP by @Bnyro in #5111
- fix: show error message toast when playlist is not available by @Bnyro in #5126
- fix: show exit fullscreen button on auto-fullscreen for shorts by @Bnyro in #5114
- fix: stats for nerds are not scrollable by @Bnyro in #5089
- fix: submitting sponsorblock segment returns error by @Bnyro in #4966
- fix: subtitles not displayed offline by @janisslsm in #5004
- fix: upload date shown as 0 weeks ago in some cases by @lu4p in #5143
- fix: video can't be resumed after pausing it by @Bnyro in #5151
- fix: watch positions can't be reset by @Bnyro in #5090
- fix: wrong comment opening bug fixed by @malik0011 in #4951
Code and minor behavior changes
- refactor: cleanup queue sort options at the bottom by @Bnyro in #5067
- refactor: create a custom view for expendable text views by @Bnyro in #5128
- refactor: enabled alternative player layout by default and remove option by @Bnyro in #5031
- refactor: make audio player more accessible and redesign by @Bnyro in #5112
- refactor: make dialogs more uniform by @Bnyro in #5106
- refactor: move description layout into its own view by @Bnyro in #4979
- refactor: only initialize on click actions once by @Bnyro in #5103
- refactor: remade SponsorBlock player icons to fit the style of the other icons by @Fxsch in #5014
- refactor: remove unnecessary repeatOnLifecycle calls by @Bnyro in #5127
- refactor: set the wake mode everywhere and simplify player listenern inits by @Bnyro in #5155
- refactor: simplify SubscriptionsHelper by @Bnyro in #5059
- refactor: use '--' for int decremention instead of '-= 1' by @Bnyro in #5046
- refactor: Use TypedArray.use extension by @Isira-Seneviratne in #4999
- refactor: Use TypedValueCompat by @Isira-Seneviratne in #5063
Repository changes
- chore: add ref to SponsorBlock Privacy Policy and ToS to privacy policy by @Bnyro in #5150
- chore(deps): update plugin com.google.devtools.ksp to v1.9.20-1.0.13 by @renovate in #5076
- chore(deps): update plugin com.google.devtools.ksp to v1.9.20-1.0.14 by @renovate in #5096
- chore: remove telegram workflow by @Bnyro in #4965
New Contributors
- @malik0011 made their first contribution in #4951
- @Fxsch made their first contribution in #5014
- @lu4p made their first contribution in #5143
Full Changelog: v0.19.0...v0.20.0
0.19.0
Hotfix for recent YT changes and more
This release fixes crashes when opening a video which are caused by YouTube A/B tests with a new date format, please don't create any new issues about that!
New features
- feat: support for YouTube music artists as search filter by @Bnyro in #4843
- feat: zoomable preview of channel avatar and banner by @Bnyro in #4844
- feat: parse YouTube links in the search bar by @Bnyro in #4818
- feat: option to allow playback during call by @Bnyro in #4862
- feat: option to set a different default resolution when not in fullscreen by @Bnyro in #4849
- feat: option to autoplay videos in playlist by @FineFindus in #4829
- feat: option to set default playback speed manually by @Bnyro in #4901
Bug fixes
- fix: allow pausing when buffer is less than min buffer by @FineFindus in #4827
- fix: buggy icon to pause download by @Bnyro in #4860
- fix: crash after being idle in comments sheet main fragment by @Bnyro in #4858
- fix: crash when importing old backup by @Bnyro in #4856
- fix: crash when navigating too fast in replies by @Bnyro in #4859
- fix: crash when search suggestions get created before search view by @Bnyro in #4911
- fix: crash when starting video upon auto fullscreen by @Bnyro in #4870
- fix: date parsing crash due to YouTube AB testing by @Bnyro in #4899
- fix: hide disabled dislike by @FineFindus in #4812
- fix: max concurrent download speed preference shows decimals by @Bnyro in #4848
- fix: search query stays the old one during back presses by @Bnyro in #4874
- fix: stick add to playlist, download and share to bottom by @Bnyro in #4851
- fix: use safe date conversion for database converters by @Bnyro in #4900
- fix: crash when search suggestions get created before search view by @Bnyro in #4911
- fix: also parse piped.video links by @Bnyro in #4819
Code changes / misc
- chore: donation link in About Activity by @ARBoyGo in #4823
- chore(readme): add emoji donate by @ARBoyGo in #4881
- chore: update website url in app code by @Bnyro in #4822
- chore: update readme socials by @ARBoyGo in #4824
- refactor: simplify creation of new exo player instances by @Bnyro in #4861
New Contributors
- @hammadbawara made their first contribution in #4814
Full Changelog: v0.18.1...v0.19.0
0.18.1
Bug fixes
- fix(channelgroups): update values on confirm by @FineFindus in #4782
- fix(player): allow pausing while loading by @FineFindus in #4797
- fix(player): rename SB Username to SB UserID by @FineFindus in #4798
- fix: crash when restoring backups by @Bnyro in #4799
- fix: crash when the app was closed for a while by @Bnyro in #4800
- fix: don't resume initial video on fragment recreation by @Bnyro in #4801
- fix: crash when view handler got destroyed by @Bnyro in #4802
- fix: default SponsorBlock categories are not being respected by @Bnyro in #4807
- fix: wrong channel group shown as selected by @Bnyro in #4808
Small new features and changes
- refactor: Improve getSerializable extensions by @Isira-Seneviratne in #4795
- feat: Show upload time in stream notifications by @Isira-Seneviratne in #4793
- refactor: libs catalog and bump ksp by @IndusAryan in #4790
- chore: use new repository handler instead of dependency management by @IndusAryan in #4788
- feat: add placeholders to channel avatars by @Bnyro in #4809
Full Changelog: v0.18.0...v0.18.1
0.18.0
Donations are now possible
I'm excited to announce that donations are now possible for LibreTube! Your support is very appreciated in helping us continue to develop and improve the project, and continuing to offer a privacy-focused alternative to YouTube.
As a small team of dedicated volunteers, we appreciate every contribution, no matter the size. Donations will help us cover the costs of an official website, the development, and future enhancements.
Please visit our donation page at https://github.com/libre-tube/LibreTube#donate to contribute today. Thank you for your support, and together, let's keep LibreTube thriving!
New features
- feat: support for submitting SponsorBlock segments by @Bnyro in #4590
- feat: add sponsorblock option to skip only once by @FineFindus in #4584
- feat: allow downloading audio tracks based on their language by @Bnyro in #4581
- feat: allow resuming playback after disconnect by @Bnyro in #4746
- feat(channelGroups): allow re-ordering of groups by @FineFindus in #4551
- feat: disable video track loading while screen off by @Bnyro in #4719
- feat: play all videos by group when long pressing group name by @Bnyro in #4573
- feat: show placeholders for all images by @Bnyro in #4723
- feat: support for selecting auto-generated captions by @Bnyro in #4510
Minor new features
- BREAKING CHANGE: persist playback speed and remove playback speed option by @FineFindus in #4661
- feat: add tooltips to various icon buttons for better accessibility by @FineFindus in #4472
- feat: use elevated accent color for playlist videos count by @Bnyro in #4545
- feat: Show stream count under summary notification by @Isira-Seneviratne in #4652
- feat(stats): use bottom sheet by @FineFindus in #4482
- feat: show controls on STATE_ENDED by @FineFindus in #4560
- feat: show if instance registration disabled in welcome page by @Bnyro in #4546
- feat(settings/sponsorblock): allow changing sb user id by @FineFindus in #4749
- feat(player): play music videos at 1x speed by @FineFindus in #4634
- feat(player): show if quality is auto or limited by @Bnyro in #4517
- feat(playlist): navigate to uploader on click by @Bnyro in #4515
- feat: allow interacting with player while viewing chapters by @Bnyro in #4563
- feat(audio player): show app icon as thumbnail in data saver mode by @Bnyro in #4622
- feat: preference to disable sponsorblock submit button by @Bnyro in #4726
- feat(player): allow pausing when loading by @FineFindus in #4498
- feat: elevate miniplayer background color for better distinguishability by @Bnyro in #4722
- feat: hide mark as watched when video is watched by @FineFindus in #4651
- feat: highlight current chapter by @Bnyro in #4609
- feat: infinite playing queue when auto-insert related streams enabled by @Bnyro in #4564
- feat(settings): move proxy settings to instance page by @FineFindus in #4559
- feat(channelGroups): disable confirm button if creation is not possible by @FineFindus in #4550
Bug fixes
- fix: add pagination to subscriptions list by @Bnyro in #4725
- fix: Avoid accidental link clicking by @Isira-Seneviratne in #4712
- fix: Avoid settings crash in release builds by @Isira-Seneviratne in #4777
- fix: can't download new video while other download in progress by @Bnyro in #4715
- fix: captions can't be disabled by @Bnyro in #4540
- fix: chapter layout UI and UX issues by @Bnyro in #4619
- fix: crash when an other media session with the same name exists by @Bnyro in #4714
- fix: crash when deleting playlist, playlist description not shown by @Bnyro in #4752
- fix: crash when downloaded filename too long by @Bnyro in #4737
- fix: crash when long pressing search result by @Bnyro in #4755
- fix: crash when long pressing watch history item by @Bnyro in #4757
- fix: crash when opening instance settings without internet by @Bnyro in #4597
- fix: crash when opening library due to unmigrated playlists sort order pref by @Bnyro in #4509
- fix: crash when scrubbing timebar on certain videos by @Bnyro in #4717
- fix(deps): update lifecycle to v2.6.2 by @renovate in #4704
- fix(deps): update media3 to v1.1.1 by @renovate in #4507
- fix(deps): update navigation to v2.7.1 by @renovate in #4602
- fix(deps): update navigation to v2.7.2 by @renovate in #4705
- fix: dismiss button in queue sheet by @IndusAryan in #4532
- fix: don't show the highlight as chapter for the whole remaining video by @Bnyro in #4610
- fix: don't update instance preference while dialog visible to user by @Bnyro in #4601
- fix: editing already existing channel groups by @Bnyro in #4582
- fix: elevation of subscriptions toggle in subscriptions fragment by @Bnyro in #4571
- fix: exit fullscreen gesture by @Bnyro in #4607
- fix: Free view bindings in dialogs by @Isira-Seneviratne in #4616
- fix: importing playlists without a header containing its name by @Bnyro in #4740
- fix: issues with fragment result listener by @Bnyro in #4742
- fix: limit chapter bottom sheet to one instance by @Bnyro in #4611
- fix: long pressing plays wrong channel group by @Bnyro in #4720
- fix: npe when opening dialog to submit sb segments by @Bnyro in #4625
- fix: properly kill offline player notification by @Bnyro in #4718
- fix: remove fragment constructors from video and channel options bott⦠by @Bnyro in #4743
- fix: remove useless buttons to reset pitch and playback speed by @Bnyro in #4544
- fix: restore pause on quit functionality by @Bnyro in #4562
- fix(settings/sponsorblock): allow toggling of contribute setting by @FineFindus in #4748
- fix: show okay button for multi selection dialogs instead of cancel by @Bnyro in #4716
- fix: unexpected crashes from seekbar preview bitmap parsing by @Bnyro in #4745
- fix: update video progress by @FineFindus in #4574
- fix: videos played with background player not added to watch history by @Bnyro in #4736
- fix: video upload date not saved to watch history by @Bnyro in #4735
- fix: Avoid settings crash in release builds by @Isira-Seneviratne in #4777
- fix: respect sort order and filters when playing channel group by @Bnyro in #4613
Code refactor
- refactor: Combine Bundle extensions to one file by @Isira-Seneviratne in #4690
- refactor: Improve fragment transaction in CommentsSheet by @Isira-Seneviratne in #4604
- refactor: Improve UpdateInfo by @Isira-Seneviratne in #4721
- refactor: migrate gradle from groovy to kotlin dsl (buildscripts) by @IndusAryan in #4758
- refactor: move constants into the files they're actually used in by @Bnyro in #4738
- refactor: Orga...
0.17.1
Important: If videos don't play for you, read #4479 (comment) and don't open a new issue!
Bug fixes
- fix: persistance of sponsorblock category prefs by @Bnyro in #4454
- fix: crash when removing video from playlist by @Bnyro in #4458
- fix: download paused notification shown instead of completed by @Bnyro in #4460
- fix(import): prevent crash when importing by @FineFindus in #4466
- fix(import): correctly import playlist csv by @FineFindus in #4481
- fix: sort order of playlists isn't shown properly by @Bnyro in #4485
- fix: overflowing issue in sort order option in library by @Bnyro in #4486
- fix: restoring playback positions via notification controls by @Bnyro in #4488
New Contributors
- @FineFindus made their first contribution in #4466
Full Changelog: v0.17.0...v0.17.1
0.17.0
New features
- feat: support for DeArrow by @Bnyro in #4276
- feat: support hardware/bluetooth keys for playback control by @andrew-ld in #4405
- feat: Video chapters redesign by @Bnyro in #4372
- feat: Support for different audio track types by @AudricV in #4240
- feat: seekbar preview for downloaded videos by @Bnyro in #4337
- feat: support for video meta info by @Bnyro in #4394
- feat: add 'Continue watching' section to home tab by @Bnyro in #4262
- feat(queue): options to mark as (un)watched, and remove watched videos by @Bnyro in #4415
Minor new features
- feat: option to add whole playlist to current queue by @Bnyro in #4414
- feat: option to force lowest audio quality by @Bnyro in #4267
- feat: Show channel icons for stream notifications by @Isira-Seneviratne in #4423
- feat: show subscribed channels count in subscriptions fragment by @Bnyro in #4384
- feat: minimalistic Settings Button in Player by @IndusAryan in #4416
- feat: swipe to delete downloads by @Bnyro in #4269
- feat: remember position and tab in subscriptions fragment by @Bnyro in #4274
- feat: search intent support by @Bnyro in #4338
- feat: preference to force landscape as orientation by @Bnyro in #4386
- feat: controls to order queue by date, uploader or views by @Bnyro in #4371
- feat: control to clear entire playing queue by @Bnyro in #4356
- feat: download option in audio player by @Bnyro in #4443
- feat: forward and rewind controls for audio player by @Bnyro in #4367
- feat: hide status bar if player locked by @Bnyro in #4398
- feat: move playlists sort order to library tab by @Bnyro in #4442
Bug fixes
- fix: add bottom margin to subscriptions when mini player visible by @Bnyro in #4247
- fix: crash when closing player via x on top left by @Bnyro in #4381
- fix: crash when download file doesn't exist by @Bnyro in #4369
- fix: crash when pip not supported by @Bnyro in #4370
- fix: don't load audio player thumbnail when data saver mode is on by @Bnyro in #4433
- fix: download success notification by @Bnyro in #4268
- fix: duplicate comments by @salahmak in #4422
- fix: fullscreen orientation after shorts video by @Bnyro in #4296
- fix: hide add to queue option for playlists when queue empty by @Bnyro in #4432
- fix: improve contrast of watch progress on thumbnails by @Bnyro in #4297
- fix: improve filtering of DeArrow titles and thumbnails by @Bnyro in #4286
- fix: only add videos to watch history if playback started by @Bnyro in #4366
- fix: playback of live videos by @Bnyro in #4395
- fix: play video's default audio track by default by @Bnyro in #4351
- fix: preserve the video order of imported playlists by @Bnyro in #4339
- fix: queue when not starting with first playlist/channel video by @Bnyro in #4397
- fix: regression from fixing auto rotation for auto play by @Bnyro in #4299
- fix: regressions introduced by new chapters layout by @Bnyro in #4377
- fix: respect preference to not start playing automatically everywhere by @Bnyro in #4368
- fix: show progress bar while search in progress by @Bnyro in #4319
- fix: show search history when clearing query by @Bnyro in #4383
- fix: Sort local playlists based on selected preference by @0x24D in #4328
- fix: Sort videoIds before performing DeArrow fetch by @FireMasterK in #4290
- fix: SponsorBlock preferences UX improvements by @Bnyro in #4341
- fix: string capitalization by @Isira-Seneviratne in #4424
- fix: use Files.createDirectories() by @Isira-Seneviratne in #4307
- fix: wrong indicated download progress by @Bnyro in #4447
Refactor / code changes
- refactor: change skip silence button from switch to checkbox by @Bnyro in #4444
- refactor: cleanup CommentsSheet by @Bnyro in #4340
- refactor: cleanup subscriptions fragment by @Bnyro in #4275
- refactor: cleanup subtitle logic by @Bnyro in #4353
- refactor: let player handle video codecs pref and support it with HLS by @Bnyro in #4264
- refactor: replace View#setVisibility with kotlin visibility extension by @Bnyro in #4355
- refactor: Use LocalDate.ofInstant() by @Isira-Seneviratne in #4430
Chore
- chore: Add AGP to version catalog by @Isira-Seneviratne in #4313
- chore: add script to generate hard coded instances by @Bnyro in #4249
- chore: fix location of player settings icon by @IndusAryan in #4420
- chore: fix project formatting by @Bnyro in #4277
- chore: only show subscriptions count when subs are visible by @Bnyro in #4388
- chore: remove unneeded type annotations by @Bnyro in #4354
- chore: simplify RecyclerView.Adapter#getItemCount where possible by @Bnyro in #4379
- chore: trim search history entries before saving by @Bnyro in #4446
New Contributors
- @IndusAryan made their first contribution in #4317
- @0x24D made their first contribution in #4328
- @salahmak made their first contribution in #4422
- @andrew-ld made their first contribution in #4405
Full Changelog: v0.16.1...v0.17.0
0.16.1
New features
- feat: automatically use Material You accent on first app startup when supported by @Bnyro in #4213
- feat: Include playlist name in toast after succesfully adding video by @Bnyro in #4234
Bug fixes
- fix: too many chapters highlighted in dialog, crash on selection by @Bnyro in #4238
- fix: disabled proxy when lbry stream available by @Bnyro in #4239
- fix: watch positions don't retain by @Bnyro in #4206
- fix: Restoring SponsorBlock preferences from backup by @Bnyro in #4207
- fix: Appearance of SponsorBlock preference on small screens by @Bnyro in #4209
- fix: hide SponsorBlock skip button in miniplayer by @Bnyro in #4210
Chore
- chore: Add build and PR title instructions to README by @Bnyro in #4190
- chore: Adapt changelog script for pr title styles by @Bnyro in #4191
- refactor: Use ViewModel extension in the main activity by @Isira-Seneviratne in #4189
- chore: Add lemmy community to help activity, remove telegram by @Bnyro in #4205
- chore: Minor code cleanups and use #toUri instead of Uri#parse by @Bnyro in #4211
- chore: Update Activity and Fragment dependencies by @Isira-Seneviratne in #4220
- refactor: Replace MathUtils.clamp with Kotlin coerceIn by @TacoTheDank in #4228
New Contributors
- @TacoTheDank made their first contribution in #4228
Full Changelog: v0.16.0...v0.16.1