package com.bitchat.android.mesh import android.Manifest import android.content.Context import android.content.pm.PackageManager import androidx.core.app.ActivityCompat /** * Handles all Bluetooth permission checking logic */ class BluetoothPermissionManager(private val context: Context) { /** * Check if all required Bluetooth permissions are granted */ fun hasBluetoothPermissions(): Boolean { val permissions = mutableListOf() if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.S) { permissions.addAll(listOf( Manifest.permission.BLUETOOTH_ADVERTISE, Manifest.permission.BLUETOOTH_CONNECT, Manifest.permission.BLUETOOTH_SCAN )) } else { permissions.addAll(listOf( Manifest.permission.BLUETOOTH, Manifest.permission.BLUETOOTH_ADMIN )) } permissions.addAll(listOf( Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION )) return permissions.all { ActivityCompat.checkSelfPermission(context, it) == PackageManager.PERMISSION_GRANTED } } }