From 5714ae44456bc26ea28fdbae4c5fab989356a31f Mon Sep 17 00:00:00 2001 From: Edric Milaret <edric.ladent-milaret@savoirfairelinux.com> Date: Wed, 7 Sep 2016 15:51:41 -0400 Subject: [PATCH] connectivity: monitor changes Reload accounts when network changes Change-Id: Id5f19a0974ab45c96eadc2a87615d95d0cce4b17 Tuleap: #1011 --- RingWinClient.pro | 5 +++-- mainwindow.cpp | 6 ++++++ mainwindow.h | 2 ++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/RingWinClient.pro b/RingWinClient.pro index 1acfc1f..c1cb633 100644 --- a/RingWinClient.pro +++ b/RingWinClient.pro @@ -6,7 +6,7 @@ QT += core gui -greaterThan(QT_MAJOR_VERSION, 4): QT += widgets svg xml +greaterThan(QT_MAJOR_VERSION, 4): QT += widgets svg xml network win32: QT += winextras @@ -227,7 +227,8 @@ win32 { QTRUNTIME.files = $$RUNTIMEDIR/Qt5Core.dll $$RUNTIMEDIR/Qt5Widgets.dll \ $$RUNTIMEDIR/Qt5Gui.dll $$RUNTIMEDIR/Qt5Svg.dll \ - $$RUNTIMEDIR/Qt5Xml.dll $$RUNTIMEDIR/Qt5WinExtras.dll + $$RUNTIMEDIR/Qt5Xml.dll $$RUNTIMEDIR/Qt5WinExtras.dll \ + $$RUNTIMEDIR/Qt5Network.dll QTRUNTIME.path = $$OUT_PWD/release QTDEPSRUNTIME.files = $$RUNTIMEDIR/zlib1.dll \ diff --git a/mainwindow.cpp b/mainwindow.cpp index 0e034c3..ee86312 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -120,6 +120,12 @@ MainWindow::MainWindow(QWidget* parent) : settings.setValue(SettingsKey::enableNotifications, true); } connect(&GlobalSystemTray::instance(), SIGNAL(messageClicked()), this, SLOT(notificationClicked())); + + connect(&netManager_, &QNetworkConfigurationManager::onlineStateChanged, [=](bool online) { + Q_UNUSED(online) + AccountModel::instance().slotConnectivityChanged(); + }); + } MainWindow::~MainWindow() diff --git a/mainwindow.h b/mainwindow.h index dafad35..7eecdee 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -22,6 +22,7 @@ #include <QMainWindow> #include <QMouseEvent> +#include <QNetworkConfigurationManager> #include "navstack.h" @@ -60,4 +61,5 @@ private: ~MainWindow(); Ui::MainWindow* ui; NavStack* navStack_; + QNetworkConfigurationManager netManager_; }; -- GitLab