package app.dudu.app

import android.Manifest
import android.content.Context
import android.content.pm.PackageManager
import android.provider.Settings
import androidx.core.content.ContextCompat

/** 系统状态自检：输入法启用 / 选为当前 / 麦克风权限（引导页与我的页共用）。 */

fun isImeEnabled(context: Context): Boolean {
    val enabled = Settings.Secure.getString(
        context.contentResolver, Settings.Secure.ENABLED_INPUT_METHODS,
    ) ?: return false
    return enabled.split(':').any { it.startsWith(context.packageName + "/") }
}

fun isImeSelected(context: Context): Boolean {
    val current = Settings.Secure.getString(
        context.contentResolver, Settings.Secure.DEFAULT_INPUT_METHOD,
    ) ?: return false
    return current.startsWith(context.packageName + "/")
}

fun hasMicPermission(context: Context): Boolean =
    ContextCompat.checkSelfPermission(context, Manifest.permission.RECORD_AUDIO) ==
        PackageManager.PERMISSION_GRANTED

/** 三步引导是否全部完成（决定冷启动落引导页还是我的页）。 */
fun setupComplete(context: Context): Boolean =
    isImeEnabled(context) && hasMicPermission(context)
