Skip to content

Commit 5eff5b9

Browse files
committed
android: update eq sliders style
1 parent b5103a2 commit 5eff5b9

File tree

1 file changed

+83
-2
lines changed

1 file changed

+83
-2
lines changed

android/app/src/main/java/me/kavishdevar/librepods/screens/AccessibilitySettingsScreen.kt

Lines changed: 83 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,9 @@ import androidx.compose.foundation.layout.fillMaxSize
3636
import androidx.compose.foundation.layout.fillMaxWidth
3737
import androidx.compose.foundation.layout.height
3838
import androidx.compose.foundation.layout.padding
39+
import androidx.compose.foundation.layout.size
3940
import androidx.compose.foundation.layout.width
41+
import androidx.compose.foundation.shape.CircleShape
4042
import androidx.compose.foundation.rememberScrollState
4143
import androidx.compose.foundation.shape.RoundedCornerShape
4244
import androidx.compose.foundation.verticalScroll
@@ -49,6 +51,7 @@ import androidx.compose.material3.ExperimentalMaterial3Api
4951
import androidx.compose.material3.HorizontalDivider
5052
import androidx.compose.material3.Scaffold
5153
import androidx.compose.material3.Slider
54+
import androidx.compose.material3.SliderDefaults
5255
import androidx.compose.material3.SnackbarHost
5356
import androidx.compose.material3.SnackbarHostState
5457
import androidx.compose.material3.Text
@@ -67,6 +70,7 @@ import androidx.compose.ui.Modifier
6770
import androidx.compose.ui.draw.drawBehind
6871
import androidx.compose.ui.draw.rotate
6972
import androidx.compose.ui.draw.scale
73+
import androidx.compose.ui.draw.shadow
7074
import androidx.compose.ui.geometry.Offset
7175
import androidx.compose.ui.graphics.Color
7276
import androidx.compose.ui.input.pointer.pointerInput
@@ -121,6 +125,11 @@ fun AccessibilitySettingsScreen() {
121125
// get the AACP manager if available (used for EQ read/write)
122126
val aacpManager = remember { ServiceManager.getService()?.aacpManager }
123127

128+
val trackColor = if (isDarkTheme) Color(0xFFB3B3B3) else Color(0xFF929491)
129+
val activeTrackColor = if (isDarkTheme) Color(0xFF007AFF) else Color(0xFF3C6DF5)
130+
val thumbColor = if (isDarkTheme) Color(0xFFFFFFFF) else Color(0xFFFFFFFF)
131+
val labelTextColor = if (isDarkTheme) Color.White else Color.Black
132+
124133
DisposableEffect(attManager) {
125134
onDispose {
126135
Log.d(TAG, "Disconnecting from ATT...")
@@ -621,7 +630,7 @@ fun AccessibilitySettingsScreen() {
621630
verticalAlignment = Alignment.CenterVertically,
622631
modifier = Modifier
623632
.fillMaxWidth()
624-
.height(32.dp)
633+
.height(38.dp)
625634
) {
626635
Text(
627636
text = String.format("%.2f", eqValue.floatValue),
@@ -641,6 +650,42 @@ fun AccessibilitySettingsScreen() {
641650
valueRange = 0f..100f,
642651
modifier = Modifier
643652
.fillMaxWidth(0.9f)
653+
.height(36.dp),
654+
colors = SliderDefaults.colors(
655+
thumbColor = thumbColor,
656+
activeTrackColor = activeTrackColor,
657+
inactiveTrackColor = trackColor
658+
),
659+
thumb = {
660+
Box(
661+
modifier = Modifier
662+
.size(24.dp)
663+
.shadow(4.dp, CircleShape)
664+
.background(thumbColor, CircleShape)
665+
)
666+
},
667+
track = {
668+
Box (
669+
modifier = Modifier
670+
.fillMaxWidth()
671+
.height(12.dp),
672+
contentAlignment = Alignment.CenterStart
673+
)
674+
{
675+
Box(
676+
modifier = Modifier
677+
.fillMaxWidth()
678+
.height(4.dp)
679+
.background(trackColor, RoundedCornerShape(4.dp))
680+
)
681+
Box(
682+
modifier = Modifier
683+
.fillMaxWidth(eqValue.floatValue / 100f)
684+
.height(4.dp)
685+
.background(activeTrackColor, RoundedCornerShape(4.dp))
686+
)
687+
}
688+
}
644689
)
645690

646691
Text(
@@ -782,7 +827,7 @@ fun AccessibilitySettingsScreen() {
782827
verticalAlignment = Alignment.CenterVertically,
783828
modifier = Modifier
784829
.fillMaxWidth()
785-
.height(32.dp)
830+
.height(38.dp)
786831
) {
787832
Text(
788833
text = String.format("%.2f", eqPhoneValue.floatValue),
@@ -802,6 +847,42 @@ fun AccessibilitySettingsScreen() {
802847
valueRange = 0f..100f,
803848
modifier = Modifier
804849
.fillMaxWidth(0.9f)
850+
.height(36.dp),
851+
colors = SliderDefaults.colors(
852+
thumbColor = thumbColor,
853+
activeTrackColor = activeTrackColor,
854+
inactiveTrackColor = trackColor
855+
),
856+
thumb = {
857+
Box(
858+
modifier = Modifier
859+
.size(24.dp)
860+
.shadow(4.dp, CircleShape)
861+
.background(thumbColor, CircleShape)
862+
)
863+
},
864+
track = {
865+
Box (
866+
modifier = Modifier
867+
.fillMaxWidth()
868+
.height(12.dp),
869+
contentAlignment = Alignment.CenterStart
870+
)
871+
{
872+
Box(
873+
modifier = Modifier
874+
.fillMaxWidth()
875+
.height(4.dp)
876+
.background(trackColor, RoundedCornerShape(4.dp))
877+
)
878+
Box(
879+
modifier = Modifier
880+
.fillMaxWidth(eqPhoneValue.floatValue / 100f)
881+
.height(4.dp)
882+
.background(activeTrackColor, RoundedCornerShape(4.dp))
883+
)
884+
}
885+
}
805886
)
806887

807888
Text(

0 commit comments

Comments
 (0)