Skip to content

Commit 04d9f09

Browse files
authored
Merge pull request #205 from timusus/emby-compose
add emby compose dialog
2 parents 791fd28 + f868991 commit 04d9f09

File tree

45 files changed

+663
-40
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+663
-40
lines changed

android/app/src/main/java/com/simplecityapps/shuttle/ui/screens/onboarding/mediaprovider/MediaProviderSelectionScreen.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ import com.simplecityapps.shuttle.model.MediaProviderType
5454
import com.simplecityapps.shuttle.ui.screens.onboarding.OnboardingChild
5555
import com.simplecityapps.shuttle.ui.screens.onboarding.OnboardingPage
5656
import com.simplecityapps.shuttle.ui.screens.onboarding.OnboardingParent
57+
import com.simplecityapps.shuttle.ui.screens.onboarding.mediaprovider.emby.EmbyConfigurationDialog
5758
import com.simplecityapps.shuttle.ui.screens.onboarding.mediaprovider.plex.PlexConfigurationDialog
5859
import com.simplecityapps.shuttle.ui.snapshot.Snapshot
5960
import com.simplecityapps.shuttle.ui.theme.AppTheme
@@ -94,7 +95,7 @@ class MediaProviderSelectionScreenFragment :
9495
@Composable
9596
private fun MediaProviderSelectionScreen(
9697
modifier: Modifier = Modifier,
97-
viewModel: MediaProviderViewModel = hiltViewModel()
98+
viewModel: MediaProviderSelectionViewModel = hiltViewModel()
9899
) {
99100
val mediaProviders by viewModel.mediaProviders.collectAsStateWithLifecycle()
100101
val unAddedMediaProviders by viewModel.unAddedMediaProviders.collectAsStateWithLifecycle()
@@ -106,7 +107,7 @@ private fun MediaProviderSelectionScreen(
106107
when (configureMediaProvider!!) {
107108
MediaProviderType.Shuttle -> TODO()
108109
MediaProviderType.MediaStore -> TODO()
109-
MediaProviderType.Emby -> TODO()
110+
MediaProviderType.Emby -> EmbyConfigurationDialog(onDismissRequest = viewModel::onConsumeConfigureMediaProvider)
110111
MediaProviderType.Jellyfin -> TODO()
111112
MediaProviderType.Plex -> PlexConfigurationDialog(onDismissRequest = viewModel::onConsumeConfigureMediaProvider)
112113
}

android/app/src/main/java/com/simplecityapps/shuttle/ui/screens/onboarding/mediaprovider/MediaProviderViewModel.kt renamed to android/app/src/main/java/com/simplecityapps/shuttle/ui/screens/onboarding/mediaprovider/MediaProviderSelectionViewModel.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import kotlinx.coroutines.flow.stateIn
2121
import kotlinx.coroutines.flow.update
2222

2323
@HiltViewModel
24-
class MediaProviderViewModel @Inject constructor(
24+
class MediaProviderSelectionViewModel @Inject constructor(
2525
playbackPreferenceManager: PlaybackPreferenceManager,
2626
private val mediaImporter: MediaImporter,
2727
private val plexMediaProvider: PlexMediaProvider,
@@ -87,11 +87,11 @@ class MediaProviderViewModel @Inject constructor(
8787

8888
fun onConfigureProviderClick(provider: MediaProviderType) {
8989
_configureMediaProvider.update { provider }
90-
_showProviderOverflowMenu.update { null }
9190
}
9291

9392
fun onConsumeConfigureMediaProvider() {
9493
_configureMediaProvider.update { null }
94+
_showProviderOverflowMenu.update { null }
9595
}
9696

9797
private fun MediaProviderType.toMediaProvider(): MediaProvider = when (this) {
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package com.simplecityapps.shuttle.ui.screens.onboarding.mediaprovider.emby
2+
3+
sealed interface EmbyAuthenticationState {
4+
data object Loading : EmbyAuthenticationState
5+
data object Success : EmbyAuthenticationState
6+
data class Error(val error: Throwable?) : EmbyAuthenticationState
7+
}

0 commit comments

Comments
 (0)