diff --git a/src/qt/dash.cpp b/src/qt/dash.cpp index b10ffeb3fb92..9e6d9395bbee 100644 --- a/src/qt/dash.cpp +++ b/src/qt/dash.cpp @@ -359,6 +359,12 @@ BitcoinApplication::~BitcoinApplication() delete paymentServer; paymentServer = 0; #endif + // Delete Qt-settings if user clicked on "Reset Options" + QSettings settings; + if(optionsModel->resetSettings){ + settings.clear(); + settings.sync(); + } delete optionsModel; optionsModel = 0; } diff --git a/src/qt/optionsmodel.cpp b/src/qt/optionsmodel.cpp index d086b076d694..e2f15ae74075 100644 --- a/src/qt/optionsmodel.cpp +++ b/src/qt/optionsmodel.cpp @@ -41,6 +41,7 @@ void OptionsModel::addOverriddenOption(const std::string &option) // Writes all missing QSettings with their default values void OptionsModel::Init() { + resetSettings = false; QSettings settings; // Ensure restart flag is unset on client startup @@ -151,6 +152,7 @@ void OptionsModel::Reset() // Remove all entries from our QSettings object settings.clear(); + resetSettings = true; // Needed in dash.cpp during shotdown to also remove the window positions // default setting for OptionsModel::StartAtStartup - disabled if (GUIUtil::GetStartOnSystemStartup()) diff --git a/src/qt/optionsmodel.h b/src/qt/optionsmodel.h index ad437fca6bde..4bd7d698c2ec 100644 --- a/src/qt/optionsmodel.h +++ b/src/qt/optionsmodel.h @@ -70,6 +70,7 @@ class OptionsModel : public QAbstractListModel /* Restart flag helper */ void setRestartRequired(bool fRequired); bool isRestartRequired(); + bool resetSettings; private: /* Qt-only settings */