From 8e8212db5b19a330f484eb7bd7c54794483ca7f5 Mon Sep 17 00:00:00 2001 From: Alewinn Date: Sun, 14 Jun 2026 23:34:28 +0200 Subject: [PATCH 1/2] Fix : Visject list types don't update after second hotreload --- Source/Editor/Surface/VisjectSurface.ContextMenu.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Source/Editor/Surface/VisjectSurface.ContextMenu.cs b/Source/Editor/Surface/VisjectSurface.ContextMenu.cs index ffb1c725a..6054f9f84 100644 --- a/Source/Editor/Surface/VisjectSurface.ContextMenu.cs +++ b/Source/Editor/Surface/VisjectSurface.ContextMenu.cs @@ -183,6 +183,9 @@ namespace FlaxEditor.Surface { _cache.Clear(); _version++; + + // Mark type list as dirty to rebuild it next use. + Editor.Instance.CodeEditing.AllWithStd.ClearTypes(); } Editor.Instance.CodeEditing.TypesCleared -= OnCodeEditingTypesCleared; From 1a478712124d5c8b721a7fd687cdbf1b415f3b91 Mon Sep 17 00:00:00 2001 From: Alewinn Date: Tue, 16 Jun 2026 10:29:33 +0200 Subject: [PATCH 2/2] Moving NodesCache desync after hotreload fix at the right place --- Source/Editor/Modules/SourceCodeEditing/CodeEditingModule.cs | 1 + Source/Editor/Surface/VisjectSurface.ContextMenu.cs | 3 --- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/Source/Editor/Modules/SourceCodeEditing/CodeEditingModule.cs b/Source/Editor/Modules/SourceCodeEditing/CodeEditingModule.cs index af0187248..4b5f07664 100644 --- a/Source/Editor/Modules/SourceCodeEditing/CodeEditingModule.cs +++ b/Source/Editor/Modules/SourceCodeEditing/CodeEditingModule.cs @@ -532,6 +532,7 @@ namespace FlaxEditor.Modules.SourceCodeEditing { // Invalidate cached types All.ClearTypes(); + AllWithStd.ClearTypes(); VisualScriptPropertyTypes.ClearTypes(); Actors.ClearTypes(); Scripts.ClearTypes(); diff --git a/Source/Editor/Surface/VisjectSurface.ContextMenu.cs b/Source/Editor/Surface/VisjectSurface.ContextMenu.cs index 6054f9f84..ffb1c725a 100644 --- a/Source/Editor/Surface/VisjectSurface.ContextMenu.cs +++ b/Source/Editor/Surface/VisjectSurface.ContextMenu.cs @@ -183,9 +183,6 @@ namespace FlaxEditor.Surface { _cache.Clear(); _version++; - - // Mark type list as dirty to rebuild it next use. - Editor.Instance.CodeEditing.AllWithStd.ClearTypes(); } Editor.Instance.CodeEditing.TypesCleared -= OnCodeEditingTypesCleared;