diff --git a/radio/src/thirdparty/libopenui/src/form.h b/radio/src/thirdparty/libopenui/src/form.h index cd9397252..cd612ff0b 100644 --- a/radio/src/thirdparty/libopenui/src/form.h +++ b/radio/src/thirdparty/libopenui/src/form.h @@ -87,7 +87,7 @@ class FormGroup: public FormField { ~FormGroup() override { - deleteChildren(); + deleteChildren(); // TODO move it to ~Window() } #if defined(DEBUG_WINDOWS) diff --git a/radio/src/thirdparty/libopenui/src/window.cpp b/radio/src/thirdparty/libopenui/src/window.cpp index 80896e6ad..8c371e2ce 100644 --- a/radio/src/thirdparty/libopenui/src/window.cpp +++ b/radio/src/thirdparty/libopenui/src/window.cpp @@ -45,6 +45,8 @@ Window::~Window() if (focusWindow == this) { focusWindow = nullptr; } + + // TODO deleteChildren(); (remove from FormGroup) } void Window::attach(Window * window) diff --git a/radio/src/thirdparty/libopenui/src/window.h b/radio/src/thirdparty/libopenui/src/window.h index 75e55493a..0eeb051ba 100644 --- a/radio/src/thirdparty/libopenui/src/window.h +++ b/radio/src/thirdparty/libopenui/src/window.h @@ -299,6 +299,8 @@ class Window { virtual void checkEvents(); + void detach(); + protected: Window * parent; std::list children; @@ -318,8 +320,6 @@ class Window { void attach(Window * window); - void detach(); - void addChild(Window * window) { children.push_back(window);