From 4329a83fe605e901f54006334031199516a8adce Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Wed, 23 Mar 2022 16:19:46 -0400 Subject: [PATCH] HaikuDepot: Inherit from BWindow last so it is destroyed before everything else. This eliminates the need for the early deletion of certain controls. Part of #17579. --- src/apps/haikudepot/ui/MainWindow.cpp | 6 +----- src/apps/haikudepot/ui/MainWindow.h | 4 ++-- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/src/apps/haikudepot/ui/MainWindow.cpp b/src/apps/haikudepot/ui/MainWindow.cpp index 68a0c4547a..12c5c6b0f3 100644 --- a/src/apps/haikudepot/ui/MainWindow.cpp +++ b/src/apps/haikudepot/ui/MainWindow.cpp @@ -293,12 +293,8 @@ MainWindow::~MainWindow() fShuttingDownWindow->Quit(); } - // We must clear and delete these early to release references. + // We must clear the model early to release references. fModel.Clear(); - fFeaturedPackagesView->RemoveSelf(); - fPackageListView->RemoveSelf(); - delete fFeaturedPackagesView; - delete fPackageListView; } diff --git a/src/apps/haikudepot/ui/MainWindow.h b/src/apps/haikudepot/ui/MainWindow.h index 0499ceb8c9..10d16d4688 100644 --- a/src/apps/haikudepot/ui/MainWindow.h +++ b/src/apps/haikudepot/ui/MainWindow.h @@ -35,9 +35,9 @@ class ShuttingDownWindow; class WorkStatusView; -class MainWindow : public BWindow, private PackageInfoListener, +class MainWindow : private PackageInfoListener, private ProcessCoordinatorConsumer, public ProcessCoordinatorListener, - public UserDetailVerifierListener { + public UserDetailVerifierListener, public BWindow { public: MainWindow(const BMessage& settings); MainWindow(const BMessage& settings,