Commit Graph

1318 Commits

Author SHA1 Message Date
Vinit Jha 4c3f369aca
Fix Save icon blocking issue (#3951)
* Fix Save icon blocking issue

* Fixed favorite button style
2023-08-26 09:07:04 -07:00
PikachuEXE 16aee6e094
* Update URL parser to recognize youtube.com/live/xxxxxxx (#3930) 2023-08-26 15:58:23 +00:00
PikachuEXE b10a0c0806
! Fix `Scroll playback rate over video player` prevents page scrolling when not activated (#3933) 2023-08-25 11:41:56 -04:00
Wesley Appler 4a7c4d95bf
Refactoring to community polls & fixes for quizzes (#3865)
* Refactoring to community polls & fixes for quizzes

* Replaced the interactive quiz with a reveal button and small fixes

* Replaced the interactive quiz with a reveal button and small fixes

* Implemented vote formatting

* vote translation fix

* Accessibility additions

* Fixed local API is_correct typo

* Fixed inconsistent indents
2023-08-24 22:26:31 +02:00
PikachuEXE 11c3402e2f
! Fix subscription view error channel list style (#3921) 2023-08-23 21:38:21 +00:00
efb4f5ff-1298-471a-8973-3d47447115dc 4d85ef85e5
Add Discussions to Help section of the About tab (#3901)
* Add Discussions to About tab

* Add translation entry
2023-08-22 22:43:42 +02:00
absidue 8c6bfaafa6
Fix playlist view on the watch page not reacting to playlist changes (#3897) 2023-08-21 09:12:27 +08:00
PrestonN f364229039 Fix linting issues 2023-08-20 20:32:12 -04:00
absidue 4d4dcba20f
Ignore broken audio tracks for videos with multiple audio tracks (#3851) 2023-08-19 23:32:48 -04:00
absidue 3236ce80c3
local API: Add support for PageHeader hashtag header (#3896) 2023-08-19 23:28:02 -04:00
absidue bf24630f92
Upgrade YouTube.js to version 6.0 (#3895) 2023-08-19 16:11:20 +00:00
absidue f0341549b5
Fix the layout of the hashtag page (#3886) 2023-08-17 23:06:44 -04:00
absidue 723739f724
Cleanup some template conditionals (#3888) 2023-08-16 08:50:32 +00:00
ChunkyProgrammer eff4a0a66e
Add semantic roles to make the site more accessible (#3887)
* Add semantic roles to make the site more accessible

Co-Authored-By: Jason <84899178+jasonhenriquez@users.noreply.github.com>

* Apply suggestions from code review

Co-Authored-By: absidue <48293849+absidue@users.noreply.github.com>

---------

Co-authored-by: Jason <84899178+jasonhenriquez@users.noreply.github.com>
Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-08-16 08:25:59 +00:00
ChunkyProgrammer 0cbe02f88d
Fix Update Subscription Details function when channel name is null (#3884)
* Simplify channel sorting functions

* use deepCopy
2023-08-15 18:17:10 +00:00
absidue 96230c9d1b
local API: Add support for PageHeader channel header (#3871) 2023-08-15 05:37:32 +00:00
absidue cb3a1bdc7e
local API: Support Post Live DVR videos (#3872) 2023-08-14 16:45:17 +00:00
ChunkyProgrammer 2d934eabea
Make profiles keyboard accessible (#3863)
Co-authored-by: Jason <84899178+jasonhenriquez@users.noreply.github.com>
2023-08-14 17:07:57 +02:00
absidue 3a80c81664
Fix audio formats on long videos getting throttled (#3870) 2023-08-12 10:39:28 +08:00
Svallinn 079417dbd6
Main+Store: NeDB persistence and integrity + dependency update (#3845)
* Chore/Settings+Store: Remove unnecessary actions

* Store: Replace nedb-promises with @seald-io/nedb

* Main+Store: Ensure datastores' persistence before quitting

* Fix/Store: Fix db identifier oopsie

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-08-10 22:38:40 +02:00
absidue 4e4fe69384
Fix focus not showing on channel page tabs and in prompts (#3850) 2023-08-06 13:26:22 -04:00
ChunkyProgrammer 5fffe83237
Parse IV search urls (#3849)
* parse iv search urls

* Move removing query params to if
2023-08-06 14:21:45 +02:00
absidue 072066fbe1
Miscellaneous CSS cleanup (#3847) 2023-08-04 21:02:46 -04:00
absidue b48d04700f
Fix empty channels showing up as errored with RSS (#3824) 2023-08-05 00:33:03 +00:00
absidue e0fceedefd
Fix author for album playlists on the playlist page (#3838)
* Fix author for album playlists on the playlist page

* Only show artists
2023-08-05 07:30:54 +08:00
PikachuEXE 51576a9563
* Show error message in popular tab when instance does not support it (#3841) 2023-08-03 10:44:30 -04:00
absidue 8d9a1b8952
Use video durations from the watch history for RSS (#3839) 2023-08-03 10:32:59 -04:00
PikachuEXE ccefdb34a1
! Fix unnecessary error message display in toast when paused before video started playing on load (#3835)
Caused by https://github.com/FreeTubeApp/FreeTube/pull/3775
2023-08-03 13:01:08 +00:00
absidue 97593e3681
Use emit and props instead of $parent (#3834) 2023-08-03 12:57:09 +00:00
absidue 13d7a357f2
Add custom toast event bus for Vue 3 compatiblity (#3833) 2023-08-03 12:52:54 +00:00
absidue 2ff81338d8
Fix handling of DeArrow titles (#3825) 2023-08-03 12:48:23 +00:00
PikachuEXE 41fd6134ec
* Update top nav bar icon to remove focus state style (#3792)
Fix "navigation bar icons are still being highlighted after click"
2023-08-02 07:20:58 -04:00
PikachuEXE d8ed6b9f3e
Update ft-input for top navbar search input to behave more like Youtube one (#3793)
* * Update ft-input for top navbar search input to behave more like Youtube one

* * Implement mouseleave = deselect

* ! Fix clicking option/enter causes incorrect displayed input

* * Update search input to update input data based on KB selected suggesion value on keydown

* * Allow suggesion deselection via arrow up/down

* $ Fix naming, import code style

* - Remove unused import
2023-08-02 07:20:03 -04:00
ChunkyProgrammer 2296e3a58d
Fix: importing subscriptions with terminated channels (#3816)
* Fix: Cannot read properties of undefined (reading 'author')

* fix importing some newpipe subscriptions

only check url, not service_id
2023-08-01 07:47:52 +00:00
PikachuEXE d2075718b4
Fix outdated subscription cache clearing code when "Remove All Subscriptions / Profiles" performed (#3817)
* ! Fix outdated subscription cache clearing code when "Remove All Subscriptions / Profiles" performed

* * Use one action to clear cache instead of three

* $ Use early return
2023-07-31 21:09:15 -04:00
trostboot 01930e46f6
Add basic support for PotPlayer, MPC-HC, MPC-BE (#3798)
* Add basic support for mpc-hc/be, sort list

* Add startOffset handling for mpc-hc family

* Add basic PotPlayer support

* Fix indentations

* Undo entry sorting
2023-07-29 12:24:55 +02:00
trostboot 47f69fcb02
Fix playlists for external players with no index support (#3797)
* Fix playlists for players with no index support

* Fix typo
2023-07-28 08:56:40 +01:00
absidue 45a50bbbc1
Fix watch page breaking when subscriber count is missing (#3794) 2023-07-21 07:34:43 -04:00
Preston b9eb2a76fb
Add Tabs to subscriptions page for live streams and shorts (#3725)
* Add Tabs to subscriptions page for live streams and shorts

* Fix naming issue with fetching live streams via Invidious RSS

* Remove console log

* Better error handling and better live stream sorting

* Fix linter issues

* Change videos RSS feed. Make live stream call more efficient.

* Store last used tab in memory. Return to last used tab on mount

* Fix live sorting. Reorganize tabs and check for currentTab via created instead of mounted

* Fix linting issue

* Start Global locales object, add distraction free checks for subscriptions tab

* Start Global locales object for all locales

* Cleanup and reduce duplicate code

* Undo original distraction free settings change

* Fix missing change in previous commit

* Add distraction free settings to hide tabs

* Improve accessibility

* Make app-wide hide live streams setting override hide subscriptions live

* Fix incorrect all tabs disabled message

* Fix arrow key navigation

* Create shared UI component for the subscription tabs

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-07-21 07:33:34 -04:00
ChunkyProgrammer 095568e1b1
Channels: Add support for release and podcast tab (#3778)
* Channels: Add support for release and podcast tab (local)

* Add support for releases and podcasts tab (Invidious API)

* add urls with has_url

* Fix copy paste error

Co-Authored-By: absidue <48293849+absidue@users.noreply.github.com>

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-07-20 00:16:45 +02:00
trostboot 18b758ffaa
Update external-player-map.json: Add basic support for external SMPlayer (#3771)
* Update external-player-map.json: Add basic support for external SMPlayer

Adds basic functionality to open videos in SMPlayer.

Adding more parameters (e.g., startOffset or speed) is not possible at this time as SMPlayer expects different formatting compared to what FreeTube currently passes through.

* Update utils.js: Add special startOffset handling for SMPlayer

* Update external-player-map.json: Add startOffset for SMPlayer

* Update utils.js: Truncate startOffset for SMPlayer

If watchProgress contains a non-integer value, SMPlayer will simply parse it as 0. Thus, truncate it before passing it along.

* Update utils.js: startOffset comments

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-07-20 00:15:52 +02:00
PikachuEXE 32635d545c
! Fix exception thrown by `play()` called in timer handler in watch page (#3775) 2023-07-17 05:32:39 -07:00
PikachuEXE 37e67f58c9
Fix `Current Invidious Instance input field removes character while typing` (#3776) 2023-07-17 05:32:07 -07:00
Emma 13e18a8aa7
Improve responsiveness in playlist sidebar when one word channel names are long (#3772)
* Wrap long one word channel names in `infoLine`

* Set height of playlist section to auto on small devices to prevent overflow

* Center videoThumbnail in playlist sidebar to visually be the same as playlist view

* Move CSS changes closer together
2023-07-14 07:23:00 -04:00
absidue 0ba63d5405
Fix local API empty search results loading forever (#3770) 2023-07-13 08:49:47 +08:00
PikachuEXE 35868b408f
Update some views to opt out of "Hide Videos From Channels" (#3748)
* * Update channel view to opt out of "Hide Videos From Channels"

* * Update history, local playlist & subscription view to opt out of "Hide Videos From Channels"
2023-07-12 20:09:48 -04:00
PikachuEXE 325b36ea01
Update recommended video section to use hide videos from channel preference (#3749)
* * Update recommended video section to use hide videos from channel preference

* * Update setting tooltip text

* Update `or` to `and`

* * Update most popular view to use hide videos from channel preference
2023-07-12 20:09:28 -04:00
PikachuEXE 930184d29d
Fix duplicate content updates run on channel switch (#3764)
* Revert "Bump prettier from 2.8.8 to 3.0.0 (#3758)"

This reverts commit f77ae6da16.

* ! Fix duplicate content updates run on channel switch
2023-07-12 20:08:11 -04:00
PikachuEXE 0d10face50
Fix copyToClipboard function (#3762)
* Revert "Bump prettier from 2.8.8 to 3.0.0 (#3758)"

This reverts commit f77ae6da16.

* ! Fix function optioinal option argument declaration
2023-07-12 23:06:22 +02:00
absidue 8ab13b52d8
Extract published date and views for playlists with the local API (#3767) 2023-07-12 15:40:46 -04:00
absidue 11eee77dab
Improve the performance of the side nav (#3743) 2023-07-10 22:43:08 -04:00
absidue 35074efbdd
Fix local API comments for age-restricted videos (#3760) 2023-07-11 09:01:15 +08:00
absidue b0239d197f
Fix web throttling because of double deciphering (#3759) 2023-07-11 08:47:38 +08:00
petaded 3eb657cfed
Fix Hide Channels and Hide Premier settings (#3673)
* fix for invidious (+6 squashed commits)
Squashed commits:
[65932b4b4] update playlist and channel filtering
[952a7213a] update subscriptions js to use premiereDate over durationText
[530dea939] Add back isRSS and viewcount check to fix when in subscriptions page
[93ebb7654] Fix hide premiere
[de7a8b4ec] ft-list-lazy-wrapper put whitespace back to what it was
[8dadb59b1] move showResult from a method to a computed to work with v-if

* Fix Hide Premier for Invidous API

* Refactor code to be more redable with better doc

---------

Co-authored-by: petaded <code@zikl.co.uk>
Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-07-09 12:38:24 +00:00
Svallinn f7b7fe549b
Fix+Chore: Remove crop directives from community post's images (#3734) 2023-07-09 08:09:26 -04:00
ChunkyProgrammer cf88bd77d8
Add DeArrow support for ft-list-video titles (#3688)
* Add deArrow support for ft-list-video titles

* Implement requested changes

* Remove some code duplication

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* fix lint issues + exception

* Check for vote count when title is not locked

Co-authored-by: Ajay Ramachandran <dev@ajay.app>

* simplify title

* Apply suggestions from code review

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* remove unused clearDeArrowCache function

* Fix deArrow title

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* allow using DeArrow without enabling SB

* add tooltip for DeArrow setting

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
Co-authored-by: Ajay Ramachandran <dev@ajay.app>
2023-07-03 18:27:49 +02:00
Svallinn 649525558b
Utils: Don't provide `ytdl://` protocol links to external players (#3720)
Providing these type of links is currently unnecessary
and can turn into a hassle when the players are extended by scripts
that are not expecting them and don't function as intended.
2023-07-03 18:26:56 +02:00
absidue beaa9cc477
Cleanup some duplicate channel tab URL handling code (#3697)
* Cleanup some duplicate channel tab URL handling code

* Move to method
2023-07-02 22:51:39 -04:00
absidue 1ba0865a09
Only use android formats when the video id in the response is correct (#3719)
* Only use android formats when the video id in the response is correct

* Fix typo in playability status check

Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>

---------

Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>
2023-07-02 22:48:35 -04:00
absidue 6163ad7e6e
Various changes to allow us to blend in more (#3718)
* Let YouTube generate the Innertube session for the watch page

* Fix the user agent

* Set referer and origin for Innertube and googlevideo requests

* Fix sec-fetch-site header for Innertube requests

* Remove content-type header for googlevideo requests
2023-07-03 10:39:18 +08:00
PikachuEXE 242c93e163
Update subscription view to be able to load videos from video cache per channel (#3668)
* Changes from PR #3673

* * Update subscription view to be able to load videos from video cache again

* * Update subscription view to be able to load videos from video cache per channel

* * Remove meaningless argument `allowUseOfChannelCache`

* $ Remove unused imports

---------

Co-authored-by: petaded <code@zikl.co.uk>
2023-07-02 10:37:28 -04:00
absidue bcf21f6d44
Use android formats when available, web for everything else (#3715) 2023-07-02 08:42:28 +08:00
absidue 939352347d
Add a script to update the region/geolocation files (#3701)
* Add a script to update the region/geolocation files

* Update tooltip now that we only list supported geolocations

* Add language sensitive sorting
2023-07-01 10:08:09 -04:00
Jaden fc7c252722
Use playlist thumbnail provided by YT (#3710)
* Use playlist thumbnail provided by YT from Local API

* Use correct thumbnails for playlist page

* Fix playlistThumbnail not giving correct value

* Update youtubei.js

* Update package.json

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* Update yarn.lock to align with package.json

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-06-30 18:18:43 +02:00
absidue afffbf69fc
Fix reading instances from the Invidious fallback file (#3712) 2023-06-28 06:15:44 +00:00
Wesley Appler d989af2326
Fixed incorrect invidious linking (#3711) 2023-06-28 08:44:49 +08:00
absidue 7c7e0e5d7d
Add back sort by oldest (#3698) 2023-06-27 13:30:36 -04:00
absidue 6e0395d58e
Support YouTube's new layout for shorts only playlists (#3708) 2023-06-27 13:13:48 -04:00
PikachuEXE 2c759b8ba1
* Update view to ignore keyboard events caused by user holding keys (#3709)
No point keep refreshing info on key hold
2023-06-27 19:04:48 +02:00
absidue 87a389cce0
Fix focus related race conditions (#3700) 2023-06-27 11:52:39 +00:00
absidue c102996b52
Fix search bar keyboard shortcuts after hide search bar is disabled (#3699)
* Fix search bar keyboard shortcuts after hide search bar is disabled

* Fix copy paste issue
2023-06-26 16:15:42 -04:00
absidue 0a471f8a17
Fix channel tabs accessibility (#3689) 2023-06-26 18:58:31 +00:00
ChunkyProgrammer 23d8af59f6
Fix some web build errors (#3687) 2023-06-26 18:13:32 +00:00
RikThePixel 96835dd703
Fix Hide Channel Subscribers setting still displaying subscribers if changed from a secondary window (#3504) (#3692)
* Fix Hide Channel Subscribers setting still displaying subscribers if changed from a secondary window (#3504)

* Revert naming change subscriptionCountText to channelSubCountText

* Use `!=` instead of `!==` for `subscriberCount` in ft-list-channel

* Set subscriberCount to null if `data.subscribers` is null in ft-list-channel.js

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-06-25 10:40:03 -04:00
absidue 3c6e1d1a8e
Escape HTML in local API text runs to prevent XSS (#3675) 2023-06-19 17:01:12 +00:00
Wesley Appler 8281df7b79
comment url & custom emoji on invidious API (#3658)
* comment url & custom emoji on invidious API

* Multi-custom emoji fix
2023-06-14 07:26:53 -04:00
Emma bb4b0a890a
Fix `proxyVideos` setting for legacy formats & hls urls (#3639)
* Fix `proxyVideos` setting for legacy formats & hls urls

- Replace the hostname of stream urls with the current invidious instance when `proxyVideos` is true
- Add `local` flag to iv hls URLs when proxy videos is true

* Add missing `proxyVideos` getter in `ft-video-player`

* Move change of URI to before `getProxyVideos`
2023-06-12 17:06:08 +02:00
PikachuEXE 27e9a22c21
Update watch page chapter component to scroll to current chapter on expand (#3610)
* * Update watch page chapter component to scroll to current chapter on expand

* ~ Remove irrelavent comment from copy & paste
2023-06-02 18:06:09 +02:00
absidue cd08373b28
Add subsections to the distraction free settings (#3591)
* Add subsections to the distraction free settings

* Change pages to page in section headings
2023-05-29 19:46:57 -04:00
PikachuEXE cf7c6b9974
! Fix live videos as list items had no save to playlist button (#3598)
Already present in watch page
2023-05-29 21:50:56 +02:00
Emma 042626349a
Fix history imports (#3595) 2023-05-28 21:57:31 -04:00
absidue 7d8a4c8cd7
Add support for the short published dates (#3588) 2023-05-28 13:18:45 -04:00
ChunkyProgrammer 8dbad618f9
IV: add support for hashtag pages (#3571)
* IV: add support for hashtag pages

* add fallback support

* remove locale strings
2023-05-26 23:01:26 +02:00
absidue a11533ac8a
Fix keyboard shortcut to toggle the captions (#3580) 2023-05-23 12:28:01 +00:00
absidue 6f95673cf5
Fix playlist thumbnail not getting proxied through Invidious (#3581) 2023-05-23 12:24:03 +00:00
PikachuEXE da6acf2599
Ensure screen saver blocker removed when window closed (#3557)
* $ Extract method for stopping screen saver blocker

* ! Ensure screen saver blocker removed when window closed

* * Move beforeunload event listener removal to beforeDestroy
2023-05-23 07:37:44 -04:00
absidue c53f5b6dac
Add distraction free setting to hide channel shorts (#3569)
* Add distraction free setting to hide channel shorts

* Add support for channel shorts URLs
2023-05-23 08:59:24 +08:00
PikachuEXE 9523bc733a
Fix comment section style inconsistency and more... (#3231)
* ! Fix YT comment loading for video with comment disabled

* * Update video view w/ Local API to render video comment disabled as no comment

* ! Fix style with less side effects
2023-05-22 17:37:59 -04:00
absidue 15b8dffaf3
Fix text wrapping for community posts (#3540)
* Fix text wrapping for community posts

* Use anywhere instead of break-word for overflow-wrap
2023-05-22 09:43:13 +08:00
absidue 3e543aeb24
Fix cursor moving while navigating search suggestions (#3566) 2023-05-21 13:50:27 +00:00
ChunkyProgrammer ccbf7e2155
Use script to create Invidious instance list file (#3545)
* Use script to create static instance list

* save cors, filter out cors when not electron
2023-05-20 15:07:04 +02:00
absidue d34cf0dd5c
local API: Support multiple audio tracks (#3563)
* local API: Support multiple audio tracks

* Simplify resume logic

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* Change track selector position

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-05-20 08:48:15 -04:00
PikachuEXE d3b3be7794
Update watch view playlist component to auto scroll to current video (#3399)
* * Update watch view playlist component to auto scroll to current video

* ! Fix window being scrolled when playlist is out of initial view

* * Use `nextTick` instead of `setTimeout`

* Revert "* Use `nextTick` instead of `setTimeout`"

This reverts commit 9215b0fe54.

* * Remove setTimeout, fix issue when Invidious API used
2023-05-18 22:13:42 -04:00
ChunkyProgrammer 2860431abe
fix live chat error (#3558) 2023-05-17 16:24:15 +02:00
absidue 137362d7df
Parse shorts links in text runs (#3539) 2023-05-15 10:12:59 +08:00
absidue 9019be2419
Implement the shorts tab on channel pages (#3533)
* Implement the shorts tab on channel pages

* Remove testing code

* Upgrade YouTube.js
2023-05-15 10:01:18 +08:00
ChunkyProgrammer a4d45b5fa8
Local API: Add support for hashtag pages (#3483)
* Add support for hashtag pages

* Apply suggestions from code review

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

* allow searching hashtags

Co-Authored-By: absidue <48293849+absidue@users.noreply.github.com>

* Only use one card

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

* remove hashtag alias search navigation

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-05-13 13:27:41 +02:00
ChunkyProgrammer e32417b9cb
Parse IV community playlist attachments (#3465) 2023-05-13 13:23:02 +02:00
ChunkyProgrammer ff19c233c1
IV: Fix search cache issues when fetching more (#3486)
* Fix IV search cache issues

* Add comment

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* add apiUsed

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-05-13 13:18:49 +02:00
PikachuEXE 4363c71ab4
! Ensure FT stay "running in background" on MacOS after all window closed (#3526) 2023-05-11 23:34:20 +00:00