@@ -15,9 +15,23 @@ import androidx.compose.material.icons.Icons
1515import androidx.compose.material.icons.rounded.Brush
1616import androidx.compose.material.icons.rounded.Movie
1717import androidx.compose.material.icons.rounded.Refresh
18- import androidx.compose.material3.*
19- import androidx.compose.runtime.*
18+ import androidx.compose.material3.ExperimentalMaterial3Api
19+ import androidx.compose.material3.Icon
20+ import androidx.compose.material3.IconButton
21+ import androidx.compose.material3.ListItem
22+ import androidx.compose.material3.MaterialTheme
23+ import androidx.compose.material3.RadioButton
24+ import androidx.compose.material3.Scaffold
25+ import androidx.compose.material3.Surface
26+ import androidx.compose.material3.Text
27+ import androidx.compose.material3.TopAppBar
28+ import androidx.compose.runtime.Composable
29+ import androidx.compose.runtime.LaunchedEffect
30+ import androidx.compose.runtime.getValue
31+ import androidx.compose.runtime.mutableStateOf
32+ import androidx.compose.runtime.remember
2033import androidx.compose.runtime.saveable.rememberSaveable
34+ import androidx.compose.runtime.setValue
2135import androidx.compose.ui.Modifier
2236import androidx.compose.ui.platform.LocalContext
2337import androidx.compose.ui.tooling.preview.Preview
@@ -85,11 +99,10 @@ fun MainContent() {
8599 var themeMenuOpen by remember { mutableStateOf(false ) }
86100 var theme by rememberSaveable { mutableStateOf(PlayerTheme .Default ) }
87101
88- Surface (
102+ Scaffold (
89103 modifier = Modifier .fillMaxSize(),
90- color = MaterialTheme .colorScheme.background
91- ) {
92- Scaffold (topBar = {
104+ containerColor = MaterialTheme .colorScheme.background,
105+ topBar = {
93106 TopAppBar (
94107 title = {
95108 Text (text = " Demo" )
@@ -109,51 +122,51 @@ fun MainContent() {
109122 }
110123 }
111124 )
112- }) { padding ->
113- val playerModifier = Modifier
114- .padding(padding)
115- .fillMaxSize(1f )
116- when (theme) {
117- PlayerTheme .Default -> {
118- DefaultUI (
125+ }
126+ ) { padding ->
127+ val playerModifier = Modifier
128+ .padding(padding)
129+ .fillMaxSize(1f )
130+ when (theme) {
131+ PlayerTheme .Default -> {
132+ DefaultUI (
133+ modifier = playerModifier,
134+ player = player,
135+ title = stream.title
136+ )
137+ }
138+
139+ PlayerTheme .Nitflex -> {
140+ NitflexTheme (useDarkTheme = true ) {
141+ NitflexUI (
119142 modifier = playerModifier,
120143 player = player,
121144 title = stream.title
122145 )
123146 }
124-
125- PlayerTheme .Nitflex -> {
126- NitflexTheme (useDarkTheme = true ) {
127- NitflexUI (
128- modifier = playerModifier,
129- player = player,
130- title = stream.title
131- )
132- }
133- }
134147 }
148+ }
135149
136- if (streamMenuOpen) {
137- SelectStreamDialog (
138- streams = streams,
139- currentStream = stream,
140- onSelectStream = {
141- stream = it
142- streamMenuOpen = false
143- },
144- onDismissRequest = { streamMenuOpen = false }
145- )
146- }
147- if (themeMenuOpen) {
148- SelectThemeDialog (
149- currentTheme = theme,
150- onSelectTheme = {
151- theme = it
152- themeMenuOpen = false
153- },
154- onDismissRequest = { themeMenuOpen = false }
155- )
156- }
150+ if (streamMenuOpen) {
151+ SelectStreamDialog (
152+ streams = streams,
153+ currentStream = stream,
154+ onSelectStream = {
155+ stream = it
156+ streamMenuOpen = false
157+ },
158+ onDismissRequest = { streamMenuOpen = false }
159+ )
160+ }
161+ if (themeMenuOpen) {
162+ SelectThemeDialog (
163+ currentTheme = theme,
164+ onSelectTheme = {
165+ theme = it
166+ themeMenuOpen = false
167+ },
168+ onDismissRequest = { themeMenuOpen = false }
169+ )
157170 }
158171 }
159172}
@@ -218,7 +231,7 @@ fun SelectThemeDialog(
218231 style = MaterialTheme .typography.headlineSmall
219232 )
220233 LazyColumn {
221- items(items = PlayerTheme .values() ) {
234+ items(items = PlayerTheme .entries ) {
222235 ListItem (
223236 headlineContent = { Text (text = it.title) },
224237 leadingContent = {
0 commit comments