kopia lustrzana https://github.com/ryukoposting/Signal-Android
24 wiersze
967 B
Kotlin
24 wiersze
967 B
Kotlin
package org.thoughtcrime.securesms.keyboard.emoji
|
|
|
|
import org.thoughtcrime.securesms.components.emoji.EmojiPageModel
|
|
import org.thoughtcrime.securesms.components.emoji.EmojiPageViewGridAdapter
|
|
import org.thoughtcrime.securesms.components.emoji.RecentEmojiPageModel
|
|
import org.thoughtcrime.securesms.components.emoji.parsing.EmojiTree
|
|
import org.thoughtcrime.securesms.emoji.EmojiCategory
|
|
import org.thoughtcrime.securesms.emoji.EmojiSource
|
|
import org.thoughtcrime.securesms.util.adapter.mapping.MappingModel
|
|
|
|
fun EmojiPageModel.toMappingModels(): List<MappingModel<*>> {
|
|
val emojiTree: EmojiTree = EmojiSource.latest.emojiTree
|
|
|
|
return displayEmoji.map {
|
|
val isTextEmoji = EmojiCategory.EMOTICONS.key == key || (RecentEmojiPageModel.KEY == key && emojiTree.getEmoji(it.value, 0, it.value.length) == null)
|
|
|
|
if (isTextEmoji) {
|
|
EmojiPageViewGridAdapter.EmojiTextModel(key, it)
|
|
} else {
|
|
EmojiPageViewGridAdapter.EmojiModel(key, it)
|
|
}
|
|
}
|
|
}
|