diff --git a/hcie-iced-app/crates/hcie-iced-gui/src/app.rs b/hcie-iced-app/crates/hcie-iced-gui/src/app.rs index 0429511..22db41d 100644 --- a/hcie-iced-app/crates/hcie-iced-gui/src/app.rs +++ b/hcie-iced-app/crates/hcie-iced-gui/src/app.rs @@ -1510,19 +1510,15 @@ impl HcieIcedApp { } // Auto-create layer if current tool requires a different layer type - if req_type != hcie_engine_api::LayerType::Text { + // NOTE: Vector layer creation is handled by add_vector_shape() in VectorDrawEnd + // to avoid creating duplicate layers. Only create Raster layers here. + if req_type != hcie_engine_api::LayerType::Text + && req_type != hcie_engine_api::LayerType::Vector + { if let Some(active) = self.documents[self.active_doc].engine.active_layer() { if active.layer_type != req_type { - match req_type { - hcie_engine_api::LayerType::Vector => { - let id = self.documents[self.active_doc].engine.add_layer("Vector Layer"); - self.documents[self.active_doc].engine.set_active_layer(id); - } - _ => { - let id = self.documents[self.active_doc].engine.add_layer("Layer"); - self.documents[self.active_doc].engine.set_active_layer(id); - } - } + let id = self.documents[self.active_doc].engine.add_layer("Layer"); + self.documents[self.active_doc].engine.set_active_layer(id); self.refresh_composite_if_needed(); } }