-
-
Notifications
You must be signed in to change notification settings - Fork 21.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Do not allow editing Scene-inherited signal connections #66665
Do not allow editing Scene-inherited signal connections #66665
Conversation
1b529db
to
7d05ead
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The idea seems fine to me, could use a more in depth review as I just gave it a quick look.
Found a bug. Connecting an instance blocks disconnecting until reload. godot.windows.editor.dev.x86_64_vouq1whwx5.mp4 |
Hmm... It technically makes sense. I wonder how to address this one... |
It's not important tbh, so it can be fixed later (e.g. when someone opens an issue xd) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks ok, aside from some comment typos and unimportant issue.
Inherited connections are also highlighted with the warning color in the Node dock.
7d05ead
to
6a77563
Compare
Reflecting on the bug more, to solve it would mean to change the way direct scene connections are detected, to do a bit of the opposite of what it is currently doing. Which is basically Godot going "Oh, I don't see this signal within the list. Therefore it has to be inherited" but as you showed, it isn't necessarily true. |
Thanks! |
Closes #12373.
Editing inherited signal connections has never actually really worked, in practice.
In fact, saving and reopening the Scene makes all inherited connections appear again, as if no change has even happened. Very strange to let the user touch them, in the first place. It really has no effect. Nor it probably should, as it would lead to an unorganised workflow.
This PR makes it so that signal connections from an inherited Scene can no longer be modified in any way in the Editor.
Inherited connections are displayed in warning yellow (same as inherited Nodes) and they cannot be edited or removed.
Likewise, "Disconnect All" will not disconnect inherited connections, and is disabled if no connection can be disconnected.