diff --git a/source/RobotAPI/libraries/skills_gui/skills/SkillTreeWidget.cpp b/source/RobotAPI/libraries/skills_gui/skills/SkillTreeWidget.cpp
index b9c54b9b5f995c18dd149a633f6d0c69d3ebb95d..fc4e3f84ae9f5e9b1230333f44daa9b6f0d44cfe 100644
--- a/source/RobotAPI/libraries/skills_gui/skills/SkillTreeWidget.cpp
+++ b/source/RobotAPI/libraries/skills_gui/skills/SkillTreeWidget.cpp
@@ -5,7 +5,7 @@
 namespace armarx::skills::gui
 {
     void
-    SkillTreeWidget::skillSelectionChanged(QTreeWidgetItem* current, QTreeWidgetItem* previous)
+    SkillTreeWidget::skillSelectionChanged(QTreeWidgetItem* current, QTreeWidgetItem*)
     {
         if (!current)
         {
@@ -27,8 +27,7 @@ namespace armarx::skills::gui
         }
 
         selectedSkill.skillId = c->skillId;
-
-        emit updateSkillDetails(c->skillId);
+        emit updateSkillDetails(selectedSkill.skillId);
     }
 
     void
@@ -152,6 +151,9 @@ namespace armarx::skills::gui
                 &SkillManagerWrapper::updateAvailable,
                 this,
                 &SkillTreeWidget::updateSkills);
+
+        connect(
+            this, &QTreeWidget::currentItemChanged, this, &SkillTreeWidget::skillSelectionChanged);
     }