From c6166e33cbce0b5cbb4580f81b4c0540ad2a83b0 Mon Sep 17 00:00:00 2001 From: neon443 <69979447+neon443@users.noreply.github.com> Date: Sat, 22 Nov 2025 12:35:04 +0000 Subject: [PATCH] gifs dont stop animating on reappear now :yay: --- StickerSlack/Emoji/GifView.swift | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/StickerSlack/Emoji/GifView.swift b/StickerSlack/Emoji/GifView.swift index 0136ae1..f6ed8f8 100644 --- a/StickerSlack/Emoji/GifView.swift +++ b/StickerSlack/Emoji/GifView.swift @@ -30,16 +30,19 @@ struct GifView: View { } .onDisappear { timer?.invalidate() + timer = nil } .task { - self.gif = await GifManager.gifFrom(url: url) - guard gif.count > 0 else { - return + if gif.isEmpty { + self.gif = await GifManager.gifFrom(url: url) } - guard timer == nil else { + guard gif.count > 0 else { return } + + if timer != nil { timer!.invalidate() - return + timer = nil } + timer = Timer(timeInterval: gif[0].showFor, repeats: true) { timer in if currentI == (gif.count-1) { currentI = 0