Unfortunately we have no way to directly destroy or remove the
lambdas embedded in the QShortcut objects, so this is the
only solution to avoid leaking references. As the QShortcut
objects have the window as parent, they are destroyed with the
window so dangling refs to the destroyed window can't happen.
This and 91349d109efix#1549.
Other wallets, such as Mycelium, do not allow the user to simply copy
and paste the seed. This is very useful to assure users follow
directions on the next screen, because previously it was easily possible
to just copy the seed and paste it on the next screen. The user's wallet
would work well for a while like this, but without having the seed
written down it's more of a ticking time bomb than a wallet.
I recommend pulling this patch as I have read many cases where users do
not write the seed down, and I believe that the main cause is lack of
friction forcing them to do so.
This patch was inspired by reading this Reddit conversation:
https://www.reddit.com/r/Bitcoin/comments/3p4bq1/electrum_v25/cw380kg
But I'm not a participant in that convo.
It's long been a pet peeve of mine that whilst editing a label,
something would cause Electrum to refresh the widget, such as
an incoming tx or a new block, and you'd lose your edits.
This changes MyTreeWidget so that, if editing, updates are
deferred until editing finishes.
Gets rid of need for EditableItem class.
New callback on_permit_edit to permit widgets to refuse editing.
Restores popup menu on activating a non-editable column behaviour.