From cd939f3d9c6b8c78f6627faf2df6a307c6766542 Mon Sep 17 00:00:00 2001 From: Juha Heinanen Date: Tue, 18 Nov 2025 12:33:26 +0200 Subject: [PATCH] Replaced mic_on/mic_off drawabled with Material design icons --- .../main/kotlin/com/tutpro/baresip/MainActivity.kt | 6 ------ app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt | 10 ++++++---- app/src/main/kotlin/com/tutpro/baresip/ViewModel.kt | 11 +++++++---- app/src/main/res/drawable/mic_off.xml | 9 --------- app/src/main/res/drawable/mic_on.xml | 5 ----- 5 files changed, 13 insertions(+), 28 deletions(-) delete mode 100644 app/src/main/res/drawable/mic_off.xml delete mode 100644 app/src/main/res/drawable/mic_on.xml diff --git a/app/src/main/kotlin/com/tutpro/baresip/MainActivity.kt b/app/src/main/kotlin/com/tutpro/baresip/MainActivity.kt index f7945eb3..860161f0 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/MainActivity.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/MainActivity.kt @@ -150,12 +150,6 @@ class MainActivity : ComponentActivity() { initialized = true - viewModel.updateMicIcon(if (BaresipService.isMicMuted) - R.drawable.mic_off - else - R.drawable.mic_on - ) - val restartApp = { Log.i(TAG, "Restarting baresip") window.setFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE, diff --git a/app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt b/app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt index 133a5c47..ec15fdba 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/MainScreen.kt @@ -58,6 +58,8 @@ import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.KeyboardArrowDown import androidx.compose.material.icons.filled.KeyboardArrowUp import androidx.compose.material.icons.filled.Menu +import androidx.compose.material.icons.filled.Mic +import androidx.compose.material.icons.filled.MicOff import androidx.compose.material.icons.outlined.Clear import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.ButtonColors @@ -568,7 +570,7 @@ private fun TopAppBar( Spacer(modifier = Modifier.width(22.dp)) Icon( - imageVector = ImageVector.vectorResource(currentMicIcon), + imageVector = currentMicIcon, modifier = Modifier .size(40.dp) .combinedClickable( @@ -576,11 +578,11 @@ private fun TopAppBar( if (Call.call("connected") != null) { BaresipService.isMicMuted = !BaresipService.isMicMuted if (BaresipService.isMicMuted) { - viewModel.updateMicIcon(R.drawable.mic_off) + viewModel.updateMicIcon(Icons.Filled.MicOff) Api.calls_mute(true) } else { - viewModel.updateMicIcon(R.drawable.mic_on) + viewModel.updateMicIcon(Icons.Filled.Mic) Api.calls_mute(false) } } @@ -2053,7 +2055,7 @@ private fun showCall(ctx: Context, viewModel: ViewModel, ua: UserAgent?, showCal dialpadButtonEnabled.value = true if (BaresipService.isMicMuted) { BaresipService.isMicMuted = false - viewModel.updateMicIcon(R.drawable.mic_on) + viewModel.updateMicIcon(Icons.Filled.Mic) } } else { pullToRefreshEnabled.value = false diff --git a/app/src/main/kotlin/com/tutpro/baresip/ViewModel.kt b/app/src/main/kotlin/com/tutpro/baresip/ViewModel.kt index 8e5ecb98..bea7f20e 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/ViewModel.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/ViewModel.kt @@ -1,8 +1,11 @@ package com.tutpro.baresip import android.app.Application +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.Mic import androidx.compose.runtime.State import androidx.compose.runtime.mutableIntStateOf +import androidx.compose.ui.graphics.vector.ImageVector import androidx.lifecycle.AndroidViewModel import androidx.lifecycle.viewModelScope import kotlinx.coroutines.flow.MutableSharedFlow @@ -73,11 +76,11 @@ class ViewModel(application: Application) : AndroidViewModel(application) { _speakerIcon.value = iconResId } - private val _micIcon = MutableStateFlow(R.drawable.mic_on) - val micIcon: StateFlow = _micIcon.asStateFlow() + private val _micIcon = MutableStateFlow(Icons.Filled.Mic) + val micIcon: StateFlow = _micIcon.asStateFlow() - fun updateMicIcon(iconResId: Int) { - _micIcon.value = iconResId + fun updateMicIcon(icon: ImageVector) { + _micIcon.value = icon } private val _isDialpadVisible = MutableStateFlow(false) diff --git a/app/src/main/res/drawable/mic_off.xml b/app/src/main/res/drawable/mic_off.xml deleted file mode 100644 index 4b741285..00000000 --- a/app/src/main/res/drawable/mic_off.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/mic_on.xml b/app/src/main/res/drawable/mic_on.xml deleted file mode 100644 index ccca44b0..00000000 --- a/app/src/main/res/drawable/mic_on.xml +++ /dev/null @@ -1,5 +0,0 @@ - - -