Commit Graph

13165 Commits

Author SHA1 Message Date
ghubstan
159d4cc6f5
Add optional txFeeRate parameter to api sendbsq
If present in the sendbsq command, the parameter will override the fee
service and custom fee rate setting for the BSQ transaction.

Also changed the sendbsq grpc return type to a lightweight TX proto wrapper.

Besides some small refactoring in the CLI, all the changes are
adjustments for this new sendbsq parameter and its new grpc return value.
2020-12-04 17:17:37 -03:00
ghubstan
900d498ee1
Merge branch 'master' into 02-refactor-completePreparedSendBsqTx 2020-12-04 14:22:45 -03:00
ghubstan
dc6144d337
Refactor BtcWalletService to let api override fee rates
BtcWalletService was changed to allow the api to override tx fee
rates from the sendbsq and sendbtc methods.  The api methods will
still be able to use the network fee service and custom tx fee rate
preference, and set / unset the custom tx fee rate preference, but
the change will permit the addition of an optional txFeeRate parameter
to the sendbsq and sendbtc methods (todo).  A few other minor changes
(style and removal of never thrown ex spec) were also made to this class.

Two BtcWalletService methods were refactored.

- The redundant (was always true) boolean isSendTx argument was removed
  from the completePreparedVoteRevealTx method signature.

- The redundant (was always true) boolean useCustomTxFee was removed
  from the completePreparedBsqTx method signature.

- The completePreparedSendBsqTx method was overloaded with a 2nd parameter
  (Coin txFeePerVbyte) to allow api to override fee service and custom
  tx fee rate when sending BSQ or BTC.

- The completePreparedBsqTx method was overloaded with a 3rd parameter
  (Coin txFeePerVbyte) to allow api to override fee service and custom
  tx fee rate when sending BSQ or BTC.

The following line was deleted from the completePreparedBsqTx method
because txFeePerVbyte is now an argument:

	Coin txFeePerVbyte = useCustomTxFee ? getTxFeeForWithdrawalPerVbyte() : feeService.getTxFeePerVbyte();

This useCustomTxFee value was always true, and redudant here because
getTxFeeForWithdrawalPerVbyte() returns feeService.getTxFeePerVbyte()
or the custom fee rate preference. i.e.,

Coin txFeePerVbyte = useCustomTxFee ? getTxFeeForWithdrawalPerVbyte() : feeService.getTxFeePerVbyte();

	is equivalent to

Coin txFeePerVbyte = getTxFeeForWithdrawalPerVbyte();

LockupTxService, UnlockTxService, BsqSendView, and BsqTransferService
were adjusted to this BtcWalletService refactoring.
2020-12-04 14:17:24 -03:00
Christoph Atteneder
9e3968e5f4
Merge pull request #4892 from deusmax/market-offer-filter-bugfix
Offer Book chart outlier filter improved.
2020-12-04 16:54:25 +01:00
Christoph Atteneder
0d6b17fa3f
Merge pull request #4875 from deusmax/FXC-ext
Replace use of Collections to FXCollections in desktop.
2020-12-04 16:44:05 +01:00
Christoph Atteneder
c782f22fe8
Merge pull request #4874 from jmacxx/fix_systray_error
Prevent annoying popup errors for unhandled systray exception.
2020-12-03 21:21:47 +01:00
Deus Max
d60030e2f2
Offer Book chart outlier filter improved.
Outlier data filter used for the Market Offer Book chart, now accounts
for the switching display position of Buy, Sell data depending on
currency type (Crypto or Fiat).
2020-12-03 21:06:34 +02:00
Christoph Atteneder
91a1a92ac4
Merge pull request #4877 from Jakub-CZ/fix_warning_message
Fix warning about rejected transaction
2020-12-03 19:28:06 +01:00
ghubstan
74261b1749
Refactor: move getDust(Transaction transaction)
The api is going to need this method, so it was moved from desktop to core.

- Moved the method from WithdrawalView to WalletService.

