diff --git a/profile-widget/profilewidget2.cpp b/profile-widget/profilewidget2.cpp index 0b126e6b6..310652b75 100644 --- a/profile-widget/profilewidget2.cpp +++ b/profile-widget/profilewidget2.cpp @@ -1351,7 +1351,8 @@ void ProfileWidget2::deleteCurrentDC() mark_divelist_changed(true); // we need to force it since it's likely the same dive and same dc_number - but that's a different dive computer now MainWindow::instance()->graphics()->plotDive(0, true); - MainWindow::instance()->refreshDisplay(); + + emit refreshDisplay(true); } void ProfileWidget2::makeFirstDC() @@ -1363,7 +1364,7 @@ void ProfileWidget2::makeFirstDC() // dive list may change). // As a side benefit, this returns focus to the dive list. dc_number = 0; - MainWindow::instance()->refreshDisplay(); + emit refreshDisplay(true); } void ProfileWidget2::hideEvents() diff --git a/profile-widget/profilewidget2.h b/profile-widget/profilewidget2.h index c102bbcf3..5fc6e8d4b 100644 --- a/profile-widget/profilewidget2.h +++ b/profile-widget/profilewidget2.h @@ -92,6 +92,7 @@ signals: void showError(); void enableShortcuts(); void disableShortcuts(bool paste); + void refreshDisplay(bool recreateDivelist); public slots: // Necessary to call from QAction's signals. diff --git a/subsurface-desktop-main.cpp b/subsurface-desktop-main.cpp index bbe602848..fed774303 100644 --- a/subsurface-desktop-main.cpp +++ b/subsurface-desktop-main.cpp @@ -90,6 +90,7 @@ int main(int argc, char **argv) QObject::connect(m->graphics(), &ProfileWidget2::showError, m, &MainWindow::showError, Qt::AutoConnection); QObject::connect(m->graphics(), &ProfileWidget2::disableShortcuts, m, &MainWindow::disableShortcuts, Qt::AutoConnection); QObject::connect(m->graphics(), &ProfileWidget2::enableShortcuts, m, &MainWindow::enableShortcuts, Qt::AutoConnection); + QObject::connect(m->graphics(), &ProfileWidget2::refreshDisplay, m, &MainWindow::refreshDisplay, Qt::AutoConnection); if (verbose > 0) print_files(); if (!quit)