SubwayTooter-Android-App/app/src/main/java/jp/juggler/subwaytooter/util/DecodeOptions.kt

41 lines
1.3 KiB
Kotlin
Raw Normal View History

package jp.juggler.subwaytooter.util
import android.content.Context
import android.text.Spannable
import android.text.SpannableStringBuilder
import jp.juggler.subwaytooter.api.entity.CustomEmoji
import jp.juggler.subwaytooter.api.entity.NicoProfileEmoji
import jp.juggler.subwaytooter.api.entity.TootAttachmentLike
import jp.juggler.subwaytooter.table.HighlightWord
2018-01-11 10:31:25 +01:00
import java.util.HashMap
@Suppress("MemberVisibilityCanPrivate")
class DecodeOptions(
var short : Boolean = false,
var decodeEmoji : Boolean = false,
var attachmentList : ArrayList<TootAttachmentLike>? = null,
var linkTag : Any? = null,
2018-01-11 10:31:25 +01:00
var emojiMapCustom : HashMap<String, CustomEmoji>? = null,
var emojiMapProfile : HashMap<String, NicoProfileEmoji>? = null,
var highlightTrie : WordTrieTree? = null
) {
2018-01-11 10:31:25 +01:00
// OUTPUT: true if highlight found
var hasHighlight : Boolean = false
2018-01-11 10:31:25 +01:00
// OUTPUT: highlight found with sound
var highlight_sound : HighlightWord? = null
////////////////////////
// decoder
fun decodeHTML(context : Context?, lcc : LinkClickContext?, html : String?) : SpannableStringBuilder {
return HTMLDecoder.decodeHTML(context, lcc, html, this)
}
fun decodeEmoji(context : Context, s : String?) : Spannable {
return EmojiDecoder.decodeEmoji(context, s ?: "", this)
}
}