Commit graph

304 commits

Author SHA1 Message Date
Andrea Bonel
60b913e341 Elements-qt: Correctly display the amount in the sender's wallet after using Send button 2022-08-31 19:12:50 -03:00
Andrew Poelstra
65d3a13da4 Merge 9795e8ec8c into merged_master (Bitcoin PR bitcoin/bitcoin#22214) 2021-07-25 01:01:39 +00:00
Andrew Poelstra
1756fb7e5a Merge 68a89d7a46 into merged_master (Bitcoin PR bitcoin-core/gui#4) 2021-07-23 16:10:31 +00:00
Andrew Poelstra
18986689be Merge 907d636e5e into merged_master (Bitcoin PR bitcoin/bitcoin#21353) 2021-07-21 20:30:59 +00:00
Andrew Poelstra
3850e85010 Merge 32f1f021bf into merged_master (Bitcoin PR bitcoin/bitcoin#21817) 2021-07-07 02:29:25 +00:00
Andrew Poelstra
21e1034f55 Merge 03ecceedf6 into merged_master (Bitcoin PR #260) 2021-06-30 13:18:45 +00:00
Andrew Poelstra
9a3b7cda65 Merge 2c0fc856a6 into merged_master (Bitcoin PR #20464) 2021-06-20 19:00:02 +00:00
Andrew Poelstra
11536a9758 Merge e130ff38c9 into merged_master (Bitcoin PR bitcoin-core/gui#183) 2021-06-18 22:36:56 +00:00
Andrew Poelstra
16115f0d29 Merge d38e2d9a19 into merged_master (Bitcoin PR bitcoin-core/gui#186) 2021-06-18 22:07:16 +00:00
Russell Yanofsky
f47e802839 Rearrange fillPSBT arguments
Move fillPSBT input-output argument before output-only arguments. This is a
temporary workaround which can go away with improvements to libmultiprocess
code generator. Currently code generator figures out order of input-output
parameters by looking at input list, but it would make more sense for it to
take order from output list, so input-only parameters still have to be first
but there is more flexibility for the other parameters.
2021-06-10 10:58:45 -04:00
Samuel Dobson
68a89d7a46
Merge bitcoin-core/gui#4: UI external signer support (e.g. hardware wallet)
1c4b456e1a gui: send using external signer (Sjors Provoost)
24815c6309 gui: wallet creation detects external signer (Sjors Provoost)
3f845ea299 node: add externalSigners to interface (Sjors Provoost)
62ac119f91 gui: display address on external signer (Sjors Provoost)
450cb40a34 wallet: add displayAddress to interface (Sjors Provoost)
eef8d64529 gui: create wallet with external signer (Sjors Provoost)
6cdbc83e93 gui: add external signer path to options dialog (Sjors Provoost)

Pull request description:

  Big picture overview in [this gist](https://gist.github.com/Sjors/29d06728c685e6182828c1ce9b74483d).

  This PR adds GUI support for external signers, based on the since merged bitcoin/bitcoin#16546 (RPC).

  The UX isn't amazing - especially the blocking calls - but it works.

  First we adds a GUI setting for the signer script (e.g. path to HWI):

  <img width="625" alt="Schermafbeelding 2019-08-05 om 19 32 59" src="https://user-images.githubusercontent.com/10217/62483415-e1ff1680-b7b7-11e9-97ca-8d2ce54ca1cb.png">

  Then we add an external signer checkbox to the wallet creation dialog:

  <img width="374" alt="Schermafbeelding 2019-11-07 om 19 17 23" src="https://user-images.githubusercontent.com/10217/68416387-b57ee000-0194-11ea-9730-127d60273008.png">

  It's checked by default if HWI detects a device. It also grabs the name. It then creates a fresh wallet and imports the keys.

  You can verify an address on the device (blocking...):
  <img width="673" alt="Schermafbeelding 2019-08-05 om 19 29 22" src="https://user-images.githubusercontent.com/10217/62483560-43bf8080-b7b8-11e9-9902-8a036116dc4b.png">

  Sending, including coin selection, Just Works(tm) as long the device is present.

  ~External signer support is enabled by default when the GUI is configured and Boost::Process is present.~

  External signer support remains disabled by default, see https://github.com/bitcoin/bitcoin/pull/21935.

ACKs for top commit:
  achow101:
    Code Review ACK 1c4b456e1a
  hebasto:
    ACK 1c4b456e1a, tested on Linux Mint 20.1 (Qt 5.12.8) with HWW `2.0.2-rc.1`.
  promag:
    Tested ACK 1c4b456e1a but rebased with e033ca1379, with HWI 2.0.2, with Nano S and Nano X.
  meshcollider:
    re-code-review ACK 1c4b456e1a

Tree-SHA512: 3503113c5c69d40adb6ce364d8e7cae23ce82d032a00474ba9aeb6202eb70f496ef4a6bf2e623e5171e524ad31ade7941a4e0e89539c64518aaec74f4562d86b
2021-06-09 18:59:59 +12:00
W. J. van der Laan
907d636e5e
Merge bitcoin/bitcoin#21353: interfaces: Stop exposing wallet destdata to gui
f5ba424cd4 wallet: Add IsAddressUsed / SetAddressUsed methods (Russell Yanofsky)
62252c95e5 interfaces: Stop exposing wallet destdata to gui (Russell Yanofsky)
985430d9b2 test: Add gui test for wallet receive requests (Russell Yanofsky)

Pull request description:

  Stop giving GUI access to destdata rows in database. Replace with narrow API just for saving and reading receive request information.

  This simplifies code and should prevent the GUI from interfering with other destdata like address-used status. It also adds some more GUI test coverage.

  There are no changes in behavior.

ACKs for top commit:
  jarolrod:
    tACK f5ba424cd4
  laanwj:
    Code review ACK f5ba424cd4

Tree-SHA512: 5423df4786e537a59013cb5bfb9e1bc29a7ca4b8835360c00cc2165a59f925fdc355907a4ceb8bca0285bb4946ba235bffa7645537a951ad03fd3b4cee17b6b0
2021-06-03 15:57:30 +02:00
Sjors Provoost
62ac119f91
gui: display address on external signer 2021-05-27 14:01:54 +02:00
Andrew Poelstra
fe47385795 Merge 54532f46c4 into merged_master (Bitcoin PR bitcoin-core/gui#109) 2021-05-06 16:33:09 +00:00
MarcoFalke
fac30eec42
refactor: Replace &foo[0] with foo.data() 2021-05-04 06:55:31 +02:00
Hennadii Stepanov
bc00e13bc8
qt: Handle exceptions in WalletModel::pollBalanceChanged slot
Actually, the private QTimer::timeout signal has one
QTimer::QPrivateSignal parameter.
2021-04-05 16:47:08 +03:00
Russell Yanofsky
62252c95e5 interfaces: Stop exposing wallet destdata to gui
Stop giving GUI access to destdata rows in database. Replace with narrow
API just for saving and reading receive request information.

This simplifies code and should prevent the GUI from interfering with
other destdata like address-used status.

Note: No user-visible behavior is changing in this commit. New
CWallet::SetAddressReceiveRequest() implementation avoids a bug in
CWallet::AddDestData() where a modification would leave the previous
value in memory while writing the new value to disk. But it doesn't
matter because the GUI doesn't currently expose the ability to modify
receive requests, only to add and erase them.
2021-03-03 10:19:35 -04:00
Wladimir J. van der Laan
2c0fc856a6
Merge #20464: refactor: Treat CDataStream bytes as uint8_t
fa29272459 Remove redundant MakeUCharSpan wrappers (MarcoFalke)
faf4aa2f47 Remove CDataStream::Init in favor of C++11 member initialization (MarcoFalke)
fada14b948 Treat CDataStream bytes as uint8_t (MarcoFalke)
fa8bdb048e refactor: Drop CDataStream constructors in favor of one taking a Span of bytes (MarcoFalke)
faa96f841f Remove unused CDataStream methods (MarcoFalke)

Pull request description:

  Using `uint8_t` for raw bytes has a style benefit:
  * The signedness is clear from reading the code, as it does not depend on the architecture

  Other clean-ups in this pull include:
  * Remove unused methods
  * Constructor is simplified with `Span`
  * Remove `Init()` member in favor of C++11 member initialization

ACKs for top commit:
  laanwj:
    code review ACK fa29272459
  theStack:
    ACK fa29272459 🍾

Tree-SHA512: 931ee28bd99843d7e894b48e90e1187ffb0278677c267044b3c0c255069d9bbd9298ab2e539b1002a30b543d240450eaec718ef4ee95a7fd4be0a295e926343f
2021-02-01 15:17:28 +01:00
MarcoFalke
e130ff38c9
Merge bitcoin-core/gui#183: Add include for std::bind.
2a39ccf133 Add include for std::bind. (sinetek)

Pull request description:

  Hi, this patch adds in <functional> because the GUI code makes use of std::bind.
  That's all.

ACKs for top commit:
  jonasschnelli:
    utACK 2a39ccf133

Tree-SHA512: fb5ac07d9cd5d006182b52857b289a9926362a2f1bfa4f7f1c78a088670e2ccf39ca28214781df82e8de3909fa3e69685fe1124a7e3ead758575839f5f2277a9
2021-01-26 11:14:27 +01:00
Prayank
232d1f92bb Add information to "Confirm fee bump" window
Check if "Coin Control features" are enabled to display warning before broadcasting replacement transaction
Workaround to fix issue: bitcoin/bitcoin#20795

Co-authored-by: Jon Atack <jon@atack.com>
2021-01-26 13:51:21 +05:30
sinetek
2a39ccf133 Add include for std::bind. 2021-01-13 02:05:00 +01:00
Andrew Poelstra
ac33feb400 Merge 9876ab8c74 into merged_master (Bitcoin PR #19844) 2020-11-28 21:19:29 +00:00
Andrew Poelstra
4087c88a7e Merge 269a7ccb27 into merged_master (Bitcoin PR #19099) 2020-11-28 17:53:38 +00:00
Andrew Poelstra
c473bf0bce Merge bb588669f9 into merged_master (Bitcoin PR #19331) 2020-11-26 01:09:16 +00:00
Andrew Poelstra
3f85455775 Merge 4946400470 into merged_master (Bitcoin PR bitcoin-core/gui#8) 2020-11-26 01:09:13 +00:00
Andrew Poelstra
4839db857d Merge c27330897d into merged_master (Bitcoin PR #18027) 2020-11-26 01:09:11 +00:00
Andrew Poelstra
bfa1cef745 Merge f4b603cff6 into merged_master (Bitcoin PR #17993) 2020-11-26 01:08:53 +00:00
Andrew Poelstra
2a215e713f Merge a9024a42fc into merged_master (Bitcoin PR #17918) 2020-11-26 01:08:52 +00:00
Andrew Poelstra
0cd860d74e Merge 7418169364 into merged_master (Bitcoin PR #18997) 2020-11-26 01:08:47 +00:00
Andrew Poelstra
d359b993f1 Merge a587f85853 into merged_master (Bitcoin PR #18587) 2020-11-26 01:08:46 +00:00
Andrew Poelstra
d4711bdf91 Merge 23c926d859 into merged_master (Bitcoin PR #18699) 2020-11-26 01:08:37 +00:00
Andrew Poelstra
fd37b7c5d6 Merge 54f812d9d2 into merged_master (Bitcoin PR #18673) 2020-11-26 01:08:23 +00:00
Andrew Poelstra
85838bef74 Merge 3eb8b1c392 into merged_master (Bitcoin PR #17905) 2020-11-26 01:08:17 +00:00
Andrew Poelstra
90081b0645 Merge 99d6a5be8b into merged_master (Bitcoin PR #17999) 2020-11-26 01:08:16 +00:00
Andrew Poelstra
943443791e Merge f2880e21ef into merged_master (Bitcoin PR #18160) 2020-11-26 01:08:05 +00:00
Andrew Poelstra
bdd87dc5fa Merge 694f4cbd78 into merged_master (Bitcoin PR #18312) 2020-11-26 01:08:02 +00:00
Andrew Poelstra
90c7d5774a Merge ac579ada7e into merged_master (Bitcoin PR #18278) 2020-11-26 01:08:00 +00:00
Andrew Poelstra
59e331ab92 Merge b6a16fa44e into merged_master (Bitcoin PR #18123) 2020-11-26 01:07:42 +00:00
MarcoFalke
fada14b948
Treat CDataStream bytes as uint8_t
Also, rename CSerializeData to SerializeData
2020-11-23 21:19:50 +01:00
Andrew Poelstra
4a32fbbd14 Merge 742f84d0de into merged_master (Bitcoin PR #17492) 2020-11-14 16:52:10 +00:00
Andrew Poelstra
ba08079170 Merge 0aa72061e5 into merged_master (Bitcoin PR #16944) 2020-11-14 16:51:47 +00:00
Andrew Poelstra
3feea6cb08 Merge 9bd109b78d into merged_master (Bitcoin PR #17120) 2020-11-09 21:20:45 +00:00
Andrew Poelstra
466ecf5506 Merge d91af4768c into merged_master (Bitcoin PR #17165)
This commit removes BIP70 support. Since this was the only thing our
payment sernver supported (we had previously dropped support for
bitcoin: urls) I also dropped all the paymentrequest logic.
2020-11-09 21:20:45 +00:00
Andrew Poelstra
fc2108d672 Merge 8a191148db into merged_master (Bitcoin PR #17154) 2020-11-09 21:20:43 +00:00
Andrew Poelstra
0888ad0cf3 Merge 1139e3cb76 into merged_master (Bitcoin PR #16415) 2020-11-09 21:20:08 +00:00
Andrew Poelstra
7774f13936 Merge 6c1e45c4c4 into merged_master (Bitcoin PR #16322) 2020-11-09 03:58:21 +00:00
Andrew Poelstra
7a36a783eb Merge 8046a3e0be into merged_master (Bitcoin PR #16348) 2020-11-09 03:58:20 +00:00
Andrew Poelstra
969b50e413 Merge 1212808762 into merged_master (Bitcoin PR #16257) 2020-11-09 03:58:17 +00:00
Andrew Poelstra
47ff39851b Merge 7263424458 into merged_master (Bitcoin PR #16001) 2020-10-29 19:59:24 +00:00
Andrew Poelstra
ad0dc00fc2 Merge 3356799ee3 into merged_master (Bitcoin PR #15778) 2020-10-28 23:22:29 +00:00