From cc3be95fcc316521f116239dbb5c88deee6b0c18 Mon Sep 17 00:00:00 2001 From: ThomasV Date: Tue, 17 May 2022 15:19:06 +0200 Subject: [PATCH] Receive tab: toggle QR code by clicking on receive widget --- electrum/gui/qt/main_window.py | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/electrum/gui/qt/main_window.py b/electrum/gui/qt/main_window.py index 04fa84478..12f5791ed 100644 --- a/electrum/gui/qt/main_window.py +++ b/electrum/gui/qt/main_window.py @@ -1089,7 +1089,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, Logger): d = LightningTxDialog(self, tx_item) d.show() - def toggle_receive_qr(self, toggle=False): + def toggle_receive_qr(self, e): b = not self.config.get('receive_qr_visible', False) self.config.set_key('receive_qr_visible', b) self.update_receive_widgets() @@ -1223,18 +1223,21 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, Logger): receive_lightning_widget = QWidget() receive_lightning_widget.setLayout(receive_lightning_layout) + self.receive_address_e.setFocusPolicy(Qt.NoFocus) + self.receive_address_e.mousePressEvent = self.toggle_receive_qr + self.receive_address_qr.mousePressEvent = self.toggle_receive_qr + self.receive_URI_e.setFocusPolicy(Qt.NoFocus) + self.receive_URI_e.mousePressEvent = self.toggle_receive_qr + self.receive_URI_qr.mousePressEvent = self.toggle_receive_qr + self.receive_lightning_e.setFocusPolicy(Qt.NoFocus) + self.receive_lightning_e.mousePressEvent = self.toggle_receive_qr + self.receive_lightning_qr.mousePressEvent = self.toggle_receive_qr + self.receive_tabs.addTab(receive_URI_widget, read_QIcon("link.png"), _('URI')) self.receive_tabs.addTab(receive_address_widget, read_QIcon("bitcoin.png"), _('Address')) self.receive_tabs.addTab(receive_lightning_widget, read_QIcon("lightning.png"), _('Lightning')) - self.receive_tabs.setToolTip(_('Click tabs to switch between text and QR code view')) - def on_current_changed(index): - self.update_receive_qr_window() - def on_tab_bar_clicked(index): - w = self.receive_tabs.widget(index) - if w == self.receive_tabs.currentWidget() and self.receive_tabs.isTabEnabled(index): - self.toggle_receive_qr() - self.receive_tabs.tabBarClicked.connect(on_tab_bar_clicked) - self.receive_tabs.currentChanged.connect(on_current_changed) + self.receive_tabs.setToolTip(_('Click to switch between text and QR code view')) + self.receive_tabs.currentChanged.connect(self.update_receive_qr_window) self.receive_tabs.setCurrentIndex(self.config.get('receive_tabs_index', 0)) self.receive_tabs.currentChanged.connect(lambda i: self.config.set_key('receive_tabs_index', i)) receive_tabs_sp = self.receive_tabs.sizePolicy()