gifs dont stop animating on reappear now :yay:

This commit is contained in:
neon443
2025-11-22 12:35:04 +00:00
parent edbfa5cb0a
commit c6166e33cb

View File

@@ -30,16 +30,19 @@ struct GifView: View {
} }
.onDisappear { .onDisappear {
timer?.invalidate() timer?.invalidate()
timer = nil
} }
.task { .task {
self.gif = await GifManager.gifFrom(url: url) if gif.isEmpty {
guard gif.count > 0 else { self.gif = await GifManager.gifFrom(url: url)
return
} }
guard timer == nil else { guard gif.count > 0 else { return }
if timer != nil {
timer!.invalidate() timer!.invalidate()
return timer = nil
} }
timer = Timer(timeInterval: gif[0].showFor, repeats: true) { timer in timer = Timer(timeInterval: gif[0].showFor, repeats: true) { timer in
if currentI == (gif.count-1) { if currentI == (gif.count-1) {
currentI = 0 currentI = 0