From 3b94345d5f8e6ef72334530524f37e8380fc4e81 Mon Sep 17 00:00:00 2001
From: Konstantin Ivanov <54908981+konstantiniiv@users.noreply.github.com>
Date: Fri, 25 Apr 2025 11:38:54 +0200
Subject: [PATCH] DROID-3593 Primitives | Fix | Disable type title update when
restriction is present (#2358)
---
.../anytypeio/anytype/ui/primitives/ObjectTypeFragment.kt | 8 ++++++++
.../anytypeio/anytype/feature_object_type/ui/UiState.kt | 1 +
.../feature_object_type/viewmodel/ObjectTypeViewModel.kt | 5 +++++
localization/src/main/res/values/strings.xml | 1 +
4 files changed, 15 insertions(+)
diff --git a/app/src/main/java/com/anytypeio/anytype/ui/primitives/ObjectTypeFragment.kt b/app/src/main/java/com/anytypeio/anytype/ui/primitives/ObjectTypeFragment.kt
index 8f607be4d6..1f4e538045 100644
--- a/app/src/main/java/com/anytypeio/anytype/ui/primitives/ObjectTypeFragment.kt
+++ b/app/src/main/java/com/anytypeio/anytype/ui/primitives/ObjectTypeFragment.kt
@@ -181,6 +181,14 @@ class ObjectTypeFragment : BaseComposeFragment() {
onDismissRequest = vm::hideError
)
}
+ UiErrorState.Reason.ErrorEditingTypeDetails -> {
+ BaseAlertDialog(
+ dialogText = stringResource(R.string.object_type_edit_type_details_error),
+ buttonText = stringResource(id = R.string.membership_error_button_text_dismiss),
+ onButtonClick = vm::hideError,
+ onDismissRequest = vm::hideError
+ )
+ }
}
}
}
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 ec6bb6eb6c..8097218c97 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
@@ -211,6 +211,7 @@ sealed class UiErrorState {
sealed class Reason {
data class ErrorGettingObjects(val msg: String) : Reason()
+ data object ErrorEditingTypeDetails : Reason()
data class Other(val msg: String) : Reason()
}
}
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 10b0bac9dd..a606dd48f6 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
@@ -1172,6 +1172,11 @@ class ObjectTypeViewModel(
"showTitleAndIconUpdateScreen, initialIcon: $initialIcon, " +
"initialTitle: $initialTitle, initialPlural: $initialPlural"
)
+ val isPossibleToUpdateTitle = _objectTypePermissionsState.value?.canEditDetails == true
+ if (!isPossibleToUpdateTitle) {
+ errorState.value = Show(ErrorEditingTypeDetails)
+ return
+ }
uiTitleAndIconUpdateState.value = UiTypeSetupTitleAndIconState.Visible.EditType(
icon = initialIcon,
initialTitle = initialTitle,
diff --git a/localization/src/main/res/values/strings.xml b/localization/src/main/res/values/strings.xml
index e7b1c28bb8..32f7940157 100644
--- a/localization/src/main/res/values/strings.xml
+++ b/localization/src/main/res/values/strings.xml
@@ -1901,6 +1901,7 @@ Please provide specific details of your needs here.
No properties yet. Add some to this type
Failed to open the object type
+ Editing this type is not allowed.
Monday
Tuesday