Skip to content

Playback Controls Settings: Skip Duration Customizability (fixes #1685)

Avi Wadhwa requested to merge aviwad/vlc-ios:gestureDurationCustom into master

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. 😄

Simulator_Screen_Recording_-iPhone_14-_2023-07-05_at_02.33.31

Edited by Avi Wadhwa

Merge request reports