From b29451ce9eff1d5391baf420e94832958ddbfa41 Mon Sep 17 00:00:00 2001 From: Kavish Devar Date: Tue, 8 Oct 2024 14:39:10 +0530 Subject: [PATCH] try to design ios-like settings activity --- .../kotlin-compiler-269019079117506340.salive | 0 .../java/me/kavishdevar/aln/MainActivity.kt | 630 ++++++++++++++++-- .../res/drawable/conversational_awareness.xml | 23 + android/app/src/main/res/drawable/pro_2.png | Bin 0 -> 83792 bytes 4 files changed, 584 insertions(+), 69 deletions(-) create mode 100644 android/.kotlin/sessions/kotlin-compiler-269019079117506340.salive create mode 100644 android/app/src/main/res/drawable/conversational_awareness.xml create mode 100644 android/app/src/main/res/drawable/pro_2.png diff --git a/android/.kotlin/sessions/kotlin-compiler-269019079117506340.salive b/android/.kotlin/sessions/kotlin-compiler-269019079117506340.salive new file mode 100644 index 0000000..e69de29 diff --git a/android/app/src/main/java/me/kavishdevar/aln/MainActivity.kt b/android/app/src/main/java/me/kavishdevar/aln/MainActivity.kt index d2a500e..2619e10 100644 --- a/android/app/src/main/java/me/kavishdevar/aln/MainActivity.kt +++ b/android/app/src/main/java/me/kavishdevar/aln/MainActivity.kt @@ -1,35 +1,48 @@ package me.kavishdevar.aln import android.annotation.SuppressLint +import android.bluetooth.BluetoothDevice +import android.bluetooth.BluetoothManager +import android.content.res.Configuration import android.os.Build import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.activity.enableEdgeToEdge import androidx.annotation.RequiresApi +import androidx.compose.animation.core.animateDpAsState +import androidx.compose.foundation.Image +import androidx.compose.foundation.background +import androidx.compose.foundation.border +import androidx.compose.foundation.clickable +import androidx.compose.foundation.gestures.detectTapGestures +import androidx.compose.foundation.interaction.MutableInteractionSource +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.fillMaxHeight import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.offset import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.width +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.foundation.text.BasicTextField -import androidx.compose.material3.Button -import androidx.compose.material3.ButtonDefaults -import androidx.compose.material3.ExperimentalMaterial3Api -import androidx.compose.material3.HorizontalDivider +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.Person +import androidx.compose.material3.Icon import androidx.compose.material3.MaterialTheme -import androidx.compose.material3.RadioButton import androidx.compose.material3.Scaffold -import androidx.compose.material3.SegmentedButton -import androidx.compose.material3.SegmentedButtonDefaults -import androidx.compose.material3.ShapeDefaults -import androidx.compose.material3.Shapes -import androidx.compose.material3.SingleChoiceSegmentedButtonRow -import androidx.compose.material3.Switch +import androidx.compose.material3.Slider +import androidx.compose.material3.SliderDefaults import androidx.compose.material3.Text +import androidx.compose.material3.VerticalDivider import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf @@ -37,10 +50,22 @@ import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.alpha +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.ImageBitmap +import androidx.compose.ui.graphics.SolidColor +import androidx.compose.ui.graphics.luminance +import androidx.compose.ui.graphics.vector.ImageVector +import androidx.compose.ui.input.pointer.pointerInput +import androidx.compose.ui.res.imageResource +import androidx.compose.ui.text.TextStyle +import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.input.TextFieldValue import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp import me.kavishdevar.aln.ui.theme.ALNTheme class MainActivity : ComponentActivity() { @@ -49,17 +74,15 @@ class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) enableEdgeToEdge() - -// val bluetoothManager: BluetoothManager = getSystemService(BluetoothManager::class.java) -// val bluetoothAdapter = bluetoothManager.adapter -// val device = bluetoothAdapter.getRemoteDevice("28:2d:7f:c2:05:5b") -// val deviceName = device.name -// val deviceAddress = device.address + val address = mutableStateOf("28:2D:7F:C2:05:5B") + val bluetoothManager: BluetoothManager = getSystemService(BluetoothManager::class.java) + val bluetoothAdapter = bluetoothManager.adapter + val device = bluetoothAdapter.getRemoteDevice(address.value) setContent { ALNTheme { - Scaffold(modifier = Modifier.fillMaxSize()) { innerPadding -> - AirPodsSettingsScreen(innerPadding) + Scaffold { innerPadding -> + AirPodsSettingsScreen(innerPadding, device) } } } @@ -67,81 +90,550 @@ class MainActivity : ComponentActivity() { } @Composable -fun AirPodsSettingsScreen(paddingValues: PaddingValues) { - var ancMode by remember { mutableStateOf("Off") } - var deviceName by remember { mutableStateOf(TextFieldValue("Kavish's AirPods Pro")) } - var conversationalAwarenessEnabled by remember { mutableStateOf(false) } - var earDetectionEnabled by remember { mutableStateOf(true) } +fun StyledSwitch( + checked: Boolean, + onCheckedChange: (Boolean) -> Unit +) { + val isDarkTheme = MaterialTheme.colorScheme.surface.luminance() < 0.5 + + val thumbColor = Color.White + val trackColor = if (checked) Color(0xFF34C759) else if (isDarkTheme) Color(0xFF262629) else Color(0xFFD1D1D6) + + // Animate the horizontal offset of the thumb + val thumbOffsetX by animateDpAsState(targetValue = if (checked) 20.dp else 0.dp, label = "Test") + + Box( + modifier = Modifier + .width(51.dp) + .height(31.dp) + .clip(RoundedCornerShape(15.dp)) + .background(trackColor) // Dynamic track background + .padding(horizontal = 3.dp), + contentAlignment = Alignment.CenterStart + ) { + Box( + modifier = Modifier + .offset(x = thumbOffsetX) // Animate the offset for smooth transition + .size(27.dp) + .clip(CircleShape) + .background(thumbColor) // Dynamic thumb color + .clickable { onCheckedChange(!checked) } // Make the switch clickable + ) + } +} + +@Composable +fun StyledTextField( + name: String, + value: String, + onValueChange: (String) -> Unit +) { + val isDarkTheme = MaterialTheme.colorScheme.surface.luminance() < 0.5 + + val backgroundColor = if (isDarkTheme) Color(0xFF0E0E0E) else Color(0xFFFFFFFF) + val textColor = if (isDarkTheme) Color.White else Color.Black + val cursorColor = if (isDarkTheme) Color.White else Color.Black + + Row( + verticalAlignment = Alignment.CenterVertically, + modifier = Modifier + .padding(vertical = 8.dp) + .fillMaxWidth() + .background( + backgroundColor, + RoundedCornerShape(10.dp) + ) // Dynamic background based on theme + .padding(horizontal = 16.dp, vertical = 12.dp) + ) { + Text( + text = name, + style = TextStyle( + fontSize = 16.sp, + color = textColor // Text color based on theme + ) + ) + + BasicTextField( + value = value, + onValueChange = onValueChange, + textStyle = TextStyle( + color = textColor, // Dynamic text color + fontSize = 16.sp, + ), + cursorBrush = SolidColor(cursorColor), // Dynamic cursor color + decorationBox = { innerTextField -> + Row( + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.End + ) { + innerTextField() + } + }, + modifier = Modifier + .fillMaxWidth() // Ensures text field takes remaining available space + .padding(start = 8.dp) // Padding to adjust spacing between text field and icon + ) + } +} + +@Composable +fun BatteryIndicator(batteryPercentage: Int) { + val batteryOutlineColor = Color(0xFFBFBFBF) // Light gray outline + val batteryFillColor = if (batteryPercentage > 30) Color(0xFF30D158) else Color(0xFFFC3C3C) + val batteryTextColor = MaterialTheme.colorScheme.onSurface + + // Battery indicator dimensions + val batteryWidth = 30.dp + val batteryHeight = 15.dp + val batteryCornerRadius = 4.dp + val tipWidth = 3.dp + val tipHeight = batteryHeight * 0.3f + + Column(horizontalAlignment = Alignment.CenterHorizontally) { + // Row for battery icon and tip + Row( + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.spacedBy(0.dp), + modifier = Modifier.padding(bottom = 4.dp) // Padding between icon and percentage text + ) { + // Battery Icon + Box( + modifier = Modifier + .width(batteryWidth) + .height(batteryHeight) + .border(1.dp, batteryOutlineColor, RoundedCornerShape(batteryCornerRadius)) + ) { + // Battery Fill + Box( + modifier = Modifier + .fillMaxHeight() + .padding(2.dp) + .width(batteryWidth * (batteryPercentage / 100f)) + .background(batteryFillColor, RoundedCornerShape(2.dp)) + ) + } + + // Battery Tip (Protrusion) + Box( + modifier = Modifier + .width(tipWidth) + .height(tipHeight) + .padding(start = 1.dp) + .background( + batteryOutlineColor, + RoundedCornerShape( + topStart = 0.dp, + topEnd = 5.dp, + bottomStart = 5.dp, + bottomEnd = 4.dp + ) + ) + ) + } + + // Battery Percentage Text + Text( + text = "$batteryPercentage%", + color = batteryTextColor, + style = TextStyle(fontSize = 16.sp, fontWeight = FontWeight.Bold) + ) + } +} + +@SuppressLint("MissingPermission") +@Composable +fun AirPodsSettingsScreen(paddingValues: PaddingValues, device: BluetoothDevice?) { + var deviceName by remember { mutableStateOf(TextFieldValue(device?.name ?: "Kavish's AirPods Pro")) } Column( modifier = Modifier .fillMaxSize() .padding(paddingValues) + .padding(vertical = 24.dp, horizontal = 12.dp) ) { - // Device Name Section - Text(text = "Name", style = MaterialTheme.typography.titleMedium) - BasicTextField( - value = deviceName, - onValueChange = { deviceName = it }, - modifier = Modifier - .fillMaxWidth() - .padding(vertical = 8.dp) + Row { + Column ( + horizontalAlignment = Alignment.CenterHorizontally + ){ +// using this temporarily until i can find an image of only the buds + Image( + bitmap = ImageBitmap.imageResource(R.drawable.pro_2), + contentDescription = null, + modifier = Modifier.fillMaxWidth(0.5f) + ) + BatteryIndicator(batteryPercentage = 10) + } + Column ( + horizontalAlignment = Alignment.CenterHorizontally + ){ + Image( + bitmap = ImageBitmap.imageResource(R.drawable.pro_2), + contentDescription = null, + modifier = Modifier.fillMaxWidth() + ) + BatteryIndicator(batteryPercentage = 100) + } + } + StyledTextField( + name = "Name", + value = deviceName.text, + onValueChange = { deviceName = TextFieldValue(it) } ) - HorizontalDivider(thickness = 2.dp, modifier = Modifier.padding(vertical = 8.dp), color = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.12f)) + Spacer(modifier = Modifier.height(16.dp)) + NoiseControlSettings() + Spacer(modifier = Modifier.height(16.dp)) + AudioSettings() + } +} - // ANC Mode Section - Text(text = "Noise Control", style = MaterialTheme.typography.titleMedium) - ANCOptions(ancMode) { selectedMode -> ancMode = selectedMode } +@Composable +fun NoiseControlSlider() { + val sliderValue = remember { mutableStateOf(0f) } + val isDarkTheme = MaterialTheme.colorScheme.surface.luminance() < 0.5 - HorizontalDivider(thickness = 2.dp, modifier = Modifier.padding(vertical = 8.dp), color = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.12f)) + val trackColor = if (isDarkTheme) Color(0xFFB3B3B3) else Color(0xFFD9D9D9) + val activeTrackColor = if (isDarkTheme) Color(0xFFFFFFFF) else Color(0xFF007AFF) + val thumbColor = if (isDarkTheme) Color(0xFFFFFFFF) else Color(0xFF007AFF) + val labelTextColor = if (isDarkTheme) Color.White else Color.Black - // Conversational Awareness Toggle - Row(modifier = Modifier.fillMaxWidth(), verticalAlignment = Alignment.CenterVertically) { - Text(text = "Conversational Awareness", modifier = Modifier.weight(1f)) - Switch( - checked = conversationalAwarenessEnabled, - onCheckedChange = { conversationalAwarenessEnabled = it } + Column( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 8.dp), + horizontalAlignment = Alignment.CenterHorizontally + ) { + // Slider + Slider( + value = sliderValue.value, + onValueChange = { sliderValue.value = it }, + valueRange = 0f..100f, + steps = 99, + modifier = Modifier + .fillMaxWidth(), + colors = SliderDefaults.colors( + thumbColor = thumbColor, + activeTrackColor = activeTrackColor, + inactiveTrackColor = trackColor ) - } + ) - HorizontalDivider(thickness = 2.dp, modifier = Modifier.padding(vertical = 8.dp), color = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.12f)) - - // Ear Detection Toggle - Row(modifier = Modifier.fillMaxWidth(), verticalAlignment = Alignment.CenterVertically) { - Text(text = "Automatic Ear Detection", modifier = Modifier.weight(1f)) - Switch( - checked = earDetectionEnabled, - onCheckedChange = { earDetectionEnabled = it } + // Labels + Row( + modifier = Modifier.fillMaxWidth(), + horizontalArrangement = Arrangement.SpaceBetween + ) { + Text( + text = "Less Noise", + style = TextStyle( + fontSize = 14.sp, + fontWeight = FontWeight.Light, + color = labelTextColor + ), + modifier = Modifier.padding(start = 4.dp) + ) + Text( + text = "More Noise", + style = TextStyle( + fontSize = 14.sp, + fontWeight = FontWeight.Light, + color = labelTextColor + ), + modifier = Modifier.padding(end = 4.dp) ) } } } -@OptIn(ExperimentalMaterial3Api::class) @Composable -fun ANCOptions(selectedMode: String, onModeChange: (String) -> Unit) { - val modes = listOf("Off", "Transparency", "Noise Cancellation") +fun AudioSettings() { + val isDarkTheme = MaterialTheme.colorScheme.surface.luminance() < 0.5 + val textColor = if (isDarkTheme) Color.White else Color.Black + var conversationalAwarenessEnabled by remember { mutableStateOf(true) } - SingleChoiceSegmentedButtonRow { - modes.forEach { mode -> - SegmentedButton( - selected = (mode == selectedMode), - onClick = { onModeChange(mode) }, - modifier = Modifier.weight(1f), - shape = ShapeDefaults.ExtraSmall - ) { - Text( - text = mode, - textAlign = TextAlign.Center + Text( + text = "AUDIO", + style = TextStyle( + fontSize = 14.sp, + fontWeight = FontWeight.Light, + color = textColor.copy(alpha = 0.6f) + ), + modifier = Modifier.padding(8.dp, bottom = 2.dp) + ) + val backgroundColor = if (isDarkTheme) Color(0xFF0E0E0E) else Color(0xFFFFFFFF) + val isPressed = remember { mutableStateOf(false) } + Column ( + modifier = Modifier + .fillMaxWidth() + .background(backgroundColor, RoundedCornerShape(12.dp)) + .padding(top = 2.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .background(shape = RoundedCornerShape(12.dp), color = if (isPressed.value) Color(0xFFE0E0E0) else Color.Transparent) + .padding(horizontal = 12.dp, vertical = 12.dp) + .pointerInput(Unit) { // Detect press state for iOS-like effect + detectTapGestures( + onPress = { + isPressed.value = true + tryAwaitRelease() // Wait until release + isPressed.value = false + } + ) + } + .clickable( + indication = null, // Disable ripple effect + interactionSource = remember { MutableInteractionSource() } // Required for clickable + ) { + conversationalAwarenessEnabled = !conversationalAwarenessEnabled + }, + verticalAlignment = Alignment.CenterVertically + ) { + Text(text = "Conversational Awareness", modifier = Modifier.weight(1f), fontSize = 16.sp) + StyledSwitch( + checked = conversationalAwarenessEnabled, + onCheckedChange = { conversationalAwarenessEnabled = it }, + ) + } + Column ( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 8.dp, vertical = 10.dp) + ) { + Text( + text = "Adaptive Audio", + modifier = Modifier + .padding(end = 8.dp, bottom = 2.dp, start = 2.dp) + .fillMaxWidth(), + style = TextStyle( + fontSize = 14.sp, + fontWeight = FontWeight.Medium, + color = textColor ) + ) + Text( + text = "Adaptive audio dynamically responds to your environment and cancels or allows external noise. You can customize Adaptive Audio to allow more or less noise", + modifier = Modifier + .padding(8.dp, top = 2.dp) + .fillMaxWidth(), + style = TextStyle( + fontSize = 12.sp, + color = textColor.copy(alpha = 0.6f) + ) + ) + NoiseControlSlider() + } + } +} + +@Composable +fun NoiseControlSettings() { + val isDarkTheme = MaterialTheme.colorScheme.surface.luminance() < 0.5 + + val backgroundColor = if (isDarkTheme) Color(0xFF1C1C1E) else Color(0xFFF2F2F7) + val textColor = if (isDarkTheme) Color.White else Color.Black + val textColorSelected = if (isDarkTheme) Color.White else Color.Black + val selectedBackground = if (isDarkTheme) Color(0xFF090909) else Color(0xFFFFFFFF) + + val noiseControlMode = remember { mutableStateOf(NoiseControlMode.OFF) } + +// val paddingAnim by animateDpAsState( +// targetValue = when (noiseControlMode.value) { +// NoiseControlMode.OFF -> 0.dp +// NoiseControlMode.TRANSPARENCY -> 150.dp +// NoiseControlMode.ADAPTIVE -> 250.dp +// NoiseControlMode.NOISE_CANCELLATION -> 350.dp +// }, label = "" +// ) + + val d1a = remember { mutableStateOf(0f) } + val d2a = remember { mutableStateOf(0f) } + val d3a = remember { mutableStateOf(0f) } + + fun onModeSelected(mode: NoiseControlMode) { + noiseControlMode.value = mode + when (mode) { + NoiseControlMode.NOISE_CANCELLATION -> { + d1a.value = 1f + d2a.value = 1f + d3a.value = 0f + } + NoiseControlMode.OFF -> { + d1a.value = 0f + d2a.value = 1f + d3a.value = 1f + } + NoiseControlMode.ADAPTIVE -> { + d1a.value = 1f + d2a.value = 0f + d3a.value = 0f + } + NoiseControlMode.TRANSPARENCY -> { + d1a.value = 0f + d2a.value = 0f + d3a.value = 1f } } } + + Text( + text = "NOISE CONTROL", + style = TextStyle( + fontSize = 14.sp, + fontWeight = FontWeight.Light, + color = textColor.copy(alpha = 0.6f) + ), + modifier = Modifier.padding(8.dp, bottom = 2.dp) + ) + + Column( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 16.dp) + ) { + Box( + modifier = Modifier + .fillMaxWidth() + .height(65.dp) + .padding(8.dp) + ) { +// Box( +// modifier = Modifier +// .fillMaxHeight() +// .width(80.dp) +// .offset(x = paddingAnim) +// .background(selectedBackground, RoundedCornerShape(8.dp)) +// ) + Row( + modifier = Modifier + .fillMaxWidth() + .background(backgroundColor, RoundedCornerShape(8.dp)) + ) { + NoiseControlButton( + icon = Icons.Default.Person, // Replace with your icon + onClick = { onModeSelected(NoiseControlMode.OFF) }, + textColor = if (noiseControlMode.value == NoiseControlMode.OFF) textColorSelected else textColor, + backgroundColor = if (noiseControlMode.value == NoiseControlMode.OFF) selectedBackground else Color.Transparent, + modifier = Modifier.weight(1f) + ) + VerticalDivider( + thickness = 1.dp, + modifier = Modifier + .padding(vertical = 10.dp) + .alpha(d1a.value), + color = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.12f), + ) + NoiseControlButton( + icon = Icons.Default.Person, // Replace with your icon + onClick = { onModeSelected(NoiseControlMode.TRANSPARENCY) }, + textColor = if (noiseControlMode.value == NoiseControlMode.TRANSPARENCY) textColorSelected else textColor, + backgroundColor = if (noiseControlMode.value == NoiseControlMode.TRANSPARENCY) selectedBackground else Color.Transparent, + modifier = Modifier.weight(1f) + ) + VerticalDivider( + thickness = 1.dp, + modifier = Modifier + .padding(vertical = 10.dp) + .alpha(d2a.value), + color = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.12f), + ) + NoiseControlButton( + icon = Icons.Default.Person, // Replace with your icon + onClick = { onModeSelected(NoiseControlMode.ADAPTIVE) }, + textColor = if (noiseControlMode.value == NoiseControlMode.ADAPTIVE) textColorSelected else textColor, + backgroundColor = if (noiseControlMode.value == NoiseControlMode.ADAPTIVE) selectedBackground else Color.Transparent, + modifier = Modifier.weight(1f) + ) + VerticalDivider( + thickness = 1.dp, + modifier = Modifier + .padding(vertical = 10.dp) + .alpha(d3a.value), + color = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.12f), + ) + NoiseControlButton( + icon = Icons.Default.Person, // Replace with your icon + onClick = { onModeSelected(NoiseControlMode.NOISE_CANCELLATION) }, + textColor = if (noiseControlMode.value == NoiseControlMode.NOISE_CANCELLATION) textColorSelected else textColor, + backgroundColor = if (noiseControlMode.value == NoiseControlMode.NOISE_CANCELLATION) selectedBackground else Color.Transparent, + modifier = Modifier.weight(1f) + ) + } + } + Row( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 8.dp) + .padding(top = 1.dp) + ) { + Text( + text = "Off", + style = TextStyle(fontSize = 12.sp, color = textColor), + textAlign = TextAlign.Center, + fontWeight = FontWeight.Bold, + modifier = Modifier.weight(1f) + ) + Text( + text = "Transparency", + style = TextStyle(fontSize = 12.sp, color = textColor), + textAlign = TextAlign.Center, + fontWeight = FontWeight.Bold, + modifier = Modifier.weight(1f) + ) + Text( + text = "Adaptive", + style = TextStyle(fontSize = 12.sp, color = textColor), + textAlign = TextAlign.Center, + fontWeight = FontWeight.Bold, + modifier = Modifier.weight(1f) + ) + Text( + text = "Noise Cancellation", + style = TextStyle(fontSize = 12.sp, color = textColor), + textAlign = TextAlign.Center, + fontWeight = FontWeight.Bold, + modifier = Modifier.weight(1f) + ) + } + } } -@Preview(showBackground = true) +@Composable +fun NoiseControlButton( + icon: ImageVector, + onClick: () -> Unit, + textColor: Color, + backgroundColor: Color, + modifier: Modifier = Modifier +) { + Column( + modifier = modifier + .fillMaxHeight() + .padding(horizontal = 4.dp, vertical = 4.dp) + .background(color = backgroundColor, shape = RoundedCornerShape(6.dp)) + .clickable(onClick = onClick, indication = null, interactionSource = remember { MutableInteractionSource() }), + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.Center + ) { + Icon( + imageVector = icon, + contentDescription = null, + tint = textColor, + modifier = Modifier.size(32.dp) + ) + } +} + +enum class NoiseControlMode { + OFF, TRANSPARENCY, ADAPTIVE, NOISE_CANCELLATION +} + +@Preview(showBackground = true, name = "AirPods Settings", + uiMode = Configuration.UI_MODE_NIGHT_YES, showSystemUi = true, + device = "spec:width=411dp,height=891dp" +) @Composable fun PreviewAirPodsSettingsScreen() { - AirPodsSettingsScreen(PaddingValues(16.dp)) -} \ No newline at end of file + AirPodsSettingsScreen(PaddingValues(8.dp), null) +} diff --git a/android/app/src/main/res/drawable/conversational_awareness.xml b/android/app/src/main/res/drawable/conversational_awareness.xml new file mode 100644 index 0000000..86dcec6 --- /dev/null +++ b/android/app/src/main/res/drawable/conversational_awareness.xml @@ -0,0 +1,23 @@ + + + + + + diff --git a/android/app/src/main/res/drawable/pro_2.png b/android/app/src/main/res/drawable/pro_2.png new file mode 100644 index 0000000000000000000000000000000000000000..c260f21798163a99801cd6676f1f5615e1f9daaf GIT binary patch literal 83792 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 z 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�`P>gBKeWa!o9`#YYmT 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 literal 0 HcmV?d00001