@@ -73,10 +73,6 @@ class MainViewModel(
7373 val liveAnalysisState: StateFlow <LiveAnalysisState > = _liveAnalysisState .asStateFlow()
7474 private var lastSuccessfulLiveAnalysisState: LiveAnalysisState ? = null
7575
76- private val _navigationState = MutableStateFlow (NavigationState .initial())
77- val currentScreen: StateFlow <Screen > = _navigationState .map { it.current }
78- .stateIn(viewModelScope, SharingStarted .Eagerly , _navigationState .value.current)
79-
8076 private val _pageIds = MutableStateFlow (imageRepository.imageIds())
8177 val documentUiModel: StateFlow <DocumentUiModel > =
8278 _pageIds .map { ids ->
@@ -87,9 +83,18 @@ class MainViewModel(
8783 }.stateIn(
8884 scope = viewModelScope,
8985 started = SharingStarted .Eagerly ,
90- initialValue = DocumentUiModel (emptyList() , ::getBitmap)
86+ initialValue = DocumentUiModel (_pageIds .value , ::getBitmap)
9187 )
9288
89+ private val _navigationState = MutableStateFlow (value =
90+ if (_pageIds .value.isEmpty())
91+ NavigationState .initial()
92+ else
93+ NavigationState .initial().navigateTo(Screen .Main .Document ())
94+ )
95+ val currentScreen: StateFlow <Screen > = _navigationState .map { it.current }
96+ .stateIn(viewModelScope, SharingStarted .Eagerly , _navigationState .value.current)
97+
9398 private val _captureState = MutableStateFlow <CaptureState >(CaptureState .Idle )
9499 val captureState: StateFlow <CaptureState > = _captureState
95100
0 commit comments