You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-05 12:10:55 +00:00
Fix visual shader graph not correctly updating when multiple tabs opened
This commit is contained in:
@@ -923,6 +923,15 @@ ShaderEditor *ShaderEditorPlugin::get_shader_editor(const Ref<Shader> &p_for_sha
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
VisualShaderEditor *ShaderEditorPlugin::get_visual_shader_editor(const Ref<Shader> &p_for_shader) {
|
||||
for (uint32_t i = 0; i < edited_shaders.size(); i++) {
|
||||
if (edited_shaders[i].shader == p_for_shader) {
|
||||
return edited_shaders[i].visual_shader_editor;
|
||||
}
|
||||
}
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
void ShaderEditorPlugin::save_external_data() {
|
||||
for (uint32_t i = 0; i < edited_shaders.size(); i++) {
|
||||
if (edited_shaders[i].shader_editor) {
|
||||
@@ -950,6 +959,7 @@ void ShaderEditorPlugin::_close_shader(int p_index) {
|
||||
memdelete(c);
|
||||
edited_shaders.remove_at(index);
|
||||
_update_shader_list();
|
||||
EditorNode::get_singleton()->get_undo_redo()->clear_history(); // To prevent undo on deleted graphs.
|
||||
}
|
||||
|
||||
void ShaderEditorPlugin::_resource_saved(Object *obj) {
|
||||
|
||||
Reference in New Issue
Block a user