1
0
Fork 0
mirror of https://github.com/anyproto/anytype-kotlin.git synced 2025-06-07 21:37:02 +09:00

DROID-1362 Widgets | Enhancement | Fix widget layout logic (#97)

This commit is contained in:
Evgenii Kozlov 2023-06-26 14:56:36 +02:00 committed by GitHub
parent 89f40d317b
commit 5fddb439c1
Signed by: github
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 32 additions and 11 deletions

2
.github/CODEOWNERS vendored
View file

@ -1 +1 @@
* @quaterma1n @fat-fellow @konstantiniiv @uburoiubu
* @konstantiniiv @uburoiubu

View file

@ -45,16 +45,24 @@ class SelectWidgetTypeViewModel(
) {
Timber.d("onStart for existing widget")
if (BundledWidgetSourceIds.ids.contains(source)) {
views.value = listOf(
WidgetTypeView.Tree().setIsSelected(currentType),
WidgetTypeView.List().setIsSelected(currentType)
)
if (source == BundledWidgetSourceIds.FAVORITE || source == BundledWidgetSourceIds.RECENT) {
views.value = listOf(
WidgetTypeView.CompactList().setIsSelected(currentType),
WidgetTypeView.List().setIsSelected(currentType),
WidgetTypeView.Tree().setIsSelected(currentType),
)
} else {
views.value = listOf(
WidgetTypeView.CompactList().setIsSelected(currentType),
WidgetTypeView.List().setIsSelected(currentType)
)
}
} else {
val objectLayout = ObjectType.Layout.values().find { it.code == sourceLayout }
if (objectLayout.isDataView()) {
views.value = listOf(
WidgetTypeView.List().setIsSelected(currentType),
WidgetTypeView.CompactList().setIsSelected(currentType),
WidgetTypeView.List().setIsSelected(currentType),
WidgetTypeView.Link().setIsSelected(currentType)
)
} else {
@ -66,16 +74,29 @@ class SelectWidgetTypeViewModel(
fun onStartForNewWidget(layout: Int, source: Id) {
Timber.d("onStart for new widget")
if (BundledWidgetSourceIds.ids.contains(source)) {
views.value = listOf(
WidgetTypeView.Tree(isSelected = false),
WidgetTypeView.List(isSelected = false)
)
if (source == BundledWidgetSourceIds.FAVORITE || source == BundledWidgetSourceIds.RECENT) {
views.value = listOf(
WidgetTypeView.CompactList(isSelected = false),
WidgetTypeView.List(isSelected = false),
WidgetTypeView.Tree(isSelected = false),
)
} else {
views.value = listOf(
WidgetTypeView.CompactList(isSelected = false),
WidgetTypeView.List(isSelected = false),
)
}
} else {
val objectLayout = ObjectType.Layout.values().find { it.code == layout }
if (objectLayout.isDataView()) {
views.value = listOf(
WidgetTypeView.List(isSelected = false),
WidgetTypeView.CompactList(isSelected = false),
WidgetTypeView.List(isSelected = false),
WidgetTypeView.Link(isSelected = false)
)
} else {
views.value = listOf(
WidgetTypeView.Tree(isSelected = false),
WidgetTypeView.Link(isSelected = false)
)
}