Replaced mic_on/mic_off drawabled with Material design icons

This commit is contained in:
Juha Heinanen
2025-11-18 12:33:26 +02:00
parent c245e5a6c7
commit cd939f3d9c
5 changed files with 13 additions and 28 deletions

View File

@ -150,12 +150,6 @@ class MainActivity : ComponentActivity() {
initialized = true initialized = true
viewModel.updateMicIcon(if (BaresipService.isMicMuted)
R.drawable.mic_off
else
R.drawable.mic_on
)
val restartApp = { val restartApp = {
Log.i(TAG, "Restarting baresip") Log.i(TAG, "Restarting baresip")
window.setFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE, window.setFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE,

View File

@ -58,6 +58,8 @@ import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.KeyboardArrowDown import androidx.compose.material.icons.filled.KeyboardArrowDown
import androidx.compose.material.icons.filled.KeyboardArrowUp import androidx.compose.material.icons.filled.KeyboardArrowUp
import androidx.compose.material.icons.filled.Menu 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.material.icons.outlined.Clear
import androidx.compose.material3.BasicAlertDialog import androidx.compose.material3.BasicAlertDialog
import androidx.compose.material3.ButtonColors import androidx.compose.material3.ButtonColors
@ -568,7 +570,7 @@ private fun TopAppBar(
Spacer(modifier = Modifier.width(22.dp)) Spacer(modifier = Modifier.width(22.dp))
Icon( Icon(
imageVector = ImageVector.vectorResource(currentMicIcon), imageVector = currentMicIcon,
modifier = Modifier modifier = Modifier
.size(40.dp) .size(40.dp)
.combinedClickable( .combinedClickable(
@ -576,11 +578,11 @@ private fun TopAppBar(
if (Call.call("connected") != null) { if (Call.call("connected") != null) {
BaresipService.isMicMuted = !BaresipService.isMicMuted BaresipService.isMicMuted = !BaresipService.isMicMuted
if (BaresipService.isMicMuted) { if (BaresipService.isMicMuted) {
viewModel.updateMicIcon(R.drawable.mic_off) viewModel.updateMicIcon(Icons.Filled.MicOff)
Api.calls_mute(true) Api.calls_mute(true)
} }
else { else {
viewModel.updateMicIcon(R.drawable.mic_on) viewModel.updateMicIcon(Icons.Filled.Mic)
Api.calls_mute(false) Api.calls_mute(false)
} }
} }
@ -2053,7 +2055,7 @@ private fun showCall(ctx: Context, viewModel: ViewModel, ua: UserAgent?, showCal
dialpadButtonEnabled.value = true dialpadButtonEnabled.value = true
if (BaresipService.isMicMuted) { if (BaresipService.isMicMuted) {
BaresipService.isMicMuted = false BaresipService.isMicMuted = false
viewModel.updateMicIcon(R.drawable.mic_on) viewModel.updateMicIcon(Icons.Filled.Mic)
} }
} else { } else {
pullToRefreshEnabled.value = false pullToRefreshEnabled.value = false

View File

@ -1,8 +1,11 @@
package com.tutpro.baresip package com.tutpro.baresip
import android.app.Application 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.State
import androidx.compose.runtime.mutableIntStateOf import androidx.compose.runtime.mutableIntStateOf
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.lifecycle.AndroidViewModel import androidx.lifecycle.AndroidViewModel
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import kotlinx.coroutines.flow.MutableSharedFlow import kotlinx.coroutines.flow.MutableSharedFlow
@ -73,11 +76,11 @@ class ViewModel(application: Application) : AndroidViewModel(application) {
_speakerIcon.value = iconResId _speakerIcon.value = iconResId
} }
private val _micIcon = MutableStateFlow(R.drawable.mic_on) private val _micIcon = MutableStateFlow(Icons.Filled.Mic)
val micIcon: StateFlow<Int> = _micIcon.asStateFlow() val micIcon: StateFlow<ImageVector> = _micIcon.asStateFlow()
fun updateMicIcon(iconResId: Int) { fun updateMicIcon(icon: ImageVector) {
_micIcon.value = iconResId _micIcon.value = icon
} }
private val _isDialpadVisible = MutableStateFlow(false) private val _isDialpadVisible = MutableStateFlow(false)

View File

@ -1,9 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="48dp"
android:height="48dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="#FF000000"
android:pathData="M19,11h-1.7c0,0.74 -0.16,1.43 -0.43,2.05l1.23,1.23c0.56,-0.98 0.9,-2.09 0.9,-3.28zM14.98,11.17c0,-0.06 0.02,-0.11 0.02,-0.17L15,5c0,-1.66 -1.34,-3 -3,-3S9,3.34 9,5v0.18l5.98,5.99zM4.27,3L3,4.27l6.01,6.01L9.01,11c0,1.66 1.33,3 2.99,3 0.22,0 0.44,-0.03 0.65,-0.08l1.66,1.66c-0.71,0.33 -1.5,0.52 -2.31,0.52 -2.76,0 -5.3,-2.1 -5.3,-5.1L5,11c0,3.41 2.72,6.23 6,6.72L11,21h2v-3.28c0.91,-0.13 1.77,-0.45 2.54,-0.9L19.73,21 21,19.73 4.27,3z"/>
</vector>

View File

@ -1,5 +0,0 @@
<vector android:height="48dp"
android:viewportHeight="24" android:viewportWidth="24"
android:width="48dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="@android:color/white" android:pathData="M12,14c1.66,0 2.99,-1.34 2.99,-3L15,5c0,-1.66 -1.34,-3 -3,-3S9,3.34 9,5v6c0,1.66 1.34,3 3,3zM17.3,11c0,3 -2.54,5.1 -5.3,5.1S6.7,14 6.7,11L5,11c0,3.41 2.72,6.23 6,6.72L11,21h2v-3.28c3.28,-0.48 6,-3.3 6,-6.72h-1.7z"/>
</vector>