Skip to content

Commit eca3435

Browse files
committed
Skip conference selection if there's only one
1 parent d479883 commit eca3435

File tree

1 file changed

+24
-17
lines changed

1 file changed

+24
-17
lines changed

shared-ui/src/commonMain/kotlin/co.touchlab.droidcon/ui/MainComposeView.kt

Lines changed: 24 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -79,23 +79,30 @@ private fun MainAppBody(waitForLoadedContextModel: WaitForLoadedContextModel, se
7979
if (isFirstRun) {
8080
val conferences = viewModel.allConferences.value
8181

82-
FirstRunConferenceSelector(
83-
conferences = conferences,
84-
selectedConference = selectedConference,
85-
onConferenceSelected = { conference ->
86-
viewModel.selectConference(conference.id)
87-
// Navigate to the schedule tab after selection
88-
viewModel.selectedTab = ApplicationViewModel.Tab.Schedule
89-
},
90-
onDismiss = {
91-
// Use the first conference as default if user dismisses
92-
if (conferences.isNotEmpty()) {
93-
viewModel.selectConference(conferences.first().id)
94-
}
95-
// Navigate to the schedule tab
96-
viewModel.selectedTab = ApplicationViewModel.Tab.Schedule
97-
},
98-
)
82+
val onConferenceSelected: (Conference) -> Unit = { conference ->
83+
viewModel.selectConference(conference.id)
84+
// Navigate to the schedule tab after selection
85+
viewModel.selectedTab = ApplicationViewModel.Tab.Schedule
86+
}
87+
88+
if (conferences.size == 1) {
89+
onConferenceSelected(conferences.get(0))
90+
} else if (conferences.size > 1) {
91+
92+
FirstRunConferenceSelector(
93+
conferences = conferences,
94+
selectedConference = selectedConference,
95+
onConferenceSelected = onConferenceSelected,
96+
onDismiss = {
97+
// Use the first conference as default if user dismisses
98+
if (conferences.isNotEmpty()) {
99+
viewModel.selectConference(conferences.first().id)
100+
}
101+
// Navigate to the schedule tab
102+
viewModel.selectedTab = ApplicationViewModel.Tab.Schedule
103+
},
104+
)
105+
}
99106
}
100107

101108
BottomNavigationView(viewModel = viewModel, currentConference = selectedConference, modifier = modifier)

0 commit comments

Comments
 (0)