package com.atmob.keyboard_android.util

import android.content.Context
import android.content.Intent
import android.os.Build
import android.provider.Settings
import androidx.core.net.toUri

/**
 * 悬浮窗工具类
 */
class FloatingWindowUtil {
    companion object {
        /**
         * 检查是否有悬浮窗权限
         */
        fun hasFloatingWindowPermission(context: Context): Boolean {
            // 6.0及其以上，需要授权
            return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                return Settings.canDrawOverlays(context)
            } else {
                return true
            }
        }

        /**
         * 跳转到悬浮窗的权限设置页面
         */
        fun jumpFloatingWindowSetting(context: Context) {
            val intent = Intent(
                Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
                "package:${context.packageName}".toUri()
            )
            // 重要：在非 Activity 里启动 Activity 需要添加 FLAG_ACTIVITY_NEW_TASK
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
            context.startActivity(intent)
        }
    }
}