소스 검색

Make sure to actually remove the signal registration too

JeffR 1 개월 전
부모
커밋
c2a46e4b45
2개의 변경된 파일10개의 추가작업 그리고 0개의 파일을 삭제
  1. 9 0
      Engine/source/gui/utility/guiInputCtrl.cpp
  2. 1 0
      Engine/source/gui/utility/guiInputCtrl.h

+ 9 - 0
Engine/source/gui/utility/guiInputCtrl.cpp

@@ -95,6 +95,15 @@ bool GuiInputCtrl::onAdd()
       return false;
 
    GuiCanvas::getCanvasSetActiveSignal().notify(this, &GuiInputCtrl::handleCanvasSetActive);
+
+   return true;
+}
+
+void GuiInputCtrl::onRemove()
+{
+   GuiCanvas::getCanvasSetActiveSignal().remove(this, &GuiInputCtrl::handleCanvasSetActive);
+
+   Parent::onRemove();
 }
 
 bool GuiInputCtrl::onWake()

+ 1 - 0
Engine/source/gui/utility/guiInputCtrl.h

@@ -48,6 +48,7 @@ public:
    GuiInputCtrl();
 
    bool onAdd() override;
+   void onRemove() override;
 
    // GuiControl.
    bool onWake() override;