fix(layer): keep auto-registered layer names verbatim; one sync helper

ensure_layer had started trimming the name, so an entity on " A" got a
table entry "A" it never resolves to. Register the name as given again
and drop the unused return value. The five copies of the dirty-flag check
become sync_registered_layers.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Hakan SevenandClaude Opus 5.5 committed 2026-10-03 14:59:30 +03:00
1 parent 1b04bda547
commit e3c0d456f2
4 files changed
+20 -32

No files matched your search

+4 -20
View File
@@ -350,11 +350,7 @@ impl<'a> HostSession<'a> {
return handle;
}
let handle = self.app.tabs[self.tab].scene.add_entity(entity);
if self.app.tabs[self.tab].scene.layer_table_dirty {
self.app.tabs[self.tab].scene.layer_table_dirty = false;
self.app.tabs[self.tab].dirty = true;
self.app.refresh_layer_panel();
}
self.app.sync_registered_layers(self.tab);
self.publish_document_view();
handle
}
@@ -367,11 +363,7 @@ impl<'a> HostSession<'a> {
let _ = self.normalize_scripted_entity(None, entity);
}
let handles = self.app.tabs[self.tab].scene.add_entities(entities);
if self.app.tabs[self.tab].scene.layer_table_dirty {
self.app.tabs[self.tab].scene.layer_table_dirty = false;
self.app.tabs[self.tab].dirty = true;
self.app.refresh_layer_panel();
}
self.app.sync_registered_layers(self.tab);
self.publish_document_view();
handles
}
@@ -391,11 +383,7 @@ impl<'a> HostSession<'a> {
EntityType::AttributeEntity(attribute) => self.replace_nested_attribute(attribute),
entity => self.app.tabs[self.tab].scene.update_entity(entity),
};
if self.app.tabs[self.tab].scene.layer_table_dirty {
self.app.tabs[self.tab].scene.layer_table_dirty = false;
self.app.tabs[self.tab].dirty = true;
self.app.refresh_layer_panel();
}
self.app.sync_registered_layers(self.tab);
if ok {
self.publish_document_view();
}
@@ -454,11 +442,7 @@ impl<'a> HostSession<'a> {
};
assert!(updated);
}
if self.app.tabs[self.tab].scene.layer_table_dirty {
self.app.tabs[self.tab].scene.layer_table_dirty = false;
self.app.tabs[self.tab].dirty = true;
self.app.refresh_layer_panel();
}
self.app.sync_registered_layers(self.tab);
self.set_dirty();
self.publish_document_view();
Ok(())