[Service] New UI

This commit is contained in:
2026-09-13 21:12:44 -07:00
parent e473d00f4f
commit 1b1ca16fdd
45 changed files with 2726 additions and 205 deletions
@@ -0,0 +1,46 @@
package com.portaltv.capability
import android.content.Context
import android.graphics.Typeface
import android.widget.TextView
import androidx.core.content.res.ResourcesCompat
/** Lucide icon-font glyphs (codepoints from lucide-static `info.json`, same release as res/font/lucide.ttf). */
object LucideIcons {
const val CAMERA = "\uE064"
const val SPARKLES = "\uE412"
const val FOLDERS = "\uE33F"
const val USERS = "\uE1A4"
const val MAP_PIN = "\uE111"
const val LOCATE_FIXED = "\uE1DB"
const val SETTINGS = "\uE154"
const val SETTINGS_2 = "\uE245"
const val HOURGLASS = "\uE296"
const val MONITOR = "\uE11D"
const val LAPTOP = "\uE1CD"
const val VIDEO = "\uE1A5"
const val MIC = "\uE118"
const val UPLOAD = "\uE19E"
const val TRASH_2 = "\uE18E"
const val ELLIPSIS_VERTICAL = "\uE0B7"
const val CHECK = "\uE06C"
const val CIRCLE_CHECK = "\uE226"
const val ZOOM_IN = "\uE1B6"
const val ZOOM_OUT = "\uE1B7"
@Volatile private var typeface: Typeface? = null
fun typeface(context: Context): Typeface {
typeface?.let { return it }
val tf = ResourcesCompat.getFont(context, R.font.lucide)
?: error("Missing R.font.lucide")
typeface = tf
return tf
}
fun apply(view: TextView, glyph: String) {
view.typeface = typeface(view.context)
view.text = glyph
view.includeFontPadding = false
}
}