commit a03301c55fa9ad713a788a93f3ee83a82681f826
parent 535956149a8a6b2801b434d2d00ecb3ba2e9bde1
Author: ThomasV <thomasv@electrum.org>
Date: Thu, 11 Feb 2016 12:54:04 +0100
kivy: button to show seed, and show error if trying to spend from watching only wallet
Diffstat:
3 files changed, 34 insertions(+), 0 deletions(-)
diff --git a/gui/kivy/main_window.py b/gui/kivy/main_window.py
@@ -706,6 +706,18 @@ class ElectrumWindow(App):
else:
apply(f, args + (None,))
+ def show_seed(self, label):
+ self.protected(self._show_seed, (label,))
+
+ def _show_seed(self, label, password):
+ print label, password
+ try:
+ seed = self.wallet.get_seed(password)
+ except:
+ self.show_error("Invalid PIN")
+ return
+ label.text = _('Seed') + ':\n' + seed
+
def change_password(self):
self.protected(self._change_password, ())
diff --git a/gui/kivy/uix/screens.py b/gui/kivy/uix/screens.py
@@ -272,6 +272,9 @@ class SendScreen(CScreen):
traceback.print_exc(file=sys.stdout)
self.app.show_error(str(e))
return
+ if not tx.is_complete():
+ self.app.show_info("Transaction is not complete")
+ return
# broadcast
ok, txid = self.app.wallet.sendtx(tx)
self.app.show_info(txid)
diff --git a/gui/kivy/uix/ui_screens/status.kv b/gui/kivy/uix/ui_screens/status.kv
@@ -67,5 +67,24 @@ Popup:
opacity: 1 if root.unmatured else 0
text_size: self.size
halign: 'left'
+ Label:
+ text: ''
+ id: seed_label
+ text_size: self.width, None
+ size: self.texture_size
Widget:
size_hint: None, 1
+ BoxLayout:
+ size_hint: 1, None
+ height: '48dp'
+ Button:
+ size_hint: 0.5, None
+ height: '48dp'
+ text: _('Hide seed') if seed_label.text else _('Show seed')
+ on_release:
+ setattr(seed_label, 'text', '') if seed_label.text else app.show_seed(seed_label)
+ Button:
+ size_hint: 0.5, None
+ height: '48dp'
+ text: _('Close')
+ on_release: root.dismiss()