Fix recent stickers displayed after sticker packs are deleted (#13066)
* fix(@desktop/stickers): Fix sticker showing uninstalled sticker pack fixes #12677 * chore: bump status-go
This commit is contained in:
parent
39095cc737
commit
69f872f130
|
@ -56,6 +56,7 @@ proc delete*(self: Controller) =
|
|||
proc init*(self: Controller) =
|
||||
|
||||
self.events.on(SIGNAL_LOAD_RECENT_STICKERS_DONE) do(e: Args):
|
||||
self.delegate.clearStickers()
|
||||
let args = StickersArgs(e)
|
||||
for sticker in args.stickers:
|
||||
self.delegate.addRecentStickerToList(sticker)
|
||||
|
|
|
@ -42,6 +42,9 @@ method obtainMarketStickerPacks*(self: AccessInterface) {.base.} =
|
|||
method addRecentStickerToList*(self: AccessInterface, sticker: StickerDto) {.base.} =
|
||||
raise newException(ValueError, "No implementation available")
|
||||
|
||||
method clearStickers*(self: AccessInterface) {.base.} =
|
||||
raise newException(ValueError, "No implementation available")
|
||||
|
||||
method clearStickerPacks*(self: AccessInterface) {.base.} =
|
||||
raise newException(ValueError, "No implementation available")
|
||||
|
||||
|
|
|
@ -45,6 +45,11 @@ QtObject:
|
|||
StickerRoles.PackId.int:"packId"
|
||||
}.toTable
|
||||
|
||||
proc clear*(self: StickerList) =
|
||||
self.beginResetModel()
|
||||
self.stickers = @[]
|
||||
self.endResetModel()
|
||||
|
||||
proc addStickerToList*(self: StickerList, sticker: Item) =
|
||||
if(self.stickers.any(proc(existingSticker: Item): bool = return existingSticker.getHash == sticker.getHash)):
|
||||
return
|
||||
|
|
|
@ -232,6 +232,9 @@ method getInstalledStickerPacks*(self: Module) =
|
|||
method clearStickerPacks*(self: Module) =
|
||||
self.view.clearStickerPacks()
|
||||
|
||||
method clearStickers*(self: Module) =
|
||||
self.view.clearStickers()
|
||||
|
||||
method allPacksLoaded*(self: Module) =
|
||||
self.view.allPacksLoaded()
|
||||
|
||||
|
|
|
@ -74,6 +74,9 @@ QtObject:
|
|||
|
||||
proc installedStickerPacksUpdated*(self: View) {.signal.}
|
||||
|
||||
proc clearStickers*(self: View) =
|
||||
self.recentStickers.clear()
|
||||
|
||||
proc clearStickerPacks*(self: View) =
|
||||
self.stickerPacks.clear()
|
||||
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 8cbdc807584d2c88186d7f43664183738dc86ef6
|
||||
Subproject commit 29ade0f817051fe4ba2a6995a8ac20c509877d97
|
Loading…
Reference in New Issue