diff --git a/src/module/module_qt_window.cc b/src/module/module_qt_window.cc index 5daad1ec45986d0b1fcb5074075db601a1d122dd..514d6c31cdf4a8803b67299d4d8e4dc3cbf18b25 100644 --- a/src/module/module_qt_window.cc +++ b/src/module/module_qt_window.cc @@ -213,7 +213,8 @@ module_qt_window_new(struct module_qt_window_s **win, struct queue *queue, lkt_d static void module_qt_window_close(struct module_qt_window_s *win) { - RETURN_UNLESS(win && win->mpv_widget, "Invalid arguments", NOTHING); + RETURN_UNLESS(win && win->mpv_widget && win->main_window, "Invalid arguments", NOTHING); + ___module_qt_window_close(win); } static void diff --git a/src/module/qt_window/mpvwidget_interface.cc b/src/module/qt_window/mpvwidget_interface.cc index 40514290f42cdf16f5dabac4305ba012cee0f966..26e963bca7efb7e3a9288ec211a3fee08a9c2e0c 100644 --- a/src/module/qt_window/mpvwidget_interface.cc +++ b/src/module/qt_window/mpvwidget_interface.cc @@ -61,3 +61,10 @@ ___module_qt_window_toggle_pause(struct module_qt_window_s *win) { return win->mpv_widget->toggle_pause(); } + +bool +___module_qt_window_close(struct module_qt_window_s *win) +{ + delete(win->main_window); + return true; +} diff --git a/src/module/qt_window/mpvwidget_interface.hh b/src/module/qt_window/mpvwidget_interface.hh index ac5445626c24c22a7bb3b765cddced563466a607..f79eca9af847f25a72c97392c3e9fa2c16371919 100644 --- a/src/module/qt_window/mpvwidget_interface.hh +++ b/src/module/qt_window/mpvwidget_interface.hh @@ -12,3 +12,4 @@ bool ___module_qt_window_set_volume(struct module_qt_window_s *, int); bool ___module_qt_window_set_position(struct module_qt_window_s *, int); bool ___module_qt_window_load_file(struct module_qt_window_s *, const char *); bool ___module_qt_window_toggle_pause(struct module_qt_window_s *); +bool ___module_qt_window_close(struct module_qt_window_s *);