diff --git a/editor/inspector/editor_inspector.cpp b/editor/inspector/editor_inspector.cpp index 87c901d60d..d5dab53302 100644 --- a/editor/inspector/editor_inspector.cpp +++ b/editor/inspector/editor_inspector.cpp @@ -733,7 +733,8 @@ StringName EditorProperty::get_edited_property() const { Variant EditorProperty::get_edited_property_display_value() const { ERR_FAIL_NULL_V(object, Variant()); Control *control = Object::cast_to(object); - if (checkable && !checked && control && String(property).begins_with("theme_override_")) { + // If checked but it's empty, it means that the set value has just been undone, and should show the default value as well. + if (control && checkable && (!checked || get_edited_property_value() == Variant()) && String(property).begins_with("theme_override_")) { return control->get_used_theme_item(property); } else { return get_edited_property_value();