- Removed an unused initilizer in WithdrawalView.
2020-12-03 12:16:04 -03:00
sqrrm
9b774d1515
Merge pull request #4858 from ghubstan/21-fee-rate-apis
Add tx fee rate api methods:  gettxfeerate, settxfeerate, unsettxfeerate
2020-12-03 10:41:54 +01:00
Jakub Loucký
b8bdbbc551
Fix warning for rejected transaction 2020-12-02 21:16:41 +01:00
Deus Max
c7290ee091
Replace use of Collections to FXCollections in desktop.
Replace use of java library java.util.Collections with
javafx.collections.FXCollections instead.
Bisq issue#4388.
2020-12-02 21:38:50 +02:00
ghubstan
7f636e45f9
Prevent attempt to send amount of BSQ < dust 2020-12-02 15:21:20 -03:00
ghubstan
2efd094f68
Remove method only used in class' toString 2020-12-02 15:01:34 -03:00
ghubstan
65df9e1503
Change sendbsq's amount parameter type to String 2020-12-02 14:52:05 -03:00
ghubstan
9b4bdfc5ad
Make salt an editable payment acct json form field
Users need to be able to preserve their acct age when moving a
payment account to a new client.

Also adjusted affected tests, and did some minor refactoring
of the custom gson type adaptor.
2020-12-02 13:52:39 -03:00
jmacxx
06c0211f1f
Prevent annoying popup errors for unhandled systray exception. 2020-12-02 09:43:41 -06:00
ghubstan
987d89319e
Use ListenableFuture and callback when requesting tx fee
This change fixes the blocking problem in the fee rate request api.
Also redefined the TxFeeRateInfo.

- Redefined grpc.proto message TxFeeRateInfo, added
  lastFeeServiceRequestTs field. (CLI user may want to know
  TS of last fee request.)

- Adjusted TxFeeRateInfo proto wrapper.

- Adjusted CurrencyFormat and BtcTxFeeRateTest to new TxFeeRateInfo.

- Added @Getter annotation to FeeService.  (CLI user may want to know
  TS of last fee request).

- Pass resultHandler from GrpcWalletsService through CoreApi, to
  CoreWalletsService's tx fee rate api methods.
2020-12-01 21:10:47 -03:00
ghubstan
faf030fbc5
Add useCustomTxFeeRate field to TxFeeRateInfo proto wrapper
This is set from the core preferences.isUseCustomWithdrawalTxFee(),
and simplifies fee changing logic in the API.
2020-12-01 17:14:08 -03:00
ghubstan
2989f1be3f
Loosen up the PaymentMethod count test assert
, so we don't have to change this test every time a new payment
method is added.
2020-12-01 16:10:00 -03:00
ghubstan
62a2aa8543
Don't be so polite 2020-12-01 15:55:53 -03:00
ghubstan
45cfb95245
Remove many log.isDebugEnabled() checks
These do not buy enough in the way of performance, at the cost of
so many additional lines.  Buy these checks should be done for
debug log statements that have expensive parameters.
2020-12-01 15:48:11 -03:00
Christoph Atteneder
09677151a6
Merge pull request #4863 from jmacxx/account_usability
Account management usability improvements
2020-12-01 14:04:49 +01:00
Christoph Atteneder
740071d54c
Merge pull request #4859 from oscarguindzberg/fixEmergencyPayout
Fix emergency payout
2020-12-01 13:58:01 +01:00
jmacxx
0af139c666
Fix NPE in test routine caused by PaymentAccount with no name 2020-11-30 09:45:24 -06:00
Christoph Atteneder
49d0e75eac
Merge pull request #4852 from chimp1984/stop-rpc-service-at-shutdown
Shut down rpc service at app shut down routine
2020-11-30 15:29:36 +01:00
Christoph Atteneder
e8a8e3b3a1
Merge pull request #4785 from deusmax/dao_bsq_supply
Touch-ups to the DAO BSQ Supply page
2020-11-30 09:22:20 +01:00
jmacxx
52a4dff0ae
Account management usability improvements
Widen payment account dropdown in create & edit offer screens
Sort payment account dropdown by name in create & edit offer screens
Sort account listview by name in manage fiat accounts screen
Sort account listview by name in manage altcoin accounts screen
Bug fix: do not adjust BTC amount in edit offer screen

