Skip to content

Adjust all times: add independent extend start/end option (#11602)#11983

Open
muaz978 wants to merge 1 commit into
SubtitleEdit:mainfrom
muaz978:feature/adjust-times-extend-start-end
Open

Adjust all times: add independent extend start/end option (#11602)#11983
muaz978 wants to merge 1 commit into
SubtitleEdit:mainfrom
muaz978:feature/adjust-times-extend-start-end

Conversation

@muaz978

@muaz978 muaz978 commented Jun 29, 2026

Copy link
Copy Markdown

Adjust all times: independent extend start/end

Implements suggestion #1 from #11602.

Problem

The Adjust all times dialog only offers "Show earlier" / "Show later", which shift the whole line (start and end move together by the same amount). There was no way to grow a line's duration by pulling only its start earlier or pushing only its end later.

Change

Adds an "Extend duration (independent start/end)" section to the dialog:

  • "Start earlier by" moves each line's start time earlier while keeping its end fixed.
  • "End later by" moves each line's end time later while keeping its start fixed.
  • The two amounts are independent; you can set either, both, or leave one at zero.
  • The Extend action respects the same All / Selected lines / Selected lines and forward scope as the existing buttons.
  • Both amounts persist across sessions (new ExtendStartSeconds / ExtendEndSeconds settings, default 0.5s).

The existing "Show earlier" / "Show later" behaviour is unchanged.

Implementation notes

  • New IAdjustCallback.ExtendStartEndTimes(...) implemented in MainViewModel, applying the edit atomically via SubtitleLineViewModel.SetTimes (recomputes duration, never exposes start greater than end). A start that would go negative is clamped to zero.
  • View model adds ExtendStartEarlier / ExtendEndLater observable properties, an Extend command, and load/save of the two new settings.
  • Window adds the section UI (two TimeCodeUpDown editors plus an Extend button) below the existing controls.

Files

  • src/ui/Logic/Config/SeAdjustAllTimes.cs
  • src/ui/Features/Sync/AdjustAllTimes/IAdjustCallback.cs
  • src/ui/Features/Sync/AdjustAllTimes/AdjustAllTimesViewModel.cs
  • src/ui/Features/Sync/AdjustAllTimes/AdjustAllTimesWindow.cs
  • src/ui/Features/Main/MainViewModel.cs
  • src/ui/Logic/Config/Language/Sync/LanguageSync.cs

🤖 Generated with Claude Code

…it#11602)

Adds an "Extend duration" section to the Adjust all times dialog that grows
each line's duration by moving the start earlier and/or the end later, leaving
the opposite edge fixed. This complements the existing show earlier/later
buttons, which shift the whole line. The two amounts are independent, persist
across sessions, and respect the same All / Selected / Selected-and-forward
scope as the existing buttons.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant