Mode code style edits andavoid lint warnings

This commit is contained in:
Juha Heinanen
2026-05-19 19:37:48 +03:00
parent bd49f31df6
commit 276fe20864

View File

@ -1,11 +1,9 @@
package com.tutpro.baresip package com.tutpro.baresip
import android.Manifest
import android.content.ContentProviderOperation import android.content.ContentProviderOperation
import android.content.ContentValues import android.content.ContentValues
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import android.content.pm.PackageManager
import android.database.Cursor import android.database.Cursor
import android.graphics.Bitmap import android.graphics.Bitmap
import android.graphics.BitmapFactory import android.graphics.BitmapFactory
@ -14,7 +12,6 @@ import android.net.Uri
import android.provider.ContactsContract import android.provider.ContactsContract
import android.provider.ContactsContract.CommonDataKinds import android.provider.ContactsContract.CommonDataKinds
import android.provider.ContactsContract.Contacts.Data import android.provider.ContactsContract.Contacts.Data
import android.widget.Toast
import androidx.activity.compose.BackHandler import androidx.activity.compose.BackHandler
import androidx.activity.compose.rememberLauncherForActivityResult import androidx.activity.compose.rememberLauncherForActivityResult
import androidx.activity.result.contract.ActivityResultContracts import androidx.activity.result.contract.ActivityResultContracts
@ -29,7 +26,6 @@ import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.asPaddingValues import androidx.compose.foundation.layout.asPaddingValues
import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxSize
@ -50,7 +46,6 @@ import androidx.compose.material.icons.filled.Call
import androidx.compose.material.icons.filled.Check import androidx.compose.material.icons.filled.Check
import androidx.compose.material.icons.filled.Edit import androidx.compose.material.icons.filled.Edit
import androidx.compose.material.icons.filled.Remove import androidx.compose.material.icons.filled.Remove
import androidx.compose.material.icons.outlined.Call
import androidx.compose.material.icons.outlined.Email import androidx.compose.material.icons.outlined.Email
import androidx.compose.material3.CircularProgressIndicator import androidx.compose.material3.CircularProgressIndicator
import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.ExperimentalMaterial3Api
@ -67,6 +62,7 @@ import androidx.compose.material3.TopAppBarDefaults
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.collectAsState
import androidx.compose.runtime.getValue import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember import androidx.compose.runtime.remember
@ -78,7 +74,6 @@ import androidx.compose.ui.focus.FocusRequester
import androidx.compose.ui.focus.focusRequester import androidx.compose.ui.focus.focusRequester
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.asImageBitmap
import androidx.compose.ui.layout.ContentScale import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
@ -88,7 +83,6 @@ import androidx.compose.ui.text.input.KeyboardType
import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp import androidx.compose.ui.unit.sp
import androidx.core.content.ContextCompat
import androidx.core.graphics.scale import androidx.core.graphics.scale
import androidx.core.net.toUri import androidx.core.net.toUri
import androidx.exifinterface.media.ExifInterface import androidx.exifinterface.media.ExifInterface
@ -97,7 +91,6 @@ import androidx.navigation.NavGraphBuilder
import androidx.navigation.NavType import androidx.navigation.NavType
import androidx.navigation.compose.composable import androidx.navigation.compose.composable
import androidx.navigation.navArgument import androidx.navigation.navArgument
import coil.compose.AsyncImage
import coil.compose.rememberAsyncImagePainter import coil.compose.rememberAsyncImagePainter
import com.tutpro.baresip.CustomElements.AlertDialog import com.tutpro.baresip.CustomElements.AlertDialog
import java.io.ByteArrayOutputStream import java.io.ByteArrayOutputStream
@ -197,12 +190,15 @@ private fun ContactScreen(
color = contact.colorInt(), color = contact.colorInt(),
id = contact.id(), id = contact.id(),
newId = contact.id(), newId = contact.id(),
avatarImageUri = if (contact is Contact.BaresipContact && contact.avatarImage != null && avatarFile.exists()) avatarImageUri = when (contact) {
Uri.fromFile(avatarFile).toString() is Contact.BaresipContact if contact.avatarImage != null && avatarFile.exists() ->
else if (contact is Contact.AndroidContact && contact.thumbnailUri != null) Uri.fromFile(
contact.thumbnailUri.toString() avatarFile
else ).toString()
null, is Contact.AndroidContact if contact.thumbnailUri != null ->
contact.thumbnailUri.toString()
else -> null
},
isLoading = false, isLoading = false,
isBaresipContact = contact is Contact.BaresipContact isBaresipContact = contact is Contact.BaresipContact
) )
@ -608,6 +604,8 @@ private fun UrisSection(
isEditing: Boolean, isEditing: Boolean,
onUrisChange: (List<String>) -> Unit onUrisChange: (List<String>) -> Unit
) { ) {
val selectedAor by viewModel.selectedAor.collectAsState()
if (isEditing) { if (isEditing) {
Column( Column(
modifier = Modifier.fillMaxWidth(), modifier = Modifier.fillMaxWidth(),
@ -1098,7 +1096,7 @@ private fun updateAndroidEmail(ctx: Context, rawContactId: Long, email: String):
val where = "${ContactsContract.Data.RAW_CONTACT_ID}=$rawContactId and ${ContactsContract.Data.MIMETYPE}='${CommonDataKinds.Email.CONTENT_ITEM_TYPE}'" val where = "${ContactsContract.Data.RAW_CONTACT_ID}=$rawContactId and ${ContactsContract.Data.MIMETYPE}='${CommonDataKinds.Email.CONTENT_ITEM_TYPE}'"
return try { return try {
ctx.contentResolver.update(ContactsContract.Data.CONTENT_URI, contentValues, where, null) ctx.contentResolver.update(ContactsContract.Data.CONTENT_URI, contentValues, where, null)
} catch (e: Exception) { } catch (_: Exception) {
0 0
} }
} }
@ -1110,7 +1108,7 @@ private fun updateAndroidPhoto(ctx: Context, rawContactId: Long, photoBits: Bitm
val where = "${ContactsContract.Data.RAW_CONTACT_ID}=$rawContactId and ${ContactsContract.Data.MIMETYPE}='${CommonDataKinds.Photo.CONTENT_ITEM_TYPE}'" val where = "${ContactsContract.Data.RAW_CONTACT_ID}=$rawContactId and ${ContactsContract.Data.MIMETYPE}='${CommonDataKinds.Photo.CONTENT_ITEM_TYPE}'"
return try { return try {
ctx.contentResolver.update(ContactsContract.Data.CONTENT_URI, contentValues, where, null) ctx.contentResolver.update(ContactsContract.Data.CONTENT_URI, contentValues, where, null)
} catch (e: Exception) { } catch (_: Exception) {
0 0
} }
} }
@ -1123,7 +1121,7 @@ private fun bitmapToPNGByteArray(bitmap: Bitmap): ByteArray? {
out.flush() out.flush()
out.close() out.close()
out.toByteArray() out.toByteArray()
} catch (e: Exception) { } catch (_: Exception) {
null null
} }
} }