Commit Graph

9 Commits

Author SHA1 Message Date
absidue f7206ec7e8
Use blob URLs for storyboards instead of writing them to the file system (#4891) 2024-04-08 09:31:20 +08:00
PikachuEXE c40b4a69d5
(Multiple) Local Playlist (instead of saving video in one hidden list) (#4234)
* ! Fix add/removing videos from favourite list

* ! Fix playlist type not passed into video list item component

* ! Fix playlist data loading issue on new windows

* ! Fix user playlist data parsing

* * Ensure playlist view rerender on video additonal removal for displayed playlist

* ! Fix icons & moving videos up/down in user playlist

* * Don't show move up/down buttons when cannot be done

* * Make user playlist view filtering function now works for filtering playlists

* ! Fix style of prompt from any button within playlist-info component

* $ Refactor a function to use early return style

* * Disallow empty playlist name when saving in playlist edit mode

* * Update add video to playlist prompt to have simple filtering like user playlist view

* * Update playlist view to only show video reorder/remove buttons in edit mode

With notice message

* ! Fix playlist view for remote playlist unnecessary reload on save

* ! Fix add to playlist prompt behaviour when some playlists are hidden due to filtering

* $ Remove unused watch function arguments

* * Update user playlist view create new playlist button position

* * Update playlist view to add transitions to video reorder/removal

* * Allow playlist with different case to be created

* * Update visibility of user playlist related action components according to hide playlist settings

Only those visible on video, remote playlist are updated

* * Update video items to only show add to playlist buttons on hover

* - Remove add to favorites button from video list item component

* * Update watch-video-info component to add "add to playlist" button

* * Update watch-video-info component to remove "add to favourite" button

* * Ensure video thumbnail image displayed in 16/9 aspect ratio

Mainly due to YT missing video thumbnail image got different aspect ratio 4/3

* * Update new buttons theme

* * Put edit playlist button before copy button

* * Move "remove video from playlist" button to most right

* * Make video reorder & remove button visible on hover in user playlist view, regardless of "edit mode"

* ! Fix video count parsing for user playlist

* * Update user playlist to allow duplicate video entries (per video ID)

* * Remove extra attributes assignment to video object except `timeAdded`

Unintended change

* * Update copy playlist button to like adding multiple videos to playlists

* * Update copy playlist prompt to prefill title if create new playlist prompt shown

* * Ensure all playlists have `playlistName`

* $- Remove unused playlist property `removeOnWatched`

* * Update read all playlist code to ensure existing "default" playlist properties (_id, protected) have same values as those in default

Also fix issue discovered during testing

* *- Remove unnecessary code line

* * Update playlists from default playlists to be deletable

* ! Fix duplicate `timeAdded` value for videos copied from user playlist

* ! Fix playlist import (tested with db file exported from this branch)

* * Update grid view to only display playlist title up to 255 chars

Still can see full title in single playlist view

* * Update add video to playlist prompt to only display playlist title up to 255 chars

* * Update text of new playlist button to be same as new profile button

* * Ignore many extra keys from playlist objectrs

Also make data import check for object keys against required keys not key counts

* * Disallow playlist import from changing internal playlist ID of existing playlists

Existing playlists are matched by playlist name, not by internal playlist ID

* * Ensure playlist name & description trimmed when saved

* * Add missing change for importing playlist to ignore `protected`

* $ Refactor code for "video object has all require keys"

* ! Fix style of prompt from any button within playlist-info component again

z-index war

* * Update some empty message & button text

* * Ensure playlist item action buttons are hidden during animations

* ! Fix other prompt z-index

* * Update `showAddToPlaylistPromptForManyVideos` to throw error when required keys missing from passed in video data

* *- Remove unused video property `paid` from playlist related code

* *- Remove unused video property `type` from playlist related code

* ! Fix duplicate playlist displayed on playlist conversion

* *- Remove unused video property `published` from playlist related code

* * Don't require & generate property `timeAdded` when display a prompt

* *- Remove unused video property `isLive` from playlist related code

* ! Fix text

* ! Revert code change for debugging only

* ! Fix CSS for "Ensure playlist item action buttons are hidden during animations"

* * Update add playlist button to be shown for live videos

* + Add clear all playlists button

* * Update add video to playlist prompt to swap "save" & "create playlist" button

* ! Fix playlist view won't load after default playlist added due to lack of playlist

* * Show toast message when no playlist selected after pressing save button

* * Update add video to playlist prompt to show latest updated playlist first

Easier for copying playlist with new playlist(s)

* ! Fix watch page when visited via history after viewing the video from a deleted user playlist

* ! Fix share buttons emitting user playlist IDs

* * Add toast message after removing all playlists

* ! Fix remote playlist video list rendering with duplicate videos

* ! Fix missing key for some direct child elements under `transition-group`

* ! Fix animation introduced to unnecessary elements

* ! Prevent video link click during animation

* ! Fix playlist creation/removal not reflected in other windows

* * Ensure playlist visual selected state in sync with data in parent

* * Update add video to playlist prompt to auto select playlists created after prompt shown once

* * Update copy playlist button to show warning about not loaded videos when some not loaded yet

For remote playlist

Won't work for Invidious though (coz no way to load more)

* * Update add video prompt to make it easier to access buttons via keyboard

* * Make video reorder & remove button always visible in user playlist view

* * Make plus button can be focused with tab

Side effect is thumbnail link can be focused too (otherwise can't make plus button visible)

* * Update add video to playlist prompt to focus on search input on shown

* * Accept playlist optional property `createdAt` when importing

* * Update playlist view to always show add to playlist button

* $ Refactor `inUserPlaylist`

Only playlist view would supply `playlistType`

* * Improve accessibility for new prompts

* * Make edit playlist inputs focused on entering edit mode

* * Make most prompts focus back to last focused element on close

* $ Use tabindex 0 for prompts

Possible tabindex values unnecessary with elements programatically focused

* * Update add video to playlist prompt to focus back to search input after new playlist created

* * Update ft-list-video to focus back on thumbnail link element after add to playlist prompt closed

* ! Fix unable to import duplicate video entries into an existing playlist

* ! Fix create playlist prompt looks unclosed after playlist created when opened via add video to playlist prompt

* ! Fix duplicate video entry ID when playlist with duplicate videoId entries copied to another playlist

* ! Fix issues caused by last merge in e291cc8b41b2273a0d77c9f35ea760f0e0f7ac10

* $ Remove unused imports

* ! Fix default playlists added when no playlist stored had no required attributes added on 1st run

* ! Fix invalid prop type warning

* * Use v-if instead of v-show

* $ Just assign bool value instead of if-else

* + Update playlists view to add sorting option

* $- Remove unnecessary property assignments

* ! Fix issues caused by "Remove unnecessary property assignments"

* ! Fix issues caused by "Remove unnecessary property assignments"

* * Ensure sort by time also fallbacks to playlist name sorting

* ! Fix add/remove video does not update playlist last created time

* ! Fix multi window playlist sync

* * Show filtering input & sorting element when no. of playlist > 1

* * Update upcoming video to allow saving in playlist

* ! Fix unable to visit previous video when playing first video in a playlist

* * Update sorting options labels

* ! Fix add to play prompt max width

* ! Fix user playlist view incorrectly sorted playlists by latest updated first when filtered

* * Update add to playlist prompt to add sort options

* $ Remove unused classname

* ! Ensure new playlist button focused after add to playlist prompt closed while thumbnail link unselectable

* * Add playlists sort order for last played at, update it on play

* ! Fix bug introduced by last merge

* ! Fix thumbnail not respecting backend preference

* ! Fix empty playlist thumbnail in single playlist view

* * Make adding large no. of videos faster

* $ Remove unused mapActions entries

* $ Remove unused and unusable playlist code for inserting video IDs into a playlist

* * Update single playlist view to only show `Remove watched videos` btn when there is any video

* ! Fix prompt style issue caused by old branch changes

* ! Fix removing video from local playlist remove all entries with same video ID

* ! Fix adding video does not have uniqueID & timeAdded set

Caused by previous add many video performance fix

* ! Fix navigation in user playlist between entries of same video

* * Reflect playlist updates on watch page playlist panel

* $- Remove outdated incorrect prompt style fix

* ! Fix add video to playlist prompt too high when there are too many playlists

* ! Fix watch page play next/prev video in local playlist

* ! Fix error in online playlist playing

* * Keep partial playlist backward compatibility by restoring `type` in persisted playlist videos

* ! Fix grid item for playlist to hide external player button for local playlist

* * Make history rememeber uniqueId (local playlist video entry) when playing video with local playlist

* ! Fix grid item for video in user playlist to hide external player button

* ! Fix grid item for video in history with user playlist to hide external player button

* ! Fix grid item for video in watch page playlist component with user playlist to hide external player button

* * Update watch page to clear `uniqueID` from query when not playing local playlist

* ! Fix watch page about user playlist detection on new window

* * Reflect playlist updates on watch page playlist panel, even for currently playing video

* ! Allow video with local playlist to be played in external player, but without playlist

Also add missing fix for WatchVideoInfo

* ! Fix external player handling for video in local playlist

* ! Fix ft-video having different URLs in links

* yarn run lint-style-fix

* $ Rename uniqueId to playlistItemId

* * Ensure local playlist ID won't conflict with remote playlist ID

* - Remove import video while creating playlist related code

* * Make text translatable

* * Make sort option text translatable

* ! Fix reverse condition

* $ Just use ?.

* Code review changes

* Spaces

* beforeDestroy

* Remove unused methods

* Remove infoData

* filter > find

* avoid importing `crypto` from NodeJS

* Compress CSS ruleset

* $ Remove useless prefix from key

* Use template for element with v-if only

* Make playlist selector look more selectable (cursor: pointer)

* Translate toast messages and fix remove watched videos from playlist

* ! Fix translation

* - Remove unused methods

* $ Remove workaround for issue which cannot be reproduced anymore

* $ Remove remaining useless code following last commit removing workaround

* you have no playlist > you have no playlists

* CSS use var --horizontal-directionality-coefficient

* * Update danger buttons color to primary (like clear search cache button)

* ! Fix playlist icon container size

* ! Fix sorting in add video to playlist prompt when filtered

* $- Update ft-inputs to removed prop input-tabindex

* ! Fix vue warning

* + Add toggle to export playlist for older FT

* * Update tooltip text

* ! Fix vue warning

* * Update text align

* * Remove the extra surrounding spaces

* Backtick > quote

* - Remove useless prop

* Fix tootip in lower width view

* Update default filename

* * Make tooltip auto-wrap

* Revert "* Make tooltip auto-wrap"

This reverts commit 7d932b936c.

* Adjust tooltip styling

* * Wait for local playlist loading only when playing with a user playlist

* * Wait for local playlist loading only when playing with a user playlist requested

Request user playlist can still be absent (but not requested for no playlist or remote playlist)

* ! Fix single playlist view cover image having link when no video

* ! Workaround create playlist prompt won't close when enter pressed in input box

* ! Fix clear text button style

* ! Fix copying playlist twice to the same user playlist produces same playlistItemId

* ! Fix add video to playlist prompt input box style

* ! Fix workaround for "create playlist prompt won't close when enter pressed in input box"

* ! Ensure add video to playlist prompt updated when a playlist deleted (in another window)

* ! Avoid saving and displaying unwanted video attributes into playlists

* ! Fix playlist view for deleted user playlists

* ! Fix copying playlist twice to the same user playlist produces same playlistItemId

Real fix
Cause of issue: updating property of input objects (which is shared across multiple run)

* ! Fix search suggestions being blocked by playlist info component in single playlist view

* ! Fix warning when reversing playlist in watch view

* ! Fix prompt in playlist view (playlistinfo component) not above sidebar

* Remove CSS top comments absent in other CSS files

* Remove not useful comment for CSS

* Float with variable

Co-authored-by: Jason <84899178+jasonhenriquez@users.noreply.github.com>

* Revert "! Fix clear text button style"

This reverts commit 44ed286848.

* Missing change for Revert "! Fix clear text button style"

* $ Remove unused style for ft-playlist-selector

* Apply changes from review

* * Use $tc for translation entries with different value according to count values

* ! Fix playlist link in watch view

---------

Co-authored-by: Jason Henriquez <jasonhenriquez@protonmail.com>
Co-authored-by: Jason <84899178+jasonhenriquez@users.noreply.github.com>
2024-01-03 19:44:57 +01:00
PikachuEXE 0daa422284
Add feature to remember video history with last viewed playlist when enabled (#3006)
* + Add "infra" code for new feature

* * Update view/component to implement remembering last playlistID in history

* * Implement option to disable new feature

* ! Fix implementation for use case "Find a video (with playlist PL-A) to view, go to channel, view that same video, no playlist restored"
2023-01-26 03:18:04 +01:00
absidue 63946f7561
Add a settings section component to reduce duplicate code (#2609) 2022-09-24 09:12:11 +00:00
Jason cfeac8c7f1
Collapsible Settings Sections (#1699)
* Adds base dropdown ability to settings page with <details> & <summary>

* Adjusts styling of settings page

Replaces css stylesheets with sass stylesheets on some settings elements for better standardization of styling. Removes now unnecessary ft-card, .card, etc styling. Adds styling to new dropdown functionality.

* Update subscription-settings.sass

* Update Settings.css
2021-09-15 10:03:00 +08: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
Preston 382405cdfe Disable settings depending on others and move default profile logic 2020-10-06 09:38:35 -04:00
Preston d77c9aed49 Add functionality to import and export subscriptions / history 2020-09-06 18:12:25 -04:00
Preston 602a140361 Fix Locale issues and add Privacy Settings card to settings page 2020-08-22 16:51:04 -04:00