UI: tracks user's first success on importing a model
This commit is contained in:
parent
c87ff9c1b3
commit
f1269f4d39
|
|
@ -96,7 +96,8 @@ fun AppContent(
|
|||
|
||||
// App core states
|
||||
val engineState by mainViewModel.engineState.collectAsState()
|
||||
val showUserOnboarding by mainViewModel.showUserOnboarding.collectAsState()
|
||||
val showModelImportTooltip by mainViewModel.showModelImportTooltip.collectAsState()
|
||||
val showChatTooltip by mainViewModel.showModelImportTooltip.collectAsState()
|
||||
|
||||
// Model state
|
||||
val modelScreenUiMode by modelsViewModel.modelScreenUiMode.collectAsState()
|
||||
|
|
@ -324,7 +325,7 @@ fun AppContent(
|
|||
toggleMenu = modelsViewModel::toggleFilterMenu
|
||||
),
|
||||
importing = BottomBarConfig.Models.Managing.ImportConfig(
|
||||
showTooltip = showUserOnboarding,
|
||||
showTooltip = showModelImportTooltip,
|
||||
isMenuVisible = showImportModelMenu,
|
||||
toggleMenu = { show -> modelsManagementViewModel.toggleImportMenu(show) },
|
||||
importFromLocal = {
|
||||
|
|
@ -481,6 +482,10 @@ fun AppContent(
|
|||
navigationActions.navigateToModelLoading()
|
||||
}
|
||||
},
|
||||
onFirstModelImportSuccess =
|
||||
if (showModelImportTooltip) {
|
||||
{ mainViewModel.waiveModelImportTooltip() }
|
||||
} else null,
|
||||
onScaffoldEvent = handleScaffoldEvent,
|
||||
modelsViewModel = modelsViewModel,
|
||||
managementViewModel = modelsManagementViewModel,
|
||||
|
|
|
|||
|
|
@ -82,6 +82,7 @@ fun ModelsManagementAndDeletingScreen(
|
|||
filteredModels: List<ModelInfo>?,
|
||||
activeFiltersCount: Int,
|
||||
isDeleting: Boolean,
|
||||
onFirstModelImportSuccess: (() -> Unit)?,
|
||||
onScaffoldEvent: (ScaffoldEvent) -> Unit,
|
||||
modelsViewModel: ModelsViewModel,
|
||||
managementViewModel: ModelsManagementViewModel,
|
||||
|
|
@ -212,7 +213,7 @@ fun ModelsManagementAndDeletingScreen(
|
|||
message = "Imported model: ${state.model.name}"
|
||||
)
|
||||
)
|
||||
|
||||
onFirstModelImportSuccess?.invoke()
|
||||
managementViewModel.resetManagementState()
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ import com.example.llama.viewmodel.PreselectedModelToRun.RamWarning
|
|||
@Composable
|
||||
fun ModelsScreen(
|
||||
onConfirmSelection: (ModelInfo, RamWarning) -> Unit,
|
||||
onFirstModelImportSuccess: (() -> Unit)?,
|
||||
onScaffoldEvent: (ScaffoldEvent) -> Unit,
|
||||
modelsViewModel: ModelsViewModel,
|
||||
managementViewModel: ModelsManagementViewModel,
|
||||
|
|
@ -98,6 +99,7 @@ fun ModelsScreen(
|
|||
isDeleting = currentMode == ModelScreenUiMode.DELETING,
|
||||
onScaffoldEvent = onScaffoldEvent,
|
||||
activeFiltersCount = activeFiltersCount,
|
||||
onFirstModelImportSuccess = onFirstModelImportSuccess,
|
||||
modelsViewModel = modelsViewModel,
|
||||
managementViewModel = managementViewModel,
|
||||
)
|
||||
|
|
|
|||
|
|
@ -51,7 +51,6 @@ class MainViewModel @Inject constructor (
|
|||
}
|
||||
|
||||
fun waiveModelImportTooltip() {
|
||||
android.util.Log.w("JOJO", "WAIVE IMPORT TOOLTIP!")
|
||||
viewModelScope.launch {
|
||||
appPreferences.setUserHasImportedFirstModel(true)
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue