diff --git a/feature-all-content/src/main/java/com/anytypeio/anytype/feature_allcontent/models/AllContentModels.kt b/feature-all-content/src/main/java/com/anytypeio/anytype/feature_allcontent/models/AllContentModels.kt index 3b2d6e68cb..0892cafbda 100644 --- a/feature-all-content/src/main/java/com/anytypeio/anytype/feature_allcontent/models/AllContentModels.kt +++ b/feature-all-content/src/main/java/com/anytypeio/anytype/feature_allcontent/models/AllContentModels.kt @@ -196,6 +196,7 @@ suspend fun ObjectWrapper.Basic.toAllContentItem( val typeUrl = obj.getProperType() val isProfile = typeUrl == MarketplaceObjectTypeIds.PROFILE val layout = obj.layout ?: ObjectType.Layout.BASIC + val isType = obj.layout == ObjectType.Layout.OBJECT_TYPE return UiContentItem.Item( id = obj.id, space = space, @@ -216,7 +217,7 @@ suspend fun ObjectWrapper.Basic.toAllContentItem( ), lastModifiedDate = DateParser.parse(obj.getValue(Relations.LAST_MODIFIED_DATE)) ?: 0L, createdDate = DateParser.parse(obj.getValue(Relations.CREATED_DATE)) ?: 0L, - isPossibleToDelete = isOwnerOrEditor + isPossibleToDelete = isOwnerOrEditor && !isType ) } diff --git a/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/fields/ui/ListScreen.kt b/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/fields/ui/ListScreen.kt index da35bbefd2..5ecf95484c 100644 --- a/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/fields/ui/ListScreen.kt +++ b/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/fields/ui/ListScreen.kt @@ -56,6 +56,7 @@ import com.anytypeio.anytype.core_ui.common.ReorderHapticFeedback import com.anytypeio.anytype.core_ui.common.ReorderHapticFeedbackType import com.anytypeio.anytype.core_ui.common.rememberReorderHapticFeedback import com.anytypeio.anytype.core_ui.extensions.simpleIcon +import com.anytypeio.anytype.core_ui.foundation.Divider import com.anytypeio.anytype.core_ui.foundation.Dragger import com.anytypeio.anytype.core_ui.foundation.noRippleThrottledClickable import com.anytypeio.anytype.core_ui.views.BodyCalloutMedium @@ -485,7 +486,7 @@ private fun InfoBar(modifier: Modifier, uiTitleState: UiTitleState, uiIconState: Spacer(modifier = Modifier.width(2.dp)) Text( modifier = Modifier, - text = uiTitleState.title, + text = uiTitleState.originalName, style = Caption1Medium, maxLines = 1, overflow = TextOverflow.Ellipsis, @@ -790,6 +791,7 @@ fun ItemDropDownMenu( }, ) } + Divider(paddingStart = 0.dp, paddingEnd = 0.dp) if (item.isPossibleToMoveToBin) { DropdownMenuItem( text = { @@ -840,7 +842,7 @@ fun ItemDropDownMenu( @Composable fun PreviewTypeFieldsMainScreen() { FieldsMainScreen( - uiTitleState = UiTitleState(title = "Page", isEditable = false), + uiTitleState = UiTitleState(title = "Pages", originalName = "Page", isEditable = false), uiIconState = UiIconState(icon = ObjectIcon.TypeIcon.Default.DEFAULT, isEditable = false), uiFieldsListState = UiFieldsListState( items = listOf( diff --git a/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/ui/UiState.kt b/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/ui/UiState.kt index e822458d4f..926491df8c 100644 --- a/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/ui/UiState.kt +++ b/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/ui/UiState.kt @@ -37,9 +37,9 @@ sealed class ObjectTypeCommand { } //region OBJECT TYPE HEADER (title + icon) -data class UiTitleState(val title: String, val isEditable: Boolean) { +data class UiTitleState(val title: String, val originalName: String, val isEditable: Boolean) { companion object { - val EMPTY = UiTitleState(title = "", isEditable = false) + val EMPTY = UiTitleState(title = "", originalName = "", isEditable = false) } } diff --git a/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/ui/header/HeaderScreen.kt b/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/ui/header/HeaderScreen.kt index c69b7032b4..c94879dd19 100644 --- a/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/ui/header/HeaderScreen.kt +++ b/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/ui/header/HeaderScreen.kt @@ -84,7 +84,8 @@ fun IconAndTitleWidgetPreview() { uiIconState = UiIconState(icon = ObjectIcon.TypeIcon.Default.DEFAULT, isEditable = true), uiTitleState = UiTitleState( title = "I understand that contributing to this repository will require me to agree with the", - isEditable = true + isEditable = true, + originalName = "Page" ) ) } @@ -100,7 +101,8 @@ fun IconAndTitleEmptyWidgetPreview() { uiIconState = UiIconState(icon = ObjectIcon.TypeIcon.Default.DEFAULT, isEditable = true), uiTitleState = UiTitleState( title = "", - isEditable = true + isEditable = true, + originalName = "Page" ) ) } \ No newline at end of file diff --git a/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/ui/header/TopToolbar.kt b/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/ui/header/TopToolbar.kt index 022849c681..978c587d54 100644 --- a/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/ui/header/TopToolbar.kt +++ b/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/ui/header/TopToolbar.kt @@ -200,6 +200,6 @@ fun TopToolbarPreview() { uiEditButtonState = UiEditButton.Visible, onTypeEvent = {}, topBarScrollBehavior = topAppBarScrollBehavior, - uiTitleState = UiTitleState(title = "Page", isEditable = true) + uiTitleState = UiTitleState(title = "Pages", originalName = "Page", isEditable = true) ) } \ No newline at end of file diff --git a/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/viewmodel/ObjectTypeViewModel.kt b/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/viewmodel/ObjectTypeViewModel.kt index b37926b51f..8cf5d6910d 100644 --- a/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/viewmodel/ObjectTypeViewModel.kt +++ b/feature-object-type/src/main/java/com/anytypeio/anytype/feature_object_type/viewmodel/ObjectTypeViewModel.kt @@ -341,7 +341,8 @@ class ObjectTypeViewModel( uiTitleState.value = UiTitleState( title = fieldParser.getObjectPluralName(objType), - isEditable = objectPermissions.canEditDetails + isEditable = objectPermissions.canEditDetails, + originalName = fieldParser.getObjectName(objType) ) val newIcon = objType.objectIcon() uiIconState.value = UiIconState( diff --git a/presentation/src/main/java/com/anytypeio/anytype/presentation/sets/ObjectSetViewModel.kt b/presentation/src/main/java/com/anytypeio/anytype/presentation/sets/ObjectSetViewModel.kt index d7ecb1ddca..ad82f796e3 100644 --- a/presentation/src/main/java/com/anytypeio/anytype/presentation/sets/ObjectSetViewModel.kt +++ b/presentation/src/main/java/com/anytypeio/anytype/presentation/sets/ObjectSetViewModel.kt @@ -2406,7 +2406,7 @@ class ObjectSetViewModel( ) } + newTemplate } else { - return blankTemplate + templates.map { objTemplate -> + return templates.map { objTemplate -> objTemplate.toTemplateView( urlBuilder = urlBuilder, coverImageHashProvider = coverImageHashProvider,