@@ -135,7 +135,7 @@ async def _show_qr(self, stream, meta, *args, **kwargs):
135135 with open (stream , "rb" ) as f :
136136 await self ._show_qr (f , meta , * args , ** kwargs )
137137 return
138- qrfmt = 0
138+ qrfmt = 1 # always offer simple text animation for qr codes
139139 start = stream .read (4 )
140140 stream .seek (- len (start ), 1 )
141141 if start in [b"cHNi" , b"cHNl" ]: # convert from base64 for QR encoder
@@ -145,6 +145,7 @@ async def _show_qr(self, stream, meta, *args, **kwargs):
145145 await self ._show_qr (f , meta , * args , ** kwargs )
146146 return
147147 if start in [b"psbt" , b"pset" ]:
148+ # psbt has more options for QR format
148149 qrfmt = await self .manager .gui .menu (buttons = [
149150 (1 , "Text" ),
150151 (2 , "Crypto-psbt" ),
@@ -154,16 +155,17 @@ async def _show_qr(self, stream, meta, *args, **kwargs):
154155 title = meta .get ("title" , "Your data:" )
155156 note = meta .get ("note" )
156157 msg = ""
157- if qrfmt == 0 : # not psbt
158- res = stream .read ().decode ()
159- msg = meta .get ("message" , res )
160- await self .manager .gui .qr_alert (title , msg , res , note = note , qr_width = 480 )
158+ # if qrfmt == 0: # not psbt
159+ # res = stream.read().decode()
160+ # msg = meta.get("message", res)
161+ # await self.manager.gui.qr_alert(title, msg, res, note=note, qr_width=480)
161162 EncoderCls = None
162163 if qrfmt == 1 :
163164 from qrencoder import Base64QREncoder as EncoderCls
164165 elif qrfmt == 2 : # we need binary
165166 from qrencoder import CryptoPSBTEncoder as EncoderCls
166167 elif qrfmt == 3 :
167168 from qrencoder import LegacyBCUREncoder as EncoderCls
168- with EncoderCls (stream , tempfile = self .path + "/qrtmp" ) as enc :
169- await self .manager .gui .qr_alert (title , msg , enc , note = note , qr_width = 480 )
169+ if EncoderCls is not None :
170+ with EncoderCls (stream , tempfile = self .path + "/qrtmp" ) as enc :
171+ await self .manager .gui .qr_alert (title , msg , enc , note = note , qr_width = 480 )
0 commit comments