Playback Controls Settings: Skip Duration Customizability (fixes #1685)
There are a total of 4 different skip options:
- Forward & Tap,
- Backward & Tap,
- Forward & Gesture,
- Backward & Gesture.
To prevent the monstrosity of 4 options, I decided to add 2 new toggles that group these skips together: Forward = Backward, and Tap = Gesture.
The code dynamically hides the respective cells for skips depending on which "skip groups" are toggled. Additionally, the audio and video players correctly skip based on the toggles and read from the correct kVLC values.
Additions:
- 4 new kVLC values (4 new kVLC defaults).
- 2 new toggles available in Settings.app, 2 new toggles and 2 new skip options in the in-app settings.
- Audio and Video player now have 4 new variables (for the two skip groups, and 2 gesture seek durations)
- New delegate that passes the UITableViewController to the settings cell when needed (allows us to reload the settings when skip groups are toggled).
- New String optional passed to the Action sheet handler (passes the dynamic skip description to the action header title).
- 7 new localizable strings.
Removals: Cannot set the skip duration within Settings.app. This has moreso to do with the limitation Apple sets. I am unable to change the skip cell name, or hide or show them based on the toggle. Letting the user set 4 different skips if the user already selected to group all 4 together is bad UI.
Attached is a screen recording.
Merge request reports
Activity
changed title from Playback Controls Settings: Skip Customizability (fixes #1685 (closed)) to Playback Controls Settings: Skip Duration Customizability (fixes #1685 (closed))
assigned to @diogo.simao-marques
changed milestone to %3.5.0
- Automatically resolved by Avi Wadhwa
- Automatically resolved by Avi Wadhwa
- Automatically resolved by Avi Wadhwa
- Automatically resolved by Avi Wadhwa
- Automatically resolved by Avi Wadhwa
- Resolved by Avi Wadhwa
- Resolved by Avi Wadhwa
Nice job!
Please rename "Gesture" as appropriate to what I believe a Swipe gesture is as this is too generic.
More nit-picks, inline.
added 1 commit
- 487b9914 - Skip Duration Settings: Cache the UserDefaults for audio/video player
- Automatically resolved by Avi Wadhwa
- Resolved by Diogo Simao Marques
Apart from the suggestion, the feature works as expected and it looks good to me!
Edited by Diogo Simao Marques
added 1 commit
- 9edfe09a - Seek options: shift code-block from AudioPlayer to super class PlayerView
added 17 commits
-
9edfe09a...d697866d - 9 commits from branch
videolan:master
- fb7d3d00 - Playback Controls Settings: new variable, constants, and settings for gesture...
- cefd3175 - Player Skip Controls: New settings to group Forward/Backward skips, and Tap/Gesture skips
- 799382a7 - Player Skip Control: Hide and show cells depending on skip groups selected.
- e6491756 - Playback Skip Control: Audio/Video players react to skip changes.
- 9bdd9f2b - Player Skip Control: Rebase into Diogo's changes, fix comma spacing violationg
- 4333d57c - Skip Duration Fixes: Change wording
- a97ca065 - Skip Duration Settings: Cache the UserDefaults for audio/video player
- 4307fcda - Seek options: shift code-block from AudioPlayer to super class PlayerView
Toggle commit list-
9edfe09a...d697866d - 9 commits from branch
@aviwad could you rebase once more so we can merge?
@fkuehne will rebase this one and the siri one today
@aviwad any chance of a rebase?
mentioned in merge request !1132 (merged)