From 24b6ae775775d16579815eeabd5797355d1b6896 Mon Sep 17 00:00:00 2001 From: ThomasV Date: Mon, 3 Nov 2014 16:50:08 +0100 Subject: [PATCH 1/3] GUI: emit textEdited signal when setting amount in URI --- gui/qt/main_window.py | 1 + 1 file changed, 1 insertion(+) diff --git a/gui/qt/main_window.py b/gui/qt/main_window.py index 9e770c8ed..22f97194e 100644 --- a/gui/qt/main_window.py +++ b/gui/qt/main_window.py @@ -1243,6 +1243,7 @@ class ElectrumWindow(QMainWindow): self.message_e.setText(message) if amount: self.amount_e.setAmount(amount) + self.amount_e.textEdited.emit("") return from electrum import paymentrequest From fb75e2e53d516e96840abc83dbba85a7807ebb8e Mon Sep 17 00:00:00 2001 From: ThomasV Date: Tue, 4 Nov 2014 10:50:28 +0100 Subject: [PATCH 2/3] fix get_private_key_from_xpubkey --- lib/wallet.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/wallet.py b/lib/wallet.py index cef94f290..697d5cf0a 100644 --- a/lib/wallet.py +++ b/lib/wallet.py @@ -780,7 +780,6 @@ class Abstract_Wallet(object): x_pubkeys = tx.inputs_to_sign() for x in x_pubkeys: sec = self.get_private_key_from_xpubkey(x, password) - print "sec", sec if sec: keypairs[ x ] = sec if keypairs: @@ -1020,10 +1019,12 @@ class Abstract_Wallet(object): return self.get_private_key(addr, password)[0] elif x_pubkey[0:2] == 'ff': xpub, sequence = BIP32_Account.parse_xpubkey(x_pubkey) - for k, account in self.accounts.items(): - if xpub in account.get_master_pubkeys(): - pk = account.get_private_key(sequence, self, password) - return pk[0] + for k, v in self.master_public_keys.items(): + if v == xpub: + xprv = self.get_master_private_key(k, password) + if xprv: + _, _, _, c, k = deserialize_xkey(xprv) + return bip32_private_key(sequence, k, c) elif x_pubkey[0:2] == 'fe': xpub, sequence = OldAccount.parse_xpubkey(x_pubkey) for k, account in self.accounts.items(): From 66c652eb5191a5d2eb87a0ff9ce82cb03565f3b0 Mon Sep 17 00:00:00 2001 From: ThomasV Date: Tue, 4 Nov 2014 16:23:11 +0100 Subject: [PATCH 3/3] fixes for plugin integration --- gui/qt/main_window.py | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/gui/qt/main_window.py b/gui/qt/main_window.py index 22f97194e..b0c49353c 100644 --- a/gui/qt/main_window.py +++ b/gui/qt/main_window.py @@ -1274,7 +1274,7 @@ class ElectrumWindow(QMainWindow): self.payto_help.set_alt(None) self.set_pay_from([]) self.update_status() - + run_hook('do_clear') def set_addrs_frozen(self,addrs,freeze): @@ -2723,7 +2723,7 @@ class ElectrumWindow(QMainWindow): def plugins_dialog(self): from electrum.plugins import plugins - d = QDialog(self) + self.pluginsdialog = d = QDialog(self) d.setWindowTitle(_('Electrum Plugins')) d.setModal(1) @@ -2774,15 +2774,12 @@ class ElectrumWindow(QMainWindow): cb.clicked.connect(mk_toggle(cb,p,w)) grid.addWidget(HelpButton(p.description()), i, 2) except Exception: - print_msg(_("Error: cannot display plugin"), p) + print_msg("Error: cannot display plugin", p) traceback.print_exc(file=sys.stdout) grid.setRowStretch(i+1,1) - vbox.addLayout(close_button(d)) - d.exec_() - def show_account_details(self, k): account = self.wallet.accounts[k]