[gnome-keysign: 5/16] send: show an infobar with the signature import result
- From: Tobias Mueller <tobiasmue src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-keysign: 5/16] send: show an infobar with the signature import result
- Date: Wed, 7 Aug 2019 09:49:23 +0000 (UTC)
commit 78e813103444a0a6e06bea3a7a6c5b3071996a39
Author: RyuzakiKK <aasonykk gmail com>
Date: Sat Mar 2 10:29:04 2019 +0100
send: show an infobar with the signature import result
keysign/keylistwidget.py | 1 +
keysign/send.py | 22 ++++++++++++++++++++++
keysign/send.ui | 2 +-
3 files changed, 24 insertions(+), 1 deletion(-)
---
diff --git a/keysign/keylistwidget.py b/keysign/keylistwidget.py
index f9c853e..86a8719 100755
--- a/keysign/keylistwidget.py
+++ b/keysign/keylistwidget.py
@@ -139,6 +139,7 @@ class KeyListWidget(Gtk.HBox):
self.ib = builder.get_object('infobar_internet')
fix_infobar(self.ib)
self.label_ib = builder.get_object('label_internet')
+ self.image_ib = builder.get_object('image_ib')
if len(list(keys)) <= 0:
infobar = builder.get_object("infobar")
diff --git a/keysign/send.py b/keysign/send.py
index b1bdb07..90b5c2f 100644
--- a/keysign/send.py
+++ b/keysign/send.py
@@ -108,6 +108,11 @@ class SendApp:
self.label.drag_dest_add_uri_targets()
def on_drag_data_received(self, widget, drag_context, x, y, data, info, time):
+ if self.notify is not None:
+ log.debug("We are trying to send a key, no imports at this stage")
+ return
+
+ self.klw.ib.hide()
filename = data.get_text()
# If we don't have a filename it means that the user maybe dropped
# an attachment or an entire email.
@@ -124,8 +129,10 @@ class SendApp:
try:
for signature in signatures:
gpgmeh.import_signature(signature)
+ self.signature_imported()
except errors.GPGMEError as e:
log.error(e)
+ self.signature_import_error()
@inlineCallbacks
def on_key_activated(self, widget, key):
@@ -188,16 +195,31 @@ class SendApp:
self.show_result(success, message)
def slow_connection(self):
+ self.klw.image_ib.set_from_icon_name(Gtk.STOCK_DIALOG_WARNING, Gtk.IconSize.BUTTON)
self.klw.label_ib.set_label(_("Still trying to get a connection to the Internet. "
"It appears to be slow or unavailable."))
self.klw.ib.show()
log.info("Slow Internet connection")
def no_connection(self):
+ self.klw.image_ib.set_from_icon_name(Gtk.STOCK_DIALOG_WARNING, Gtk.IconSize.BUTTON)
self.klw.label_ib.set_label(_("There isn't an Internet connection!"))
self.klw.ib.show()
log.info("No Internet connection")
+ def signature_imported(self):
+ self.klw.image_ib.set_from_icon_name(Gtk.STOCK_OK, Gtk.IconSize.BUTTON)
+ self.klw.label_ib.set_label(_("The signature has been successfully imported!"))
+ self.klw.ib.show()
+ log.info("Signature imported")
+
+ def signature_import_error(self):
+ self.klw.image_ib.set_from_icon_name(Gtk.STOCK_DIALOG_ERROR, Gtk.IconSize.BUTTON)
+ self.klw.label_ib.set_label(_("An error occurred while trying to import the signature.\n"
+ "Please double check the correctness of the chosen signature."))
+ self.klw.ib.show()
+ log.info("Signature import error")
+
def create_keypresent(self, discovery_code, discovery_data):
self._deactivate_timer()
log.info("Use this for discovering the other key: %r", discovery_data)
diff --git a/keysign/send.ui b/keysign/send.ui
index b7cf5de..7610c0d 100644
--- a/keysign/send.ui
+++ b/keysign/send.ui
@@ -141,7 +141,7 @@ Please use, e.g. Seahorse to create one.</property>
</packing>
</child>
<child>
- <object class="GtkImage">
+ <object class="GtkImage" id="image_ib">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="stock">gtk-dialog-warning</property>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]