diff --git a/src/sakia/gui/navigation/controller.py b/src/sakia/gui/navigation/controller.py index 605d2d9c3c14df4977662a3eebee1a680d001ebf..873677558c8c761d664e507906e4391a56bfad23 100644 --- a/src/sakia/gui/navigation/controller.py +++ b/src/sakia/gui/navigation/controller.py @@ -168,9 +168,15 @@ class NavigationController(QObject): copy_pubkey = QAction(menu.tr("Copy pubkey to clipboard"), menu.parent()) copy_pubkey.triggered.connect(lambda checked, c=raw_data['misc']['connection']: \ - NavigationModel.copy_pubkey_to_clipboard(c)) + NavigationModel.copy_pubkey_to_clipboard(c)) menu.addAction(copy_pubkey) + copy_pubkey_crc = QAction(menu.tr("Copy pubkey to clipboard (with CRC)"), menu.parent()) + copy_pubkey_crc.triggered.connect(lambda checked, + c=raw_data['misc']['connection']: \ + NavigationModel.copy_pubkey_to_clipboard_with_crc(c)) + menu.addAction(copy_pubkey_crc) + action_remove = QAction(self.tr("Remove the connection"), menu) menu.addAction(action_remove) action_remove.triggered.connect(lambda c: self.remove_connection(raw_data['misc']['connection'])) diff --git a/src/sakia/gui/navigation/model.py b/src/sakia/gui/navigation/model.py index d3bbc97c4a4ea7738a3a65523b7ddd1a3389c879..825b277bacaa1ca7f948461a045c73bd9bd0f6cc 100644 --- a/src/sakia/gui/navigation/model.py +++ b/src/sakia/gui/navigation/model.py @@ -2,6 +2,7 @@ from PyQt5.QtCore import QObject, pyqtSignal from PyQt5.QtWidgets import QApplication from sakia.models.generic_tree import GenericTreeModel from sakia.data.processors import ContactsProcessor +from duniterpy.documents.crc_pubkey import CRCPubkey class NavigationModel(QObject): @@ -225,4 +226,9 @@ class NavigationModel(QObject): @staticmethod def copy_pubkey_to_clipboard(connection): clipboard = QApplication.clipboard() - clipboard.setText(connection.pubkey) \ No newline at end of file + clipboard.setText(connection.pubkey) + + @staticmethod + def copy_pubkey_to_clipboard_with_crc(connection): + clipboard = QApplication.clipboard() + clipboard.setText(str(CRCPubkey.from_pubkey(connection.pubkey))) \ No newline at end of file diff --git a/src/sakia/gui/widgets/context_menu.py b/src/sakia/gui/widgets/context_menu.py index 52bf5714aa3125cc5dad5c0b3f236adaca63716f..4894e3b6dbaf7ccd249c4ca43b1614db21adf12b 100644 --- a/src/sakia/gui/widgets/context_menu.py +++ b/src/sakia/gui/widgets/context_menu.py @@ -101,6 +101,10 @@ class ContextMenu(QObject): copy_pubkey.triggered.connect(lambda checked, p=str_value: ContextMenu.copy_pubkey_to_clipboard(p)) menu.qmenu.addAction(copy_pubkey) + copy_pubkey = QAction(menu.qmenu.tr("Copy pubkey to clipboard (with CRC)"), menu.qmenu.parent()) + copy_pubkey.triggered.connect(lambda checked, p=str_value: ContextMenu.copy_pubkey_to_clipboard_with_crc(p)) + menu.qmenu.addAction(copy_pubkey) + if menu._connection.pubkey != str_value: send_money = QAction(menu.qmenu.tr("Send money"), menu.qmenu.parent()) send_money.triggered.connect(lambda checked, p=str_value: menu.send_money(p))