From 693b00008d957f3fae475eec2bcc559d41193879 Mon Sep 17 00:00:00 2001
From: Inso <insomniak.fr@gmail.com>
Date: Sun, 17 Jan 2016 16:44:51 +0100
Subject: [PATCH] Fix bug #322

Disable buttonbox while broadcasting certification/send
---
 src/sakia/gui/certification.py | 3 +++
 src/sakia/gui/transfer.py      | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/src/sakia/gui/certification.py b/src/sakia/gui/certification.py
index c79a9646..87a9874f 100644
--- a/src/sakia/gui/certification.py
+++ b/src/sakia/gui/certification.py
@@ -54,6 +54,7 @@ class CertificationDialog(QDialog, Ui_CertificationDialog):
     @asyncify
     @asyncio.coroutine
     def accept(self):
+        self.button_box.setEnabled(False)
         if self.radio_contact.isChecked():
             for contact in self.account.contacts:
                 if contact['name'] == self.combo_contact.currentText():
@@ -64,6 +65,7 @@ class CertificationDialog(QDialog, Ui_CertificationDialog):
 
         password = yield from self.password_asker.async_exec()
         if password == "":
+            self.button_box.setEnabled(True)
             return
         QApplication.setOverrideCursor(Qt.WaitCursor)
         result = yield from self.account.certify(password, self.community, pubkey)
@@ -85,6 +87,7 @@ class CertificationDialog(QDialog, Ui_CertificationDialog):
                                           self.tr("Could not broadcast certification : {0}"
                                                                 .format(result[1])))
             QApplication.restoreOverrideCursor()
+            self.button_box.setEnabled(True)
 
     def change_current_community(self, index):
         self.community = self.account.communities[index]
diff --git a/src/sakia/gui/transfer.py b/src/sakia/gui/transfer.py
index 25efea07..10d7e83e 100644
--- a/src/sakia/gui/transfer.py
+++ b/src/sakia/gui/transfer.py
@@ -93,6 +93,7 @@ class TransferMoneyDialog(QDialog, Ui_TransferMoneyDialog):
     @asyncify
     @asyncio.coroutine
     def accept(self):
+        self.button_box.setEnabled(False)
         comment = self.edit_message.text()
 
         if self.radio_contact.isChecked():
@@ -108,6 +109,7 @@ class TransferMoneyDialog(QDialog, Ui_TransferMoneyDialog):
             yield from QAsyncMessageBox.critical(self, self.tr("Money transfer"),
                                  self.tr("No amount. Please give the transfert amount"),
                                  QMessageBox.Ok)
+            self.button_box.setEnabled(True)
             return
 
         password = yield from self.password_asker.async_exec()
@@ -139,6 +141,7 @@ class TransferMoneyDialog(QDialog, Ui_TransferMoneyDialog):
                 yield from QAsyncMessageBox.critical(self, self.tr("Transfer"), result[1])
 
             QApplication.restoreOverrideCursor()
+            self.button_box.setEnabled(True)
 
     @asyncify
     @asyncio.coroutine
-- 
GitLab