mirror of
https://github.com/monero-project/monero-gui.git
synced 2025-01-22 10:44:46 +00:00
Print wallet filename in password dialog where approrpiate
This commit is contained in:
parent
26abdee5c4
commit
b5a993bd8a
4 changed files with 23 additions and 5 deletions
|
@ -40,19 +40,28 @@ Window {
|
|||
modality: Qt.ApplicationModal
|
||||
flags: Qt.Window | Qt.FramelessWindowHint
|
||||
property alias password: passwordInput.text
|
||||
property string walletName
|
||||
|
||||
// same signals as Dialog has
|
||||
signal accepted()
|
||||
signal rejected()
|
||||
|
||||
|
||||
function open() {
|
||||
function open(walletName) {
|
||||
root.walletName = walletName ? walletName : ""
|
||||
show()
|
||||
}
|
||||
|
||||
function usefulName(path) {
|
||||
// arbitrary "short enough" limit
|
||||
if (path.length < 32)
|
||||
return path
|
||||
return path.replace(/.*[\/\\]/, '').replace(/\.keys$/, '')
|
||||
}
|
||||
|
||||
// TODO: implement without hardcoding sizes
|
||||
width: 480
|
||||
height: 200
|
||||
height: walletName ? 240 : 200
|
||||
|
||||
ColumnLayout {
|
||||
id: mainLayout
|
||||
|
@ -65,7 +74,7 @@ Window {
|
|||
Layout.alignment: Qt.AlignHCenter
|
||||
|
||||
Label {
|
||||
text: qsTr("Please enter wallet password")
|
||||
text: root.walletName.length > 0 ? qsTr("Please enter wallet password for:<br>") + usefulName(root.walletName) : qsTr("Please enter wallet password")
|
||||
Layout.alignment: Qt.AlignHCenter
|
||||
Layout.columnSpan: 2
|
||||
Layout.fillWidth: true
|
||||
|
|
4
main.qml
4
main.qml
|
@ -240,7 +240,7 @@ ApplicationWindow {
|
|||
console.log("closing wallet async : " + wallet.address)
|
||||
walletManager.closeWalletAsync(wallet)
|
||||
// try to open wallet with password;
|
||||
passwordDialog.open();
|
||||
passwordDialog.open(wallet.path);
|
||||
} else {
|
||||
// opening with password but password doesn't match
|
||||
console.error("Error opening wallet with password: ", wallet.errorString);
|
||||
|
@ -252,7 +252,7 @@ ApplicationWindow {
|
|||
walletManager.closeWalletAsync(wallet);
|
||||
informationPopup.open()
|
||||
informationPopup.onCloseCallback = function() {
|
||||
passwordDialog.open()
|
||||
passwordDialog.open(wallet.path)
|
||||
}
|
||||
}
|
||||
return;
|
||||
|
|
|
@ -112,6 +112,11 @@ QString Wallet::address() const
|
|||
return QString::fromStdString(m_walletImpl->address());
|
||||
}
|
||||
|
||||
QString Wallet::path() const
|
||||
{
|
||||
return QString::fromStdString(m_walletImpl->path());
|
||||
}
|
||||
|
||||
bool Wallet::store(const QString &path)
|
||||
{
|
||||
return m_walletImpl->store(path.toStdString());
|
||||
|
|
|
@ -31,6 +31,7 @@ class Wallet : public QObject
|
|||
Q_PROPERTY(TransactionHistory * history READ history)
|
||||
Q_PROPERTY(QString paymentId READ paymentId WRITE setPaymentId)
|
||||
Q_PROPERTY(TransactionHistorySortFilterModel * historyModel READ historyModel NOTIFY historyModelChanged)
|
||||
Q_PROPERTY(QString path READ path)
|
||||
|
||||
public:
|
||||
|
||||
|
@ -78,6 +79,9 @@ public:
|
|||
//! returns wallet's public address
|
||||
QString address() const;
|
||||
|
||||
//! returns wallet file's path
|
||||
QString path() const;
|
||||
|
||||
//! saves wallet to the file by given path
|
||||
//! empty path stores in current location
|
||||
Q_INVOKABLE bool store(const QString &path = "");
|
||||
|
|
Loading…
Reference in a new issue