mirror of
https://github.com/Aviortheking/Neo-Store.git
synced 2025-04-23 11:22:12 +00:00
Add: Favorite actions to AppSheet
This commit is contained in:
parent
88f0ecc8b7
commit
3a12c90d81
@ -227,6 +227,10 @@ class AppSheetX() : FullscreenBottomSheetDialogFragment(), Callbacks {
|
||||
ActionState.Share -> {
|
||||
shareIntent(packageName, productRepos[0].first.label)
|
||||
}
|
||||
ActionState.Bookmark,
|
||||
ActionState.Bookmarked -> {
|
||||
viewModel.setFavorite(packageName, action is ActionState.Bookmark)
|
||||
}
|
||||
else -> Unit
|
||||
}::class
|
||||
}
|
||||
@ -457,7 +461,6 @@ class AppSheetX() : FullscreenBottomSheetDialogFragment(), Callbacks {
|
||||
product.packageName,
|
||||
if (it) product.versionCode else 0
|
||||
)
|
||||
viewModel.updateActions()
|
||||
})
|
||||
}
|
||||
}
|
||||
@ -467,7 +470,6 @@ class AppSheetX() : FullscreenBottomSheetDialogFragment(), Callbacks {
|
||||
initSelected = extras?.ignoreUpdates == true,
|
||||
onCheckedChanged = {
|
||||
viewModel.setIgnoreUpdates(product.packageName, it)
|
||||
viewModel.updateActions()
|
||||
})
|
||||
}
|
||||
}
|
||||
|
@ -30,7 +30,7 @@ class AppViewModelX(val db: DatabaseX, val packageName: String) : ViewModel() {
|
||||
}
|
||||
val downloadState = MutableLiveData<DownloadState>()
|
||||
val mainAction = MutableLiveData<ActionState>()
|
||||
val actions = MutableLiveData<Set<ActionState>>()
|
||||
val actions = MediatorLiveData<Set<ActionState>>()
|
||||
val secondaryAction = MutableLiveData<ActionState>()
|
||||
val extras = MediatorLiveData<Extras>()
|
||||
|
||||
@ -39,6 +39,7 @@ class AppViewModelX(val db: DatabaseX, val packageName: String) : ViewModel() {
|
||||
repositories.addSource(db.repositoryDao.allLive, repositories::setValue)
|
||||
installedItem.addSource(db.installedDao.getLive(packageName), installedItem::setValue)
|
||||
extras.addSource(db.extrasDao.getLive(packageName), extras::setValue)
|
||||
actions.addSource(extras) { updateActions() }
|
||||
}
|
||||
|
||||
fun updateActions() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user