Commit Graph

91 Commits

Author SHA1 Message Date
Svallinn 40d7278383
Invidious: Randomize instance on startup
There are now two separate settings related to Invidious instances:
- currentInvidiousInstance
- defaultInvidiousInstance

'currentInvidiousInstance' is a value that exists solely in memory
and it's the value used by the app to make the API calls,
while 'defaultInvidiousInstance' is the value that can be persisted
in the database by user action and will be used to initiate
the 'currentInvidiousInstance' on startup.

If the user has not saved a default value to the database,
'currentInvidiousInstance' is randomized from
a fetched list of viable candidates.
2021-07-03 02:55:56 +01:00
kuhaku 52fa523df1
Add support for External Players (closes #418) (#1271)
* feat: add support for opening videos/playlists in external players (like mpv) #418

Signed-off-by: Randshot <randshot@norealm.xyz>

* feat: move external player settings into own section
feat: add warnings for when the external player doesn't support the current action (e.g. reversing playlists)
feat: add toggle in settings for ignoring unsupported action warnings

Signed-off-by: Randshot <randshot@norealm.xyz>

* improvement: do not append start offset argument when the watch progress is 0

Signed-off-by: Randshot <randshot@norealm.xyz>

* fix: fix undefined showToast error when clicking on the external player playlist button

Signed-off-by: Randshot <randshot@norealm.xyz>

* feat: add icon button for external player to watch-video-info (below video player) component
improvement: refactor the code for opening the external player into a separate function in utils.js

Signed-off-by: Randshot <randshot@norealm.xyz>

* feat: add support for ytdl protocol urls (supportsYtdlProtocol)
chore: fix lint error

Signed-off-by: Randshot <randshot@norealm.xyz>

* feat: add support for passing default playback rate to external player
improvement: add warning message for when the external player does not support starting playback at
             a given offset
chore: rename reverse, shuffle, and loopPlaylist fields for consistency

Signed-off-by: Randshot <randshot@norealm.xyz>

* feat: add setting for custom external player command line arguments

Signed-off-by: Randshot <randshot@norealm.xyz>

* chore: fix lint error

Signed-off-by: Randshot <randshot@norealm.xyz>

* improvement(watch-video-info.js): change the default for playlistId back to null (consistent with other occurrences)
improvement(utils.js/openInExternalPlayer): also check for empty playlistId string
fix(watch-video-info.js): fix merge error

Signed-off-by: Randshot <randshot@norealm.xyz>

* improvement(components/ft-list-video): check whether watch history is turned on, before adding a video to it
fix(store/utils): fix playlistReverse typo, causing `undefined` being set as a command line argument
fix(store/utils): check for 'string' type, instead of `null` and `undefined`
fix(views/Watch): fix getPlaylistIndex returning an incorrect index, when reverse was turned on
chore(locales/en-US): fix thumbnail and suppress typo
chore(locales/en_GB): fix thumbnail and suppress typo

Signed-off-by: Randshot <randshot@norealm.xyz>

* feat: pause player when opening video in external player

Signed-off-by: Randshot <randshot@norealm.xyz>

* feat(externalPlayer): refactor externalPlayerCmdArguments into a separate static file `static/external-player-map.json`
chore(components/ft-list-video): fix lint error

Signed-off-by: Randshot <randshot@norealm.xyz>

* Revert "feat: pause player when opening video in external player"

This reverts commit 28b4713334bf941be9e403abf517bb4b89beb04f.

* feat: pause the app's player when opening video in external player

* This commit addresses above requested changes.

improvement(components/external-player-settings): move `externalPlayer` check to `ft-flex-box`
improvement(components/external-player-settings): use `update*` methods, instead of `handle*`

improvement(store/utils): move child_process invocation to `main/index.js` via IPC call to renderer
improvement(store/utils): use `dispatch` for calling actions
improvement(store/utils): get external player related settings directly in the action

improvement(renderer/App): move `checkExternalPlayer` call down into `usingElectron` if statement
fix(renderer/App): fix lint error

improvement(components/ft-list-playlist): remove unnecessary payload fields
fix(components/ft-list-playlist): fix typo in component name

improvement(components/ft-list-video): remove unnecessary payload fields

improvement(components/watch-video-info): remove unnecessary payload fields
improvement(views/Settings): add `usingElectron` condition

Signed-off-by: Randshot <randshot@norealm.xyz>

* fix(store/utils): fix toast message error

Signed-off-by: Randshot <randshot@norealm.xyz>

* fix(store/utils): fix a few code mess-ups

Co-authored-by: Svallinn <41585298+Svallinn@users.noreply.github.com>
2021-06-13 17:31:43 +02:00
Luca Hohmann 5f1818ee91
Setting to enable and disable display of video play button (#1370)
* Added setting to toggle play button in video player

* Fixed wrong way around boolean check

* Fixed setting not loading on startup
2021-05-29 20:35:28 +02:00
Alex Stewart f9f5223f23
Allow changing volume by scrolling over any part of video player (#1254)
* Added toggle component to settings

* Setting to toggle this feature is now functional. Video volume can now be changed by scrolling anywhere on the video, or just on the slider, depending on this setting

* Added translation lines for en_US and en_GB

* Changed setting line from 'Scroll Volume Over Video' to 'Scroll Volume Over Video Player'

* Changed 'mousewheel' to 'wheel' event, as 'mousewheel' is deprecated

* Ran lint check in settings.js

Co-authored-by: Alex Stewart <albinexotech@gmail.com>
2021-05-26 17:55:11 +02:00
Filip Czaplicki 440b04bbf0
SponsorBlock (#1130)
* SponsorBlock: enable/url settings

* SponsorBlock: fetch and display skipped fragments

* SponsorBlock: skip sponsor blocks

* npm add node-forge

* SponsorBlock: use hash prefix API

* SponsorBlock: configurable toast on skipped segment

* SponsorBlock: add /api/ to url, remove trailing slash
2021-05-16 16:01:24 -04:00
Preston 8e4fe4eacb Re-Arrange System Default Locale logic 2021-05-06 22:59:37 -04:00
Preston 689479eb21 Channel Fixes and finish quality change logic 2021-04-30 17:18:45 -04:00
Svallinn e696af3f7a
Apply playlist autoplay interval to regular autoplay
The interval to play the next video in a playlist was dynamic and
wasn't applied to the normal autoplay timer.
This commit merges the logic of these two scenarios so that they both
utilize the user-defined interval.
2021-04-29 19:33:13 +01:00
Svallinn 61b2fc4b48
Improve YouTube link handler
* Handle /user channel URL type
* Fix minor problems with the regexps
* Display informational toasts for hashtag and unknown URL types
* Add toast messages to the default locale
2021-04-25 01:28:29 +01:00
Luca Hohmann edb6de2e88
Merge pull request #1121 from Svallinn/improved-captions
Overhaul of the captions subsystem
2021-04-10 21:20:27 +02:00
Luca Hohmann dddfbb357b
Merge branch 'development' into patch-1 2021-04-10 19:00:05 +02:00
Luca Hohmann c5fac9fcd7
Video meta file removal option (#1154)
* Implemented video meta file removal option

* Lint fix
2021-04-01 15:54:45 +02:00
Sveinn í Felli f1cc94edeb
Update en-US.yaml
As discussed in #1144
2021-03-29 17:26:56 +00:00
Svallinn becf86e945
Provide translated caption for user's locale 2021-03-19 18:43:16 +00:00
taivlam abf86df925
Minor typographical typo in en-US.yaml (#1032)
Corrected minor typographical typo for the description of "Fetch Feeds from RSS" toggle button (when you hover your cursor over the circled question mark)
2021-03-06 13:10:39 -05:00
Ira ¯\_(ツ)_/¯ f06af7da83
Enable profile based channel filtering (#1013)
* Delete FtProfileAllChannelsList component

* Replace FtProfileAllChannelsList component with new filtered variant

* Add new locale for profile filter label

* Add FtProfileFilterChannelsList vue component with ft-select addition

* Add FtProfileFilterChannelsList script with profile filtering support

* Add css modifications to new FtProfileFilterChannelsList component
2021-03-06 13:00:52 -05:00
Sai Deepesh 3b75a97859
added playlist next video interval (#1006) 2021-03-06 11:25:50 -05:00
Sai Deepesh 9d4ea68e89
fix: translated menu (#988) 2021-03-06 11:21:57 -05:00
Sai Deepesh 8c88571f6f
feat: added ability to hide Playlists (#972) 2021-03-06 11:21:22 -05:00
Preston e735378a1a Update Invidious instance site and add link directly to site 2021-01-21 21:21:33 -05:00
Preston 2ac6a81699 Remove unneeded video speed option and prevent searches past end of search 2021-01-21 14:57:57 -05:00
Preston 1cfb76ca72 Revert locale strings and test comment fix 2021-01-17 17:31:45 -05:00
Alexander 74c8542e69
Translated using Weblate (English)
Currently translated at 99.7% (441 of 442 strings)

Translation: FreeTube/Translations
Translate-URL: https://hosted.weblate.org/projects/free-tube/translations/en/
2021-01-17 20:32:11 +01:00
Cadence Ember d5304cfcdd
Revamp about page (#929)
* Revamp about page

* Add more cards to about page

* Fix linter issues

* Add missing info and update locales

* Add license URL

Co-authored-by: Preston <freetubeapp@protonmail.com>
2021-01-15 11:14:45 -05:00
Preston 659415edc3 Initial Playlist implementation. Functions like basic favorites list 2021-01-14 18:03:23 -05:00
Preston 6d7d874bc0 Add Proxy configuration to settings. Fix ft-video-list height when using list display 2021-01-14 13:51:33 -05:00
Preston 835903a896 Revamp About Page. Add new links and information 2021-01-13 17:17:48 -05:00
pablodekota f65377127d
Hide active subscriptions (#918)
* Update distraction-settings.js

* Update side-nav.js

* added hiding subscription activity

* Update distraction-settings.js

* Update distraction-settings.js

* Update side-nav.js

* Update side-nav.vue

* Update distraction-settings.vue

* Update settings.js

* Update side-nav.vue

* Update distraction-settings.js

* Update en-US.yaml

* Update en_GB.yaml

* Update distraction-settings.js

* Update settings.js

* Update side-nav.vue

* Update side-nav.vue

* Update side-nav.vue

Co-authored-by: Pablo <8d1d1de7-176f-4d40-b5f0-5a552aabd433@4wrd.cc>
2021-01-09 22:11:42 -05:00
Duane Jaspers 3c8dfb84b5
Change to only consider currently live broadcasts as livestreams. (#728)
* Remove isLiveContent, so only now live is true

* Change Published on to Streamed on when applicable
2020-10-31 10:57:51 -04:00
ovari 8fc37b7e4b
Translated using Weblate (English)
Currently translated at 100.0% (415 of 415 strings)

Translation: FreeTube/Translations
Translate-URL: https://hosted.weblate.org/projects/free-tube/translations/en/
2020-10-25 23:26:45 +01:00
Luca Hohmann 45a92acedf
Merge pull request #715 from DuaneJaspers/ChannelUrlCopyOpen
Add Copy / Open Channel URL to video dropdown
2020-10-25 11:36:33 +01:00
Laptop Duane 29a80ef160 Add Invidious channel url option to dropdown 2020-10-23 12:51:39 +02:00
Laptop Duane 4113ebb6bb Add Copy / Open Channel URL to video dropdown 2020-10-23 10:50:33 +02:00
Preston f75df62c90 Move logic to utils store and load country data on boot 2020-10-22 14:56:49 -04:00
Luca d480b9113f Added tooltip to region of trends 2020-10-22 18:14:36 +02:00
Preston f12b85e4f4 Add tooltips and context to the settings page 2020-10-19 11:32:53 -04:00
ovari 6319ed0323
Translated using Weblate (English)
Currently translated at 100.0% (400 of 400 strings)

Translation: FreeTube/Translations
Translate-URL: https://hosted.weblate.org/projects/free-tube/translations/en/
2020-10-10 00:26:40 +02:00
Preston 4240bf9e35 Update Premiere Logic 2020-10-08 21:53:34 -04:00
Preston ffeefe25e0 Add Setting to check for and import legacy subscriptions 2020-10-08 17:35:36 -04:00
Preston 5cb71a48f2 Add Download links to videos 2020-10-08 15:01:46 -04:00
Luca 0e00a07ddd Fixed missing video in the string in en-US file 2020-10-08 13:06:40 +02:00
Luca 31ff7f5167 Changed the fixed string 'load more' in the subscription page for a 'Load more videos' and placed it in the yaml files 2020-10-08 13:03:05 +02:00
Preston d6e4a1e9cc Add Setting to disable smooth scrolling 2020-10-07 09:57:22 -04:00
Preston 15c73ee0b3 Allow UI Scaling and Have side bar open by default 2020-10-06 11:53:54 -04:00
tayloraviets d5970f58c6
PR ready distraction free feature (#596)
* PR ready distraction free feature

Signed-off-by: Taylor <tayloraviets@gmail.com>

* presumably fixed linter issues

Signed-off-by: Taylor <tayloraviets@gmail.com>

* addressed PR issues and hopefully made the linter happy

Signed-off-by: Taylor <tayloraviets@gmail.com>

* fixed more linter issues

Signed-off-by: Taylor <tayloraviets@gmail.com>

* fixed more linter issues again

Signed-off-by: Taylor <tayloraviets@gmail.com>

* fixed more linter issues again.

Signed-off-by: Taylor <tayloraviets@gmail.com>

* moved bad quote

Signed-off-by: Taylor <tayloraviets@gmail.com>
2020-10-05 22:27:32 -04:00
Luca 11b333541c readded mistakenly removed string 2020-10-05 20:35:54 +02:00
Luca 890f2fc01b No more comments, Comment repeat infinitely
Added:
No more comments - new toast with new string that is displayed when no
more comments are available

Fixed:
Comment repeat infinitely - comments now stop to load when all are
displayed.
2020-10-05 20:31:45 +02:00
Preston ac9efa8df4 Re-label Audio Formats 2020-10-04 21:20:30 -04:00
Preston fb3b46951f Add locale for comment sort by 2020-10-04 18:17:21 -04:00
Preston 2770818668 Add placeholder for comments sort 2020-10-04 18:15:06 -04:00