From 79d38b387fc89fba332c316cce197ac07289d685 Mon Sep 17 00:00:00 2001 From: skyjake Date: Fri, 31 Aug 2012 22:51:33 +0300 Subject: [PATCH] Updater: Center the notification dialog after mode change --- .../portable/src/updater/updateavailabledialog.cpp | 12 ++++++++++++ .../portable/src/updater/updateavailabledialog.h | 1 + 2 files changed, 13 insertions(+) diff --git a/doomsday/engine/portable/src/updater/updateavailabledialog.cpp b/doomsday/engine/portable/src/updater/updateavailabledialog.cpp index 5394393f1b..0d433657db 100644 --- a/doomsday/engine/portable/src/updater/updateavailabledialog.cpp +++ b/doomsday/engine/portable/src/updater/updateavailabledialog.cpp @@ -25,8 +25,10 @@ #include "updatersettingsdialog.h" #include "versioninfo.h" #include "window.h" +#include #include #include +#include #include #include #include @@ -235,6 +237,8 @@ UpdateAvailableDialog::UpdateAvailableDialog(const VersionInfo& latestVersion, d { d = new Instance(this, latestVersion); d->changeLog = changeLogUri; + + connect(DENG2_APP, SIGNAL(displayModeChanged()), this, SLOT(recenterDialog())); } UpdateAvailableDialog::~UpdateAvailableDialog() @@ -272,3 +276,11 @@ void UpdateAvailableDialog::editSettings() emit checkAgain(); } } + +void UpdateAvailableDialog::recenterDialog() +{ + LOG_DEBUG("Recentering the updater notification dialog."); + + QRect screen = QApplication::desktop()->screenGeometry(0); + move(screen.center() - rect().center()); +} diff --git a/doomsday/engine/portable/src/updater/updateavailabledialog.h b/doomsday/engine/portable/src/updater/updateavailabledialog.h index feb6d6619f..fd14c465ed 100644 --- a/doomsday/engine/portable/src/updater/updateavailabledialog.h +++ b/doomsday/engine/portable/src/updater/updateavailabledialog.h @@ -44,6 +44,7 @@ public slots: void neverCheckToggled(bool); void showWhatsNew(); void editSettings(); + void recenterDialog(); signals: void checkAgain();