1
0
Fork 0
mirror of https://github.com/anyproto/anytype-kotlin.git synced 2025-06-08 13:57:10 +09:00

DROID-2657 Vault | Fix | Space icon issue (#1727)

This commit is contained in:
Evgenii Kozlov 2024-10-23 19:20:37 +02:00 committed by Evgenii Kozlov
parent caaba62b23
commit 04e3e73bfb
3 changed files with 7 additions and 19 deletions

View file

@ -36,12 +36,6 @@ interface CreateSpaceComponent {
@Module
object CreateSpaceModule {
@JvmStatic
@Provides
@PerScreen
fun provideSpaceGradientProvider(): SpaceGradientProvider = SpaceGradientProvider.Default
@Module
interface Declarations {
@Binds

View file

@ -38,7 +38,7 @@ class CreateSpaceFragment : BaseBottomSheetComposeFragment() {
typography = typography
) {
CreateSpaceScreen(
spaceIconView = vm.spaceGradient.collectAsState().value,
spaceIconView = vm.spaceIconView.collectAsState().value,
onCreate = vm::onCreateSpace,
onSpaceIconClicked = vm::onSpaceIconClicked,
isLoading = vm.isInProgress.collectAsState()

View file

@ -23,7 +23,6 @@ import timber.log.Timber
class CreateSpaceViewModel(
private val createSpace: CreateSpace,
private val spaceGradientProvider: SpaceGradientProvider,
private val spaceManager: SpaceManager,
private val analytics: Analytics,
private val spaceViewContainer: SpaceViewSubscriptionContainer
@ -31,16 +30,13 @@ class CreateSpaceViewModel(
val isInProgress = MutableStateFlow(false)
private var spaceGradientId = spaceGradientProvider.randomId()
val spaceGradient : MutableStateFlow<SpaceIconView.Placeholder>
init {
val view = SpaceIconView.Placeholder(
val spaceIconView : MutableStateFlow<SpaceIconView.Placeholder> = MutableStateFlow(
SpaceIconView.Placeholder(
color = SystemColor.entries.random()
)
spaceGradient = MutableStateFlow(view)
)
init {
viewModelScope.launch {
analytics.sendEvent(eventName = EventsDictionary.screenSettingsSpaceCreate)
}
@ -64,7 +60,7 @@ class CreateSpaceViewModel(
CreateSpace.Params(
details = mapOf(
Relations.NAME to name,
Relations.ICON_OPTION to spaceGradientId.toDouble()
Relations.ICON_OPTION to spaceIconView.value.color.index.toDouble()
)
)
).collect { result ->
@ -107,14 +103,13 @@ class CreateSpaceViewModel(
}
private fun proceedWithResettingRandomSpaceGradient() {
spaceGradient.value = SpaceIconView.Placeholder(
spaceIconView.value = SpaceIconView.Placeholder(
color = SystemColor.entries.random()
)
}
class Factory @Inject constructor(
private val createSpace: CreateSpace,
private val spaceGradientProvider: SpaceGradientProvider,
private val spaceManager: SpaceManager,
private val analytics: Analytics,
private val spaceViewContainer: SpaceViewSubscriptionContainer
@ -124,7 +119,6 @@ class CreateSpaceViewModel(
modelClass: Class<T>
) = CreateSpaceViewModel(
createSpace = createSpace,
spaceGradientProvider = spaceGradientProvider,
spaceManager = spaceManager,
analytics = analytics,
spaceViewContainer = spaceViewContainer