mirror of
https://github.com/monero-project/monero-gui.git
synced 2024-11-16 15:58:11 +00:00
Merge pull request #706
f00a181
Disable rescan cache btn until we know if it's needed (Jaquee)98b0406
Settings: Rescan wallet cache button (Jaquee)
This commit is contained in:
commit
f5450f9205
3 changed files with 59 additions and 0 deletions
|
@ -121,6 +121,43 @@ Rectangle {
|
|||
settingsPasswordDialog.open();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Rescan cache - Disabled until we know it's needed
|
||||
|
||||
StandardButton {
|
||||
id: rescanWalletbutton
|
||||
shadowReleasedColor: "#FF4304"
|
||||
shadowPressedColor: "#B32D00"
|
||||
releasedColor: "#FF6C3C"
|
||||
pressedColor: "#FF4304"
|
||||
text: qsTr("Rescan wallet cache") + translationManager.emptyString
|
||||
onClicked: {
|
||||
// Show confirmation dialog
|
||||
confirmationDialog.title = qsTr("Rescan wallet cache") + translationManager.emptyString;
|
||||
confirmationDialog.text = qsTr("Are you sure you want to rebuild the wallet cache?\n"
|
||||
+ "The following information will be deleted\n"
|
||||
+ "- Recipient addresses\n"
|
||||
+ "- Tx keys\n"
|
||||
+ "- Tx descriptions\n\n"
|
||||
+ "The old wallet cache file will be renamed and can be restored later.\n"
|
||||
);
|
||||
confirmationDialog.icon = StandardIcon.Question
|
||||
confirmationDialog.cancelText = qsTr("Cancel")
|
||||
confirmationDialog.onAcceptedCallback = function() {
|
||||
walletManager.closeWallet();
|
||||
walletManager.clearWalletCache(persistentSettings.wallet_path);
|
||||
walletManager.openWalletAsync(persistentSettings.wallet_path, appWindow.password,
|
||||
persistentSettings.testnet);
|
||||
}
|
||||
|
||||
confirmationDialog.onRejectedCallback = null;
|
||||
|
||||
confirmationDialog.open()
|
||||
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
//! Manage daemon
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
#include <QtConcurrent/QtConcurrent>
|
||||
#include <QMutex>
|
||||
#include <QMutexLocker>
|
||||
#include <QString>
|
||||
|
||||
WalletManager * WalletManager::m_instance = nullptr;
|
||||
|
||||
|
@ -338,6 +339,24 @@ QString WalletManager::checkUpdates(const QString &software, const QString &subd
|
|||
return QString::fromStdString(std::get<1>(result) + "|" + std::get<2>(result) + "|" + std::get<3>(result) + "|" + std::get<4>(result));
|
||||
}
|
||||
|
||||
bool WalletManager::clearWalletCache(const QString &wallet_path) const
|
||||
{
|
||||
|
||||
QString fileName = wallet_path;
|
||||
// Make sure wallet file is not .keys
|
||||
fileName.replace(".keys","");
|
||||
QFile walletCache(fileName);
|
||||
QString suffix = ".old_cache";
|
||||
QString newFileName = fileName + suffix;
|
||||
|
||||
// create unique file name
|
||||
for (int i = 1; QFile::exists(newFileName); i++) {
|
||||
newFileName = QString("%1%2.%3").arg(fileName).arg(suffix).arg(i);
|
||||
}
|
||||
|
||||
return walletCache.rename(newFileName);
|
||||
}
|
||||
|
||||
WalletManager::WalletManager(QObject *parent) : QObject(parent)
|
||||
{
|
||||
m_pimpl = Monero::WalletManagerFactory::getWalletManager();
|
||||
|
|
|
@ -136,6 +136,9 @@ public:
|
|||
Q_INVOKABLE bool saveQrCode(const QString &, const QString &) const;
|
||||
Q_INVOKABLE QString checkUpdates(const QString &software, const QString &subdir) const;
|
||||
|
||||
// clear/rename wallet cache
|
||||
Q_INVOKABLE bool clearWalletCache(const QString &fileName) const;
|
||||
|
||||
signals:
|
||||
|
||||
void walletOpened(Wallet * wallet);
|
||||
|
|
Loading…
Reference in a new issue