mirror of
https://github.com/neon443/StickerSlack.git
synced 2026-03-11 05:19:13 +00:00
Emoji.sticker can return nil added tests to measure .sticker perfomance delete redundant stickerbrowserviewcontroller
28 lines
660 B
Swift
28 lines
660 B
Swift
//
|
|
// StickerBrowserDataSource.swift
|
|
// StickerSlackiMessageExtension
|
|
//
|
|
// Created by neon443 on 29/10/2025.
|
|
//
|
|
|
|
import Foundation
|
|
import Messages
|
|
|
|
class StickerBrowserDataSource: NSObject, MSStickerBrowserViewDataSource {
|
|
var hoarder: EmojiHoarder = EmojiHoarder()
|
|
|
|
var emojis: [MSSticker] = []
|
|
|
|
func numberOfStickers(in stickerBrowserView: MSStickerBrowserView) -> Int {
|
|
for emoji in hoarder.emojis {
|
|
guard let sticker = emoji.sticker else { continue }
|
|
emojis.append(sticker)
|
|
}
|
|
return emojis.count
|
|
}
|
|
|
|
func stickerBrowserView(_ stickerBrowserView: MSStickerBrowserView, stickerAt index: Int) -> MSSticker {
|
|
return emojis[index]
|
|
}
|
|
}
|