diff --git a/src/edit/src/editor.cpp b/src/edit/src/editor.cpp
index 41c79700d317cd073a39d84710844d727b9e5fae..60efe2b5de6cf3a920d594e07a112d72eac9d72f 100644
--- a/src/edit/src/editor.cpp
+++ b/src/edit/src/editor.cpp
@@ -699,16 +699,16 @@ void Editor::controlBuild()
     convertComponentToConType();
 
     bool lmb_released = mouse.just_released().contains("MouseLeft");
-    bool shift_held = keyboard.down().contains("LeftShift");
+    bool delete_pressed = keyboard.just_pressed().contains("Delete");
 
-    if (!lmb_released)
-        return;
-
-    if (lmb_released && shift_held && selection_previous_frame && hover_nearest_node == selection_previous_frame)
+    if (delete_pressed)
     {
         removeComponent();
         return;
     }
+    
+    if (!lmb_released)
+        return;
 
     if (!checkBuildValid())
         return;
@@ -1958,6 +1958,9 @@ node_ptr Editor::createVoxelNode(connector_ptr connector)
 void Editor::removeComponent()
 {
     auto selection = scene->getSelection();
+    if (!selection)
+        return;
+
     if (isConnector(selection))
         removeConnector();
     else if (isVoxel(selection))
diff --git a/src/gui/src/ui.cpp b/src/gui/src/ui.cpp
index 8b475ed59755b0637b905a31917f8e53f022ddcb..3869d76266f3c03a02270260b0165b9d6a6eac82 100644
--- a/src/gui/src/ui.cpp
+++ b/src/gui/src/ui.cpp
@@ -402,7 +402,6 @@ void mode_II_build_selection_ui(const osi::Window &window, edit::UIData &data)
 
 void build_toolbar_ui(const osi::Window &window, edit::UIData &data)
 {
-    // auto window_pos_x =window.size().x * 0.5f - build_toolbar_width * 0.5f;
     if (data.allowed_components.empty())
         return;