Various fixes

This commit is contained in:
Ilya Laktyushin 2023-11-27 00:35:57 +04:00
parent bd8f2dae27
commit 2b85da9985

View File

@ -458,6 +458,9 @@ final class MediaScrubberComponent: Component {
var endPosition = self.endPosition var endPosition = self.endPosition
var trimViewOffset: CGFloat = 0.0 var trimViewOffset: CGFloat = 0.0
var trimViewVisualInsets: UIEdgeInsets = .zero var trimViewVisualInsets: UIEdgeInsets = .zero
var trackViewWidth: CGFloat = availableSize.width
var mainTrimDuration = self.trimDuration
if let track = component.tracks.first(where: { $0.id == self.selectedTrackId }), track.id != 0 { if let track = component.tracks.first(where: { $0.id == self.selectedTrackId }), track.id != 0 {
if let trimRange = track.trimRange { if let trimRange = track.trimRange {
startPosition = trimRange.lowerBound startPosition = trimRange.lowerBound
@ -472,15 +475,22 @@ final class MediaScrubberComponent: Component {
trimViewOffset = -delta trimViewOffset = -delta
trimViewVisualInsets.left = delta trimViewVisualInsets.left = delta
} }
if lowestVideoId == 0 && track.id == 1 {
trimViewVisualInsets = .zero
trackViewWidth = trackView.containerView.frame.width
mainTrimDuration = track.duration
}
} }
} }
let scrubberSize = CGSize(width: availableSize.width, height: trackHeight) let scrubberSize = CGSize(width: availableSize.width, height: trackHeight)
self.trimView.isHollow = self.selectedTrackId != lowestVideoId || self.isAudioOnly self.trimView.isHollow = self.selectedTrackId != lowestVideoId || self.isAudioOnly
let (leftHandleFrame, rightHandleFrame) = self.trimView.update( let (leftHandleFrame, rightHandleFrame) = self.trimView.update(
visualInsets: trimViewVisualInsets, visualInsets: trimViewVisualInsets,
scrubberSize: scrubberSize, scrubberSize: CGSize(width: trackViewWidth, height: trackHeight),
duration: trimDuration, duration: mainTrimDuration,
startPosition: startPosition, startPosition: startPosition,
endPosition: endPosition, endPosition: endPosition,
position: component.position, position: component.position,