#4094 - Redrawing waveforms on bound changes.

This commit is contained in:
Stefan Ceriu
2021-07-16 09:06:36 +03:00
parent 87d6265067
commit b0c48ecee6
4 changed files with 18 additions and 0 deletions
@@ -105,6 +105,7 @@ class VoiceMessageAttachmentCacheManager {
if var existingSamples = self.samples[identifier] {
existingSamples[numberOfSamples] = samples
self.samples[identifier] = existingSamples
} else {
self.samples[identifier] = [numberOfSamples: samples]
}
@@ -87,6 +87,10 @@ class VoiceMessagePlaybackController: VoiceMessageAudioPlayerDelegate, VoiceMess
}
}
func voiceMessagePlaybackViewDidChangeWidth() {
loadAttachmentData()
}
// MARK: - VoiceMessageAudioPlayerDelegate
func audioPlayerDidFinishLoading(_ audioPlayer: VoiceMessageAudioPlayer) {
@@ -19,6 +19,7 @@ import Reusable
protocol VoiceMessagePlaybackViewDelegate: AnyObject {
func voiceMessagePlaybackViewDidRequestPlaybackToggle()
func voiceMessagePlaybackViewDidChangeWidth()
}
struct VoiceMessagePlaybackViewDetails {
@@ -54,6 +55,14 @@ class VoiceMessagePlaybackView: UIView, NibLoadable, Themable {
return _waveformView
}
override var bounds: CGRect {
didSet {
if oldValue.width != bounds.width {
delegate?.voiceMessagePlaybackViewDidChangeWidth()
}
}
}
override func awakeFromNib() {
super.awakeFromNib()
@@ -189,6 +189,10 @@ class VoiceMessageToolbarView: PassthroughView, NibLoadable, Themable, UIGesture
delegate?.voiceMessageToolbarViewDidRequestPlaybackToggle(self)
}
func voiceMessagePlaybackViewDidChangeWidth() {
}
// MARK: - Private
@objc private func handleLongPress(_ gestureRecognizer: UILongPressGestureRecognizer) {