1
0

wallet: add get_label_for_address, and make get_label private

fixes https://github.com/spesmilo/electrum/issues/7919

In the past, when creating payment requests, we keyed them by on-chain address,
and set/saved the msg of the request as label for the address.
Many places in the code were calling wallet.get_label(addr) with the expectation that
relevant payment requests are found and their message/description (if any) is considered.

wallet.get_label(key) is now made private, and instead the explicit non-polymorphic
wallet.get_label_for_{address,rhash,txid} alternatives should be used.
This commit is contained in:
SomberNight
2022-08-09 17:13:44 +02:00
parent 9279463fae
commit 7b095158bf
13 changed files with 35 additions and 19 deletions

View File

@@ -2,7 +2,7 @@ import asyncio
import queue
import threading
import time
from typing import Optional
from typing import Optional, TYPE_CHECKING
from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QObject, QTimer
@@ -22,6 +22,10 @@ from .qetransactionlistmodel import QETransactionListModel
from .qetypes import QEAmount
from .util import QtEventListener, qt_event_listener
if TYPE_CHECKING:
from electrum.wallet import Abstract_Wallet
class QEWallet(AuthMixin, QObject, QtEventListener):
__instances = []
@@ -62,7 +66,7 @@ class QEWallet(AuthMixin, QObject, QtEventListener):
_synchronizing = False
_synchronizing_progress = ''
def __init__(self, wallet, parent=None):
def __init__(self, wallet: 'Abstract_Wallet', parent=None):
super().__init__(parent)
self.wallet = wallet