There was a bug where editing an existing offer could have its payment
account changed to one with more restrictive limits and the offer
would still be allowed (although not take-able).
It should not be allowed to be saved in this case.  This change takes
proper heed of the "allowAmountUpdate" flag which is false for offer
edits.  e.g. edit an F2F buy for 0.25, change to Zelle unsigned, the
offer will prevent saving.
2020-11-27 14:40:37 -06:00
Christoph Atteneder
c7b92c36c9
Merge pull request #4850 from chimp1984/improve-stratup-info-display
Improve startup info display
2020-11-27 16:08:07 +01:00
sqrrm
cae09f8ff5
Merge pull request #4860 from stejbac/add-deposit-amount-taker-check
Add taker check for deposit amount
2020-11-27 12:56:14 +01:00
ghubstan
965b003f61
Remove unnecessary use of fully qualified name for codacy 2020-11-27 06:45:31 -03:00
Steven Barclay
d59b425c94
Add missing output value check to takerSignsDepositTx
Make sure the taker checks the value of the 2-of-2 multisig output of
the deposit tx created by the maker, before signing it. This avoids a
potential security hole, where the maker attempts to steal most of the
deposit by using the wrong output value and adding an extra 'change'
output to himself.

Note that there's no actual vulnerability at present, as the output
value is indirectly checked via the validation of the delayed payout tx.
In particular, the extra checks added in 345426f as part of #4789 (Fix
remaining blackmail vulnerabilities) place a lower bound on the delayed
payout tx input value and with it the deposit tx output value. However,
explicitly checking the amount is more robust.
2020-11-26 23:39:51 +00:00
Oscar Guindzberg
f2acf42edc
Set payoutTx as parent tx 2020-11-26 20:30:23 -03:00
Oscar Guindzberg
0b834a94f8
Use empty byte array for script sig 2020-11-26 20:30:00 -03:00
Oscar Guindzberg
91a2def86e
Use AddressEntry.getAddress() 2020-11-26 20:28:50 -03:00
ghubstan
06eb3786c0
Test new tx fee rate api methods 2020-11-26 18:36:58 -03:00
ghubstan
0b0f9f1120
Add gettxfeerate, settxfeerate, unsettxfeerate implementations 2020-11-26 18:36:15 -03:00
ghubstan
abe7160608
Add TxFeeRateInfo proto wrapper 2020-11-26 18:35:24 -03:00
ghubstan
9662f26b23
Add protbuf TxFeeRateInfo 2020-11-26 18:03:42 -03:00
ghubstan
44646763ef
Add protobuf defs for gettxfeerate, settxfeerate, unsettxfeerate 2020-11-26 18:02:32 -03:00
ghubstan
8fd578614d
Adjust test for a new payment method 2020-11-26 17:20:29 -03:00
ghubstan
5a06e4ea3e
Adjust to changed CoinUtil 2020-11-26 17:19:47 -03:00
ghubstan
8f13b85e19
Merge branch 'master' into 20-pr-change-requests-A 2020-11-26 17:19:00 -03:00
ghubstan
15592887dd
Implement fromProto
This is marked unused, but it will be in future tests.
2020-11-26 15:06:14 -03:00
ghubstan
baf300afae
Add missing newlines to console output statements
And remove some unecessary single quotes.
2020-11-26 15:02:30 -03:00
ghubstan
9d863e5a40
Remove deprecated method long getAvailableBalance 2020-11-26 14:25:24 -03:00
Deus Max
9d8939c0ca
Touch ups on the DAO BSQ supply page.
* Formatting changes to chart lines and axes.
 * Removed middle chart as it displays no
   new info.
 * Function getMonthTickLabelFormatter rounds the
   tick label display to the nearest month.
   Only used for chart1.
 * New variable chart1XBounds to keep track of
   chart1 X-axis limits, as autoRanging set false.
2020-11-26 18:58:14 +02:00
ghubstan
f50634ee4a
Resolve BsqSendView file conflict
Restore BsqSendView to version @ commit 48a515be01.
Author: jmacxx
Date:   Tue Nov 10 19:35:31 2020 -0600

    Add encrypted wallet password prompt when sending funds from BSQ wallet

    Correct wording of transaction confirmation popup to use 'mining fee'
    instead of 'transaction fee' to make it consistent with wording of
    the BTC confirmation popup.
2020-11-26 13:34:05 -03:00
chimp1984
1b68b02857
Shut down rpc service at app shut down routine 2020-11-26 11:31:05 -05:00
chimp1984
81a41a25bb
Improve chainHeightSyncing display 2020-11-26 11:20:51 -05:00