Skip to content

Disabling Editable Children does not revert to default until reopen #45915

@lyuma

Description

@lyuma

Godot version:
4.0.dev e5bb89c

OS/device including version:
Windows 10.0.19041.804
Nvidia RTX 2080 Ti driver 452.06

Issue description:
When disabling Editable Children on an embedded scene, a warning is presented that doing so will revert child nodes in that scene to default values.
Please Confirm... Disabling "editable_instance" will cause all properties of the node to be reverted to their default.

However, that is not so: the children retain their modified state until the scene is saved, closed and then reopened.

Note: Issue #23239 claims the opposite problem. However, given the dialog box presented to the user, that issue has become a Godot feature (intended behavior) and now that there is proper warning, that issue should be closed.

In contrast, this issue is that the above "feature" or intended behavior of unticking Editable Children to revert the state of child nodes malfunctions until the scene is saved and unloaded from memory.

Steps to reproduce:

  1. Open the attached project. Should open MainScene.tscn by default.

  2. Make some changes to the editable children of test_subscene. For example, move the cube, add a DirectionalLight3D node inside "Sun", or edit properties of a node.

  3. Right click test_subscene and disable Editable Children.

  4. Click OK when asked to confirm the consequences:
    Please Confirm... Disabling "editable_instance" will cause all properties of the node to be reverted to their default.

  5. Note that the scene retains the changes you made.

  6. Save and re-open the scene. It looks different than before it was saved, because it reverted state to default, but only after the scene was saved.

  7. Repeat steps 1-5, but this time, re-enable Editable Children before saving.

  8. Save and re-open the scene. Even though OK was clicked on the dialog box, state was not reverted to default.

Minimal reproduction project:
EditableChildrenChangeType.zip

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions