Commit Graph

1577 Commits

Author SHA1 Message Date
Justin Carter
ed97f7a9e5
Use interface instead of class name for CoinFormatter 2019-11-19 14:00:22 +01:00
Justin Carter
d10683e192
Extract CoinFormatter interface 2019-11-19 12:30:31 +01:00
Christoph Atteneder
95257b10f9
Refactor of FilterWindow - eliminate duplicates (#3616)
* Extract setupFieldFromList method in FilterWindow

* Extract readAsPaymentAccountFiltersList method in FilterWindow

* Extract setupFieldFromPaymentAccountFiltersList method in FilterWindow

* Reformat sendButton handler in FilterWindow
2019-11-19 10:39:59 +01:00
Christoph Atteneder
8c8c7117d3
Refactorings for api support (#3611)
* Remove trailing spaces

* Add toProtoTradeStatistics2 method

API will use getTradeStatistics and expect TradeStatistics2 not
PersistableNetworkPayload

* Add CreateOfferService class

* Remove commented out code

* User weaker access, add final

* Add getRandomOfferId method

* Add getSellerSecurityDeposit method

* Add getEstimatedFeeAndTxSize method

- Rename estimateTxSize to updateEstimatedFeeAndTxSize
- Add getEstimatedFeeAndTxSize method to CreateOfferService
- Add dependent methods and fields

* Use methods from createOfferService

- Use getBuyerSecurityDepositAsCoin and getSellerSecurityDepositAsCoin
from CreateOfferService

* Use txFeeFromFeeService from createOfferService

- Use getEstimatedFeeAndTxSize from CreateOfferService for
txFeeFromFeeService

* Use getPriceAsLong from createOfferService

* Use marketPriceMarginParam from createOfferService

* Pass useMarketBasedPriceValue to getPriceAsLong

* Use getMaxTradeLimit from createOfferService

* Use createAndGetOffer from createOfferService

* Remove unused fields

* Add createOfferService, remove unused params

* Use weaker access

* Add null checks

* Add log of params, Cleanup

* Remove unused fields

* Use weaker access

* Remove trivial methods

* Remove trivial methods, rename methods

* Sort params for offer as they are used

* Use getReservedFundsForOffer from createOfferService

* Add MakerFeeProvider

* Adjust to new super class params

* Remove sellerSecurityDeposit field, refactor placeOffer

* Adjust tests to new params
2019-11-19 09:49:38 +01:00
Justin Carter
cfaa23effc
Move functions that only have 1 call-site out of BSFormatter
Make them private instance functions at call site to minimize
dependencies.
2019-11-19 09:24:06 +01:00
Justin Carter
dc741984ce
Move Currency related helpers out of BSFormatter to CurrencyUtils 2019-11-19 09:24:05 +01:00
Justin Carter
df6812a4c9
Extract FormattingUtils from BSFormatter
All formatting related functions that are depended on by core and
desktop jars are extracted to the new class FormattingUtils.
2019-11-19 09:23:57 +01:00
Devin Bileck
3f91f60cd3
Fix package.bat version parsing
The package.bat script parses the first 3 tokens of the version string
to determine the file version. This is done to strip "-SNAPSHOT" from
the version string since the file version can only contain a numeric
version number.
2019-11-18 23:36:40 -08:00
Christoph Atteneder
906a2526e0
Merge pull request #3624 from rafaelpac/tooltip-colon
Add colon after "Payment method" on tooltip
2019-11-18 16:03:03 +01:00
Christoph Atteneder
ec5e2b76d4
Avoid unchecked casts/assignments/calls (#3626)
* Don't extend ActivatableViewAndModel when the model is empty

Remove the no-arg constructor from ActivatableViewAndModel, which sets
a dummy Activatable singleton as the model. (Since the model type param
can't be checked at runtime, improper use of the constructor could cause
heap pollution.)

Instead, extend 'ActivatableView<R, Void>' consistently, as other views
without a model currently do.

* Improve type safety of the fluent interface of Overlay<T>

Refactor all the unchecked casts from Overlay<T> to T into a single
private cast() method. Also add a runtime type check to the constructor
to prevent creation of window objects of the form "A extends Overlay<B>"
for unrelated A & B, as such casts would then subvert the type system.

* Improve type safety of ProtoUtil.collectionToProto(Collection)

Add a Class<T> parameter to the method, in order to avoid an unchecked
cast to the Message type T. The cast was wrapped in a try-catch block,
which is useless due to erasure, so use Class.cast(..) instead.

* Avoid raw types to prevent unchecked casts in Log.java

Add missing ILoggingEvent type arg to local variable declarations.

* Avoid unchecked casts when deserializing JSON using Gson

* Fix unchecked casts in views due to raw chart point types

Add missing 'Number' coord type args to some XYChart.(Data|Series) &
AreaChart declarations, and avoid passing them as generic varargs, in
order to eliminate some more unchecked cast warnings.

Also simplify OfferBookChartView.updateChartData() by unboxing the x-
coordinate of each (buy & sell) datapoint.

* Avoid raw type bounds in class declarations to fix unchecked warnings

Make sure the generic classes MutableOfferView & AgentRegistrationView
don't use raw bounds for their associated view models, as that leads to
unchecked assignments from the model fields further down.

* Fix some remaining suppressed unchecked casts in the UI logic

(This still leaves a few more which are hard to avoid.)

* Fix a few remaining unsuppressed unchecked warnings
2019-11-18 15:41:23 +01:00
ghubstan
dd8fd30e7c
Set use standby mode to false on non Win, OSX desktops 2019-11-18 11:30:35 -03:00
Steven Barclay
5e69073280
Fix a few remaining unsuppressed unchecked warnings 2019-11-17 22:00:40 +00:00
Pac
2e85195299
Update OfferBookViewModel.java 2019-11-17 18:50:58 -03:00
Steven Barclay
53b7167e68
Fix some remaining suppressed unchecked casts in the UI logic
(This still leaves a few more which are hard to avoid.)
2019-11-17 01:25:12 +00:00
Steven Barclay
f3456f1920
Avoid raw type bounds in class declarations to fix unchecked warnings
Make sure the generic classes MutableOfferView & AgentRegistrationView
don't use raw bounds for their associated view models, as that leads to
unchecked assignments from the model fields further down.
2019-11-17 01:25:12 +00:00
Steven Barclay
96ac86dd25
Fix unchecked casts in views due to raw chart point types
Add missing 'Number' coord type args to some XYChart.(Data|Series) &
AreaChart declarations, and avoid passing them as generic varargs, in
order to eliminate some more unchecked cast warnings.

Also simplify OfferBookChartView.updateChartData() by unboxing the x-
coordinate of each (buy & sell) datapoint.
2019-11-17 01:25:11 +00:00
Steven Barclay
2f61b025f5
Improve type safety of the fluent interface of Overlay<T>
Refactor all the unchecked casts from Overlay<T> to T into a single
private cast() method. Also add a runtime type check to the constructor
to prevent creation of window objects of the form "A extends Overlay<B>"
for unrelated A & B, as such casts would then subvert the type system.
2019-11-17 01:24:46 +00:00
Steven Barclay
6b0da3d08b
Don't extend ActivatableViewAndModel when the model is empty
Remove the no-arg constructor from ActivatableViewAndModel, which sets
a dummy Activatable singleton as the model. (Since the model type param
can't be checked at runtime, improper use of the constructor could cause
heap pollution.)

Instead, extend 'ActivatableView<R, Void>' consistently, as other views
without a model currently do.
2019-11-17 01:18:58 +00:00
lusarz
a6ee5d5c45
Reformat sendButton handler in FilterWindow 2019-11-15 17:39:41 +01:00
lusarz
0c2639a87b
Extract setupFieldFromPaymentAccountFiltersList method in FilterWindow 2019-11-15 17:39:40 +01:00
lusarz
415648e257
Extract readAsPaymentAccountFiltersList method in FilterWindow 2019-11-15 17:39:40 +01:00
lusarz
96046fa110
Extract setupFieldFromList method in FilterWindow 2019-11-15 17:39:36 +01:00
chimp1984
4e5bbbd563
Fixes https://github.com/bisq-network/bisq/pull/3572
We saved the account and afterwards called setSelectedTradeCurrency.
That caused a bug with remove as the hash at insert was different as at
remove.
2019-11-15 01:07:17 -05:00
chimp1984
9092160700
Adjust tests to new params 2019-11-15 00:03:52 -05:00
chimp1984
50fc1393e0
Remove sellerSecurityDeposit field, refactor placeOffer 2019-11-14 23:58:31 -05:00
chimp1984
44781e1fba
Adjust to new super class params 2019-11-14 23:57:12 -05:00
chimp1984
9c279f023f
Use getReservedFundsForOffer from createOfferService 2019-11-14 23:40:36 -05:00
chimp1984
5ff5941cdb
Remove unused fields 2019-11-14 23:18:31 -05:00
chimp1984
5c6b122d20
Use weaker access 2019-11-14 23:03:02 -05:00
chimp1984
0a58a2a243
Add createOfferService, remove unused params 2019-11-14 23:02:44 -05:00
chimp1984
2b1c754cfd
Remove unused fields 2019-11-14 22:57:53 -05:00
chimp1984
c4b88ab512
Use createAndGetOffer from createOfferService 2019-11-14 22:56:42 -05:00
chimp1984
ef27dbd03d
Use getMaxTradeLimit from createOfferService 2019-11-14 22:44:40 -05:00
chimp1984
b584825101
Pass useMarketBasedPriceValue to getPriceAsLong 2019-11-14 22:42:39 -05:00
chimp1984
646808623c
Use marketPriceMarginParam from createOfferService 2019-11-14 22:41:53 -05:00
chimp1984
7d2016a839
Use getPriceAsLong from createOfferService 2019-11-14 22:34:22 -05:00
chimp1984
8eea87ef32
Use txFeeFromFeeService from createOfferService
- Use getEstimatedFeeAndTxSize from CreateOfferService for
txFeeFromFeeService
2019-11-14 22:14:44 -05:00
chimp1984
8423845f37
Use methods from createOfferService
- Use getBuyerSecurityDepositAsCoin and getSellerSecurityDepositAsCoin
from CreateOfferService
2019-11-14 22:03:53 -05:00
chimp1984
947fe5ae19
Add getEstimatedFeeAndTxSize method
- Rename estimateTxSize to updateEstimatedFeeAndTxSize
- Add getEstimatedFeeAndTxSize method to CreateOfferService
- Add dependent methods and fields
2019-11-14 21:53:59 -05:00
chimp1984
15f9860513
Add getSellerSecurityDeposit method 2019-11-14 21:35:01 -05:00
chimp1984
9865c80b96
Add getRandomOfferId method 2019-11-14 21:34:14 -05:00
chimp1984
e30875eb15
User weaker access, add final 2019-11-14 21:33:17 -05:00
chimp1984
bdf0d86fa4
Remove commented out code 2019-11-14 21:31:36 -05:00
chimp1984
838113f986
Add CreateOfferService class 2019-11-14 21:31:01 -05:00
Niyi Dada
fb073c7056
BSQ Merit now displayed - fixes issue #3352 2019-11-14 21:55:14 +01:00
Christoph Atteneder
21b76cb869
Updating trading instructions for XMR (Monero) (#3596)
* Updating trading instructions for XMR (Monero)

Prove payments:
- clarifying that the official wallets (Monero GUI or CLI) are NOT required to send XMR, since user can use some alternative wallets (desktop: MyMonero, Exodus / mobile: Cake Wallet, MyMonero, Monerujo) that provide the information required to prove a payment (transaction key, transaction ID and destination address). This information is not provided by the remaining desktop and mobile wallets that currently support Monero, but since they could provide it in the future, I kept the warning about using other wallets different from the previously mentioned.
- listing Monero GUI as first option (for most users), and CLI as second option (for advanced users)
- renaming "transaction hash" to "transaction ID", which is used in official wallets
- renaming "tx private key" to "transaction key", which is used in official wallets
- adding "Secret key" as synonymous for "transaction key" (used in MyMonero wallet)
- adding "destination address" and keeping  "recipient's address" as synonymous
- renaming History tab to Transactions tab in Monero GUI
- adding "save recipient address" option must be enabled in Cake Wallet settings

Check payments:
- adding Monero GUI must be in Advanced mode
- adding Monero GUI verification must be done in Check Transaction section of Prove/check page
- adding parameters TXID TXKEY ADDRESS to the command check_tx_key in Monero CLI, as instructions in (https://www.getmonero.org/resources/user-guides/prove-payment.html)
- adding Explore Monero website (https://www.exploremonero.com/receipt) as alternative to verify payments
- removing payment ID instructions (it is being deprecated at the end of November in v0.15)

More info:
- directing to subreddit Monero support (https://www.reddit.com/r/monerosupport/), which is actively maintained, instead of Monero forum (https://forum.getmonero.org).

* Add max allowed message option to Popup and increase window size for Monero to improve readability
2019-11-14 17:01:27 +01:00
Christoph Atteneder
fa39258d71
Add max allowed message option to Popup and increase window size for Monero to improve readability 2019-11-14 15:21:30 +01:00
beingindot
4432d80061
Added empty check validation for popmoney/revolut/uphold/zelle 2019-11-14 12:31:07 +05:30
Christoph Atteneder
459646ad68
Merge pull request #3573 from beingindot/account_validate_mg_nationalbank
Added check for empty validation
2019-11-13 17:40:47 +01:00
beingindot
755ca19ef6
Added check for empty validation
This commit is for github issue #3458 and #3459
check added for moneybeam and national bank transfer
2019-11-13 21:18:02 +05:30
Christoph Atteneder
d00179c924
Merge pull request #3600 from beingindot/moneygram_issue
Added padding for flowpane to resolve moneygram save issue.
2019-11-12 16:34:09 +01:00
beingindot
a132698520
Added padding for flowpane to resolve moneygram save issue. 2019-11-12 20:46:10 +05:30
lukasz
d2f6702fe8
Refactor FilterWindow 2019-11-12 15:42:53 +01:00
Christoph Atteneder
3d5ba5b380
Merge pull request #3211 from stejbac/fix-info-pane-flicker
Prevent tooltip popover flicker upon mouseover
2019-11-12 12:05:01 +01:00
Christoph Atteneder
e0de9982e2
Re-introduce account age to chargeback risk payment methods (#3580)
* Add Tuple5 and make other tuple's equals method more readable

* Always add account age to peer info popup

* Fix typo forth != fourth

* Use sign age or account age for ring color based on chargeback risk
2019-11-11 15:15:53 +01:00
Steven Barclay
dd56b3a4e7
Prevent tooltip popover flicker upon mouseover
Provide a wrapper for PopOver components used as tooltips, to debounce
the 'MouseEntered' and 'MouseExited' events used to show/hide it, in
order to prevent it flickering open/closed in a loop. This fixes #3016.

To this end, use a ..->HIDDEN->SHOWING->SHOWN->HIDING->.. state field,
together with a target visibility boolean field, where the transition
between HIDDEN and SHOWN incurs a small fixed delay.
2019-11-09 16:49:09 +00:00
Steven Barclay
e20f841746
Fix failing test when there are spaces in the project path
Use URI.getPath() rather than URL.getFile() to get the absolute path of
a test resource, since the latter fails to perform URL decoding. This
breaks the tests when the project root contain chars needing %-encoding.
2019-11-09 16:30:16 +00:00
Christoph Atteneder
2b2e2c237d Release/v1.2.3 (#3577)
* Bump version number

* Revert to SNAPSHOT version
2019-11-07 16:00:45 +01:00
sqrrm
61e51a0b7a Fix trade view peer info (#3549)
* Rename: PeerInfoIcon makersAccount -> peersAccount

* Fix peer info in trade view peerinfoicon popup, fix #3548
2019-11-06 18:55:09 +01:00
chimp1984
fee7850f32 Improve handling of failed trades and offers (#3566)
* Improve handling of failed trades and offers

- Check if deposit tx is null
- Check if trade fee tx is rejected
- Listen to reject tx errors
- Cleanup addressEntryList
- Prevent opening disputes with if deposit tx is null
- Add null checks
- Improve logs
- Cleanups

* Add move to failed trade button to popup

In case the deposit tx is null we show a popup telling the user to move
the trade to failed trades after a restart if the problem persist.

* Change log level
2019-11-06 18:53:45 +01:00
Christoph Atteneder
70abd272d4 Only show approval icon for accounts that are able to sign (#3552) 2019-11-06 14:32:38 +01:00
ghubstan
ba0acd4724
Hide avoid standby mode feature on *nux OS
Displays standby mode button on only on Windows and OSX,
and hides it on Linux and Unix distributions.

TitledGroupBg num rows reduced to 7 when standby mode button
is not displayed.

Fixes #3223

Replaces PR #3322 -- rejected because source file reformat
rearanged class level field declarations, making review
more difficult.
2019-11-05 15:09:59 -03:00
Christoph Atteneder
5a9768363e Default view should be OfferBookChartView when an old view has been removed (#3561) 2019-11-05 18:33:01 +01:00
Christoph Atteneder
9a8615a61c
Merge pull request #3550 from bisq-network/release/v1.2.2
Release/v1.2.2
2019-11-04 10:16:20 +01:00
Florian Reimair
8a443584e8
Merge pull request #3513 from bisq-3510/master
Launch in Limbo with BisqException when last navigation no longer exists
2019-11-01 11:38:43 +01:00
Florian Reimair
15fce7cfbf
Merge pull request #3534 from yahiheb/user-agreement-fix
Remove duplicate word in user agreement
2019-11-01 11:37:25 +01:00
Florian Reimair
901cde0ad9
Merge pull request #3539 from devinbileck/fix-btc-valuation-popups
Fix BTC valuation popups
2019-11-01 11:36:35 +01:00
Florian Reimair
df45102db3
Merge pull request #3511 from devinbileck/remove-donate-link
Remove donation link
2019-11-01 11:25:35 +01:00
Florian Reimair
1999cfb99a
Merge pull request #3356 from stejbac/fix-proposal-table-hide
Fix proposal table hide when switching to another screen and back
2019-11-01 10:47:36 +01:00
Florian Reimair
8ee2d53219
Merge pull request #3251 from stejbac/fix-invalid-comparators
Fix invalid comparators
2019-11-01 10:07:25 +01:00
Christoph Atteneder
581436ee64
Revert to SNAPSHOT version 2019-11-01 09:05:52 +01:00
Christoph Atteneder
0c85c8c7a6
Bump version number 2019-11-01 09:03:05 +01:00
Devin Bileck
89edd67ddc
Fix BTC valuation popups
When hovering over the BTC balances, the popup was using the market
price based on the locale combined with the preferred currency as its
units. This lead to the situation where it could show a mismatch
between value and units.

Instead, use the market price based on the preferred currency.

Fixes #3515
2019-11-01 00:51:05 -07:00
Yahia Chiheb
e4c2900d11 Remove duplicate word in user agreement 2019-10-31 17:15:00 +01:00
Christoph Atteneder
b976570426
Release/v1.2.0 (#3532)
* New trade protocol (#3333)

* Remove arbitration key, cleanup

* Add BuyerAsMakerProcessDepositTxAndDelayedPayoutTxMessage

* Adopt trade protocol

- Add handler for DepositTxAndDelayedPayoutTxMessage
- Change handler for DepositTxPublishedMessage
- Add MakerSetsLockTime
- Rename MakerProcessPayDepositRequest to MakerProcessPayDepositRequest
- Rename MakerSendPublishDepositTxRequest to MakerSendsProvideInputsForDepositTxMessage
- Rename DepositTxPublishedMessage to DelayedPayoutTxSignatureRequest
- Rename MakerProcessDepositTxPublishedMessage to MakerAsBuyerProcessSignDelayedPayoutTxMessage

* Remove arbitratorKey

* Add new classes

* Add new message classes

* Add new task classes

* Renamed classed (no functional change yet)

* Add lockTime

* Add delayedPayoutTxSignature field

* Add useReimbursementModel field

* Add new classes

* Add setting.preferences.useReimbursementModel

* Apply renamed classes (new classes not added yet)

* Add useReimbursementModel

* Add preferences param

* Add new methods, cleanup

* Add daoFacade param, apply renaming

* Add delayedPayoutTx, lockTime and delayedPayoutTxId

- Support daoFacade param

* Remove DirectMessage interface

* Rename emergencySignAndPublishPayoutTx method, add new one for 2of2 MS

* Apply new protocol

* Apply new protocol

* Add renaming (no functional change yet)

* Add new messages, apply renaming

* Remove unneeded P2SHMultiSigOutputScript

* Remove PREFERRED_PROJECT_CODE_STYLE

* Refactor: Rename class

* Use InputsForDepositTxRequest instead of TradeMessage in handleTakeOfferRequest

* Do not sign deposit tx if maker is seller

We change behaviour that the maker as seller does not send the pre
signed deposit tx to the taker as the seller has more to lose and he
wants to control the creation process of the delayed payout tx.

* Apply new trade protocol to seller as maker version

* Apply new trade protocol

Delayed payout tx are now working for all scenarios but we use a small
hack to get around an issue with not receiving confirmations and the
peers tx.
We add a tiny output to both peers, so we see the tx and confirmation.
Without that only the publisher sees the tx and confirmations are not
displayed. Need further work to get that working without that extra
outputs.

* Set TRADE_PROTOCOL_VERSION to 2

* Add PeerPublishedDelayedPayoutTxMessage

We need add the delayed payout tx to the wallet once the peer publishes
it. We will not see the confidence as we do not receive or sent funds
from our address. Same is with dispute payouts where one peer does not
receive anything. Then the confidence is not set. It seems that is a
restriction in BitcoinJ or it requires some extra handling. We set the
confidence indicator invisible in the dispute case and that might be an
acceptable option here as well.

* Add refund agent domain

* Add refundAgentNodeAddress

* Apply refund domain

* Add refund views

* Apply refundAgent domain

* Support refundAgent

* Remove useReimbursementModel field

We dont need in the offer anymore the decision if reimbursement or
arbitration is chosen.

* Apply refundAgent payout

* Handle tx info and balances

* Remove mediation activation

* Add new tac accepted flag for v1.2.0 and adjust text

* Fix params for test classes

* Signed witness trading (#3334)

* Added basic UI for account signing for arbitrators

* Add domain layer for signed account age witnesses (credits ManfredKarrer and oscarguindzberg)

* Remove testing gridlines

* Arbitrator sign accountAgeWitnesses

Automatically filter to only sign accounts that
- have chargeback risk
- bought BTC
- was winner in dispute

* Handle chargebackrisk by currency

* Check winners only for closed disputes

* Show sign status of paymentaccounts in AccountsView

* Rename service to accountAgeWitnessService

* Refactor: Move account signing helpers to AccountAgeWitnessService

* Refactor: rename hasSignedWitness to myHasSignedWitness

* Show if witness is signed in offerbook view

* Use witness sign age for age comparison

* Refactor: rename to isTaker... to isMyTaker...

* Allow trading with signed witnesses

* Use witness age for showing account age icon

* Move AccountAgeRestrictions into AccountAgeWitnessService

* Handle trade limit of unverified accounts as normal case

* Avoid optional as argument

* Set trade limit depending on trade direction

* Avoid optional arguments

* Add text for seller as signer

* Seller with signer privilege signs buyer witness

* Fix merge issues

* Remove explicit check for risky offers

* Remove sellers explicit account age check

* Add limit check based on common accountAgeWitness function

* Fix arbitrator key event handling

* Filter accounts on tradelimit instead of maturity

* Fix test

* Buyer sign seller account

Add SIGNED_ACCOUNT_AGE_WITNESS capability

* Fix checks for signing at end of trade

Get correct valid accounts for offer

* Rename BuyerDataItem -> TraderDataItem

* Arbitrator sign both parties in a buyer payout dispute

* Only sign unsigned accountAgeWitnesses

* Remove unused code

* Add demo for material design icons

* Use different account age limits for sell/buy

* Fix signing interface for arbitrator

* Add signing state column to offer book

* Add signing state to fiat accounts overview

* Add signing state to selected fiat account

* Fix popover padding

* Add account signing state to peer info popup

* Retrieve only unsigned witnesses for arbitrator to sign

* Accounts signed by arbitrators are signers

* Disable test due to travis issues

* Improve witness handling (#3342)

* Fix comparison

* Add display strings for witness sign state

* Fix immaturity check

* Use accountAgeWitness age for non risky payment methods

* Show information about non risky account types

* Fix peer info icon account age text

* Complete new trade protocol (#3340)

* Improve handling of adding tx to wallet

* Add delayedPayoutTx to dispute

* Fix test

* Use RECIPIENT_BTC_ADDRESS from DAO for trade fee

* Set lockTime to 10 days for altcoins, 20 days others.

- Devmode uses 1 block

* Fix params

* Update text

* Update docs

* Update logging

if (log.isDebugEnabled()) only matches if logLevel is debug not
if it is INFO

* Remove log

* Remove arbitrator checks

* Remove arbitrator address

- It works not if not legacy arbitrator is registered.
We cannot remove too much from arbitration as we would risk to break
account signing and display of old arbitration cases.
Though if testing time permits we should try to clean out more of
arbitration domain what is not needed anymore.

* Use account signing state in accounts view (#3365)

* Add account signing icons to signing state in account display

* Remove unnecessary "." that caused layout issues in the past

* Add additional warning in the received payment popup for account signer

* Fix Revolut padding issues for currencies

* Hide signing icon for non-high-risk payment methods

* Add correct icon state and info text for account signing state

* Remove not implemented notification part

* Test self signing witnesses

* Change verified account limit factor to 0.5

* Account Signing: Add information popups for signing state (#3374)

* Add account signing icons to signing state in account display

* Remove not implemented notification part

* Hide time since signing column when not needed

* Remove fiat rounding popup as feature was introduced a long time ago already

* Add information popups for new signed states (only shown once for user) and minor clean-ups

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: sqrrm <sqrrm@users.noreply.github.com>

* Account Signing: Improve signed state notificaton (#3388)

* Remove new badge from Altcoin instant feature

* Remove new badge from percentage user deposit feature

* Fix line break issues in received payment confirmation popup

* Check if received payload fulfills signing state condition and not any personal witness

* Show additional badge for account sections to guide user to check out new signing states

* Fix account signing state in offer book (#3390)

* Account Signing: Fix verified usage (#3392)

* Rename witnessHash -> accountAgeWitnessHash

* Add enum for SignedWitness verification method

* Fix usage of isValidAccountAgeWitness

* Revert icon for signstate change

* Account signing: add signing state to payment account selection (#3403)

* Clean up dead code parts

* Add account signing state to payment account selection

* Account signing: revert dev date setting for trusted accounts (#3404)

* Revert temporary value for dev testing

* Only enable button if there are accounts to be signed

* Add trade limit exceptions (#3406)

* Remove dead code

* Add trade limit exception for accounts signed by arbitrator

* Update translations to adapt to new unified delay (#3409)

* NTP: Fix a couple of UI issues in the New Trade Protocol (#3410)

* Add badge support for refund agent (new arbitrator) tickets

* Fix translation typo

* Clean up arbitrator issues in translation

* Only show refund agent label to support staff

Every user should still see this role as arbitration

* NTP: Improve differentiation between mediation and new arbitration (#3414)

* Clean up property exposure

* Improve differentiation between mediation and arbitration cases

* Go to new refund view if it is no mediation and not open mediation notification if refund is already in progress

* Don't sign filtered accounts

* NTP: merge with master (#3420)

* Temporarily disable onion host for @KanoczTomas's BTC node

* Add Ergo (ERG) without Bouncy Castle dependency.

See #3195.

* List CTSCoin (CTSC)

* Tweak the English name of Japan Bank Transfer payment method

* Add mediator prefix to trade statistics

* List Faircoin (FAIR)

* List uPlexa (UPX)

* Remove not used private methods from BisqEnvironment

* Add onInitP2pNetwork and onInitWallet to BisqSetupListener

- Rename BisqSetupCompleteListener to BisqSetupListener
- Add onInitP2pNetwork and onInitWallet to BisqSetupListener
- make onInitP2pNetwork and onInitWallet default so no impl. required

* Start server at onInitWallet and add wallet password handler

- Add onInitWallet to HttpApiMain and start http server there
- Add onRequestWalletPassword to BisqSetupListener
- Override setupHandlers in HttpApiHeadlessApp and adjust
setRequestWalletPasswordHandler (impl. missing)
- Add onRequestWalletPassword to HttpApiMain

* Add combination (Blockstream.info + Mempool.space) block explorer

* Revert "Temporarily disable onion host for @KanoczTomas's BTC node"

This reverts commit d3335208bb.

* Temporarily disable KanoczTomas btcnode on both onion and clearnet

* Refactor BisqApp - update scene size calculation

* Refactor BisqApp - update error popup message build

* Refactor BisqApp - move icon load into ImageUtil

* Remove unused Utilities

* Increase minimum TX fee to 2 sats/vByte to fix #3106 (#3387)

* Fix mistakes in English source (#3386)

* Fix broken placeholders

* Replace non existing pending trades screen with open trades screen

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Update message in failed trade popup

* Refactor BisqEnvironment

* Account Signing: Improve arbitrator signing flow (#3421)

* Pre-select a point of time 2 months in the past

So all arbitrator signed payment accounts will have their limits lifted completely

* Only show payment methods with high chargeback risk to be signed

* Show connected Bitcoin network peer info

* List Ndau (XND)

- Official project URL: https://ndau.io/
- Official block explorer URL: https://explorer.service.ndau.tech

* List Animecoin (ANI)

* Apply rule to not allow BSQ outputs after BTC output for regular txs (#3413)

* Apply rule to not allow BSQ outputs after BTC output for regular txs

* Enforce exactly 1 BSQ output for vote reveal tx

* Fix missing balance and button state update

* Refactor isBtcOutputOfBurnFeeTx method and add comments and TODOs

No functional change.

* Handle asset listing fee in custom method

We need to enforce a BSQ change output

As this is just tx creation code it has no consequences for the hard
fork.

* Use getPreparedBurnFeeTxForAssetListing

* Update comments to not use dust output values

* Fix missing balance and button state update

* Use same method for asset listing fee and proof of burn

Use same method for asset listing fee and proof of burn as tx structure
is same.
Update comments to be more general.

* Use getPreparedProofOfBurnTx

* Require mandatory BSQ change output for proposal fee tx.

We had in the doc stated that we require a mandatory BSQ change output
but it was not enforced in the implementation, causing similar issues
as in Asset listing and proof of  burn txs.

* Add fix for not correctly handled issuance tx

* Use new method for issuance tx

// For issuance txs we also require a BSQ change output before the issuance output gets added. There was a
    // minor bug with the old version that multiple inputs would have caused an exception in case there was no
    // change output (e.g. inputs of 21 and 6 BSQ for BSQ fee of 21 BSQ would have caused that only 1 input was used
    // and then caused an error as we enforced a change output. This new version handles such cases correctly.

* Handle all possible blind vote fee transactions

* Move check for invalid opReturn output up

* Add dust check at final sign method

* Fix incorrect comments

* Refactor

- Remove requireChangeOutput param which is always false
- Remove method which is used only by one caller
- Cleanup

* Add comment

* Fix comments, rename methods

* Move code of isBlindVoteBurnedFeeOutput to isBtcOutputOfBurnFeeTx

* Update account signing strings for v1.2 release (#3435)

* Update account signing strings for v1.2 release

* Add minor corrections from ripcurlx review

* Adjust tradeLimitDueAccountAgeRestriction string

So that it describes why an account isn't signed (in general) instead of
why it wasn't signed by an arbitrator.

* Account Signing/NTP: More improvements and fixes (#3436)

* Select the the correct sub view when a dispute is created

* Require capability REFUND_AGENT to receive RefundAgent Messages

* Remove unused return type for account signing

* Add new feature popup for account signing and new trade protocol

* Return void from account signing

* Fix bug with not updating vote result table at vote result block

* NTP: improve backwards compatibility for mediation (#3439)

* Improve readability of offer update

* Add type safeguard for dispute lists

* Set not existing dispute support type for clients < 1.2.0 from message support type

* Enable handling of mediation cases for old trade protocol disputes in 1.2.0 clients

* Remove unnecessary forEach

* Use correct formatter and add missing value for placeholder

* Bump version number

* Add sign all checkbox. Fix list entry display (#3450)

* Add sign all checkbox. Fix list entry display

* Add summary to log and clipboard

* Use safe version for seednodes (#3452)

* Apply shutdown and memory check again

To not risk issues with the release and seed nodes we merge back the
old code base for handling memory check and shutdowns.
The newly added changes for cross connecting between seed nodes cause
out of memory issues and require more work and testing before it can be
used.

* Revert code change for periodic updates between seed nodes.

The periodic updates code caused out of memory issues and require more
work and testing before it can be used.

* Arbitrator republish signedWitnesses on startup (#3448)

* Arbitrator republish signedWitnesses on startup

* Keep republish internal to SignedWitnessService

* Improve new feature popup for ntp and account signing (#3453)

* Do not commit delayedPayoutTx to avoid publishing at restart

Fixes https://github.com/bisq-network/bisq/issues/3463

BitcoinJ publishes automatically committed transactions.
We committed it to the wallet to be able to access it later after a
restart. We stored the txId in Trade and used that to request the tx
from the wallet (as it was committed). Now we store the
bitcoin serialized bytes of the tx and do not commit the tx before
broadcasting it (if a trader opens refund agent ticket).

* [1.2.0] Update client resources (#3456)

* Update bitcoinj checkpoint file

* Update data stores

* Update translations

* [1.2.0] Improve new feature popup (#3465)

* Improve layout of new feature popup

* Extract external hyperlinks into component to make it easier to update

* Comment in necessary showAgain check

* Add Raspberry Pi to build process (#3466)

* Add Raspberry Pi to build process

* Rename deploy variable to improve readability

* Update informational prompt upon creating fiat account with account signing details (#3467)

* Update informational prompt upon creating fiat account with account signing details

* Fix wrong buyer limit for first 30 days

* Set delayedPayoutTxBytes when setting delayedPayoutTx

Fixes https://github.com/bisq-network/bisq/issues/3473

The delayedPayoutTx is not committed to the wallet as long it is not
published. The seller who creates the delayedPayoutTx has not stored the
delayedPayoutTxBytes which caused a nullpointer after restart.

* Minor updates (#3474)

* Remove unnecessary log statement

This seems to be a left over log statement from debugging.

* Use a small delay for MakerSetsLockTime on regtest

When testing on regtest, not in devmode, we want a relatively short
delay to be able to test the delay period.

* Clarify payment limits up to 30 days after signing

* Update RECIPIENT_BTC_ADDRESS for regtest (#3478)

Use an address that is owned by the regtest wallet in the dao-setup.zip
file. This allows for easily verifying BTC trading fees are sent to
this address correctly. Also, it helps verify spending of the time lock
payout.

* Remove btc nodes from Manfred Karrer (#3480)

* Avoid null objects (#3481)

* Avoid null objects

* Remove check for type

Historical data can be arbitration instead of mediation (arbitration
was fallback at last update), so we need to tolerate the incorrect type
here. Is only for tickets from pre 1.2.

* Display appropriate account age info header

Depending on charge back risk type, accounts should show
accountAgeWitness age or time since signing

* Set amount for delayed payout tx to 0 (#3471)

We have shown the spent funds from the deposit tx to the bisq donation
address before. But that was incorrect from the wallet perspective and
would have lead to incorrect summary of all transaction amounts. We set
it now to 0 as we are not spending funds nor receiving any in our wallet.

* Check for result phase at activate method

Fixes https://github.com/bisq-network/bisq/issues/3487

* Only show warning for risky payment menthods (#3497)

* Fix style issues with dark mode (#3495)

* Addresses issues mentioned in https://github.com/bisq-network/bisq/issues/3482#issuecomment-546812730 (#3496)

* Clean up trade statistics from duplicate entries (#3476)

* Clean up trade statistics from duplicate entries

At software updates we added new entries to the extraMap which caused
duplicate entries (if one if the traders was on the new and the other on
the old version or at republishing). We set it now json exclude so avoid
that in future and clean up the map.

* Avoid repeated calls to addPersistableNetworkPayloadFromInitialRequest

For trade stat cleanup we don't want to apply it multiple times as it
is a bit expensive. We get from each seed node the initial data response
and would pollute with the second response our map again and if our node
is a seed node, the seed node itself could not get into a clean state and
would continue pollution other nodes.

* Refactor

Remove not used param
Rename method
Inline method
Cleanups

* Change unsigned to N/A

* [1.2.0] Update data stores and adding SignedWitnessStore (#3494)

* Update data stores and adding SignedWitnessStore

* Update translations

* Update cleaned TradeStatistics2Store and changes in other stores

* VoteResultView update results on any block in result phase

Avoid updating the result more than once per result phase but make
sure it's done if activated during the result phase

* [1.2.0] Format maker fee for BTC and BSQ correctly (#3498)

* Format maker fee for BTC and BSQ correctly

* Update tests

* Only automatically open popup if result wasn't accepted and disable action button when being accepted (#3503)

* Fix tradestatistics (#3469)

* Remove delayed re-publishing of tradeStatistics

This was done earlier when only maker was publishing trade statistics.
Now both traders do it so we get already higher resilience.

* Remove unused method

Forgot in prev. commit to remove also the method.

* Remove support for TradeStatistics2.ARBITRATOR_ADDRESS

* Add comment and set ARBITRATOR_ADDRESS deprecated

* Remove setting of arbitrator data from makers side

The 2 arbitrator related fields in Trade are only set by the maker and
not used anymore for reading, so it can be removed. The whole arbitrator
domain should be cleaned out some day, but because of backward
compatibility issues it id difficult to do it entirely at release date.
With release after v 1.2. when no old offers are out anymore we are
able to clean up that domain.

* Remove dev log

* Update translations

* [1.2.0] Improve dispute section (#3504)

* Improve wording for mediation summary and add specific next steps for refund agent case

* Select the first dispute case when entering the support section

* Revert to SNAPSHOT version

* Fix but with initialRequestApplied (#3512)

* Fix resource name (#3514)

* Remove minor version number in news popup

* Fix copy SignedWitnessStore db script

* Not show payment account details for blocked offers

* Use age of accountAgeWitness as basis for sell limits

* Bump version number

* Revert to SNAPSHOT version

* Merge v1.2.0/v1.2.1 with master (#3521)

* List Krypton (ZOD)

* Temporarily disable onion host for @KanoczTomas's BTC node

* Add Ergo (ERG) without Bouncy Castle dependency.

See #3195.

* List CTSCoin (CTSC)

* Tweak the English name of Japan Bank Transfer payment method

* List Animecoin (ANI)

* Add mediator prefix to trade statistics

* List Faircoin (FAIR)

* List uPlexa (UPX)

* Remove not used private methods from BisqEnvironment

* Add onInitP2pNetwork and onInitWallet to BisqSetupListener

- Rename BisqSetupCompleteListener to BisqSetupListener
- Add onInitP2pNetwork and onInitWallet to BisqSetupListener
- make onInitP2pNetwork and onInitWallet default so no impl. required

* Start server at onInitWallet and add wallet password handler

- Add onInitWallet to HttpApiMain and start http server there
- Add onRequestWalletPassword to BisqSetupListener
- Override setupHandlers in HttpApiHeadlessApp and adjust
setRequestWalletPasswordHandler (impl. missing)
- Add onRequestWalletPassword to HttpApiMain

* Add combination (Blockstream.info + Mempool.space) block explorer

* Revert "Temporarily disable onion host for @KanoczTomas's BTC node"

This reverts commit d3335208bb.

* Temporarily disable KanoczTomas btcnode on both onion and clearnet

* Refactor BisqApp - update scene size calculation

* Refactor BisqApp - update error popup message build

* Refactor BisqApp - move icon load into ImageUtil

* Remove unused Utilities

* Increase minimum TX fee to 2 sats/vByte to fix #3106 (#3387)

* Fix mistakes in English source (#3386)

* Fix broken placeholders

* Replace non existing pending trades screen with open trades screen

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Update message in failed trade popup

* Refactor BisqEnvironment

* List Ndau (XND)

- Official project URL: https://ndau.io/
- Official block explorer URL: https://explorer.service.ndau.tech

* Show connected Bitcoin network peer info

* Not show payment account details for blocked offers (#3425)

* Add GitHub issue template for user reported bugs (#3454)

* Add issue template with steps to reproduce and actual/expected behavior

* Fix typo in .github/ISSUE_TEMPLATE.md

* Fix wrong auto merge

* Add CapabilityRequiringPayload to TradeStatistics2

With v1.2.0 we changed the way how the hash is created.
To not create too heavy load for seed nodes from
requests from old nodes we use the SIGNED_ACCOUNT_AGE_WITNESS
capability to send trade statistics only to new nodes.
As trade statistics are only used for informational purpose it will
not have any critical issue for the old nodes beside that they don't see the latest trades.

* Fix tradestat hash issue (#3529)

* Recreate hash from protobuf data

To ensure all data are using the new hash method (excluding extraMap) we
do not use the hash field from the protobug data but pass null which
causes to create the hash new based on the new hash method.

* Add filter.toString method and log filter in case of wrong signature

We have atm a invalid filter (prob. some dev polluted a test filter to mainnet)

* Change log level, add log

* Refactor: Move code to dump method

* Add TRADE_STATISTICS_HASH_UPDATE capability

We changed the hash method in 1.2.0 and that requires update to 1.2.2
for handling it correctly, otherwise the seed nodes have to process too
much data.

* Add logs for size of data exchange messages

* Add more data in log

* Improve logs

* Fix wrong msg in log, cahnge log level

* Add check for depositTxId not empty

* Remove check for duplicates

As we recreate the hash for all trade stat objects we don't need that
check anymore.

* Add logs

* Temporarily remove this part of the statistics

It prevents merging with master because through auto merge a duplication of this part of the code is happening and prevents Travis from succeeding
2019-10-31 12:49:26 +01:00
Niyi Dada
2e78e33276 Launch in Limbo with BisqException when last navigation no longer exists
- fixes issue #3510.
2019-10-30 00:37:38 +01:00
Niyi Dada
92e46227cd Launch in Limbo with BisqException when last navigation no longer exists
- resolves issue #3510
2019-10-30 00:23:37 +01:00
Devin Bileck
2d4c091b11
Remove donation link
Fixes #2745
2019-10-29 16:11:57 -07:00
Christoph Atteneder
4eb3b594b2 Not show payment account details for blocked offers (#3425) 2019-10-18 11:46:29 +02:00
Devin Bileck
c8cb7fff1e
Show connected Bitcoin network peer info 2019-10-17 14:18:59 -07:00
Christoph Atteneder
aaddda945b
Merge pull request #3380 from lusarz/refactor-bisq-app-scene-size-calculation
Refactor BisqApp - update scene size calculation
2019-10-14 09:58:45 +02:00
Christoph Atteneder
4277ec8fb4
Merge pull request #3381 from lusarz/refactor-bisq-app-throwable
Refactor BisqApp - update error popup message build
2019-10-14 09:56:49 +02:00
Christoph Atteneder
94b12a709f
Merge pull request #3382 from lusarz/refactor-bisq-app-image-util
Refactor BisqApp - move icon load into ImageUtil
2019-10-14 09:54:51 +02:00
lukasz
23877d4b2c Refactor BisqApp - move icon load into ImageUtil 2019-10-09 18:15:50 +02:00
lukasz
584e552e90 Refactor BisqApp - update error popup message build 2019-10-09 18:00:16 +02:00
lukasz
a9c24488fd Refactor BisqApp - update scene size calculation 2019-10-09 17:35:58 +02:00
Manfred Karrer
b6cc3518a9
Add onInitP2pNetwork and onInitWallet to BisqSetupListener
- Rename BisqSetupCompleteListener to BisqSetupListener
- Add onInitP2pNetwork and onInitWallet to BisqSetupListener
- make onInitP2pNetwork and onInitWallet default so no impl. required
2019-10-05 10:06:38 +02:00
Steven Barclay
f5d24936b2 Fix proposal table hide when switching to another screen and back
Do not remove the proposals table when VoteResultView is deactivated, as
the cycle selection which triggered its display is still active upon
switching to another screen and back again. This fixes #3269.

Also remove a spurious 'GUIUtil.removeChildrenFromGridPaneRows' call
when a proposal result is selected, as it is no longer needed since
switching from an inline votes table to a popup.
2019-10-03 07:03:51 +01:00
sqrrm
8f3cf65343
Merge pull request #3237 from devinbileck/hide-altcoin-account-age-salt
Hide account age verification salt for altcoin accounts
2019-09-25 16:45:04 +02:00
Christoph Atteneder
490eaab6d9
Merge pull request #3301 from wiz/increase-chart-data
Increase chart maxTicks from 30 to 90
2019-09-23 11:20:58 +02:00
Christoph Atteneder
4201e065bc
Merge branch 'master' of github.com:bisq-network/bisq into hotfix/v1.1.6
# Conflicts:
#	build.gradle
#	desktop/package/linux/Dockerfile
#	desktop/package/linux/package.sh
#	desktop/package/linux/release.sh
#	desktop/package/macosx/create_app.sh
#	desktop/package/macosx/finalize.sh
#	desktop/package/macosx/insert_snapshot_version.sh
#	desktop/package/windows/package.bat
#	desktop/package/windows/release.bat
#	relay/src/main/resources/version.txt
2019-09-23 10:57:03 +02:00
Christoph Atteneder
4842352756
Revert to SNAPSHOT version 2019-09-23 10:55:08 +02:00
Christoph Atteneder
58f3f73d56
Bump version number 2019-09-23 10:10:09 +02:00
chimp1984
e22707a67a
Avoid that the mediation result popup is shown 2019-09-23 09:42:52 +02:00
chimp1984
a1d2999c97
Avoid that the mediation result popup is shown 2019-09-23 01:24:46 +02:00
wiz
3b2610f79e
Increase chart maxTicks from 30 to 90 2019-09-20 20:01:51 +09:00
Christoph Atteneder
27b6035278
Update copyright date for macOS binary 2019-09-19 16:18:30 +02:00
initCCG
08bbfe8ab4 add Right-to-Left support (#2774)
* add Right-to-Left support

* make requested changes in PR #2774
2019-09-19 16:06:21 +02:00
Christoph Atteneder
f0fb663a90
Merge pull request #3194 from ben-kaufman/fix-offer-volume-jumps
Fix offer volume jumps
2019-09-19 15:45:51 +02:00
sqrrm
bd1f19c030
Merge pull request #3287 from battleofwizards/remove-controlsfx
Remove controlsfx dependency
2019-09-19 12:25:03 +02:00
sqrrm
b823a9f31b
Merge pull request #3284 from christophsturm/caffeinate
Use /usr/bin/caffeinate to disable power management on macOS
2019-09-18 16:29:52 +02:00
battleofwizards
2d4abbe143
Remove controlsfx dependency
The controlsfx is a huge JavaFX components library (0.83MB as JAR).

Turns out, we only use a single component, the PopOver. Fortunately,
the PopOver is self-contained and easy to pull out from controlsfx.

This commit embeds the PopOver in the project and removes controlsfx
dependency. The embedded version is exactly the same as previously
used in the project, so no change in semantics should occur.
2019-09-18 11:52:50 +02:00
battleofwizards
2290eb2875
Remove showing FPS rate in developer mode 2019-09-18 09:34:46 +02:00
battleofwizards
9ea6b2163e
Remove reactfx dependency
The reactfx was a 0.33MB dependency / 238 Java source files.

We only used it for FxTimer helper and to measure FPS in development mode.

The small FxTimer class got copied over into the project,
so there is no change in semantics.

The FPS measurement got replaced w/ com.sun.javafx.perf.PerformanceTracker,
an internal but long stable part of JavaFx. This is probably not a problem,
because it only concerns a rarely used, developer feature.
2019-09-18 09:34:46 +02:00
Steven Barclay
a392081462 Fix invalid neutral element handling in View comparators
Remove the flawed pattern of returning 0 in a comparator when the sub-
field of one of the two inputs being compared is null or absent. This
violates the Comparator contract, since returning 0 or otherwise should
define an equivalence relation.

Use Comparator.nullsFirst(..) in the table column comparators instead,
to ensure consistent ordering when a cell is missing a value. This fixes
ill-defined and erratic behaviour in the underlying merge/insertion sort
of the table rows done by the FX library.
2019-09-17 18:59:34 +01:00
Christoph Sturm
f2ec433cc2 use /usr/bin/caffeinate to disable power management on macOS 2019-09-17 18:22:46 +02:00
chimp1984
b26a15600d
Use static method, remove unused formatter field 2019-09-17 16:56:30 +02:00
Christoph Atteneder
cc3128d4e0
Merge branch 'master' of github.com:bisq-network/bisq into release/v1.1.6
# Conflicts:
#	core/src/main/java/bisq/core/offer/OfferUtil.java
#	core/src/main/resources/i18n/displayStrings.properties
#	desktop/src/main/java/bisq/desktop/main/MainView.java
#	desktop/src/main/java/bisq/desktop/main/MainViewModel.java
#	desktop/src/main/java/bisq/desktop/main/market/trades/TradesChartsViewModel.java
#	desktop/src/main/java/bisq/desktop/main/offer/MutableOfferDataModel.java
#	desktop/src/main/java/bisq/desktop/main/overlays/windows/DisputeSummaryWindow.java
#	desktop/src/main/java/bisq/desktop/main/overlays/windows/OfferDetailsWindow.java
#	desktop/src/main/java/bisq/desktop/main/portfolio/openoffer/OpenOffersViewModel.java
#	desktop/src/main/java/bisq/desktop/main/portfolio/pendingtrades/PendingTradesView.java
#	desktop/src/main/java/bisq/desktop/main/support/dispute/DisputeView.java
#	desktop/src/main/java/bisq/desktop/main/support/dispute/agent/DisputeAgentView.java
2019-09-17 15:52:51 +02:00
Christoph Atteneder
c0563fba1b
Revert to SNAPSHOT version 2019-09-16 11:21:39 +02:00
wiz
2782ae0e0e
Remove extra field from JapanBankTransferForm::addFormForBuyer() 2019-09-14 21:06:28 +02:00
wiz
cf2158062b
Remove extra field from JapanBankTransferForm::addFormForBuyer() 2019-09-15 03:50:31 +09:00
wiz
4cc636dfea
Fix various bugs related to Japan Bank Transfer payment method (#3258)
* Fix various bugs related to Japan Bank Transfer payment method

* Add missing call to addFormForBuyer(), improve BuyerStep2View UI
* Fix Account Creation UI elements width to fill entire pane
* Fix Account Creation UI elements padding to avoid overlap
* Tweak trade display popup text and various strings
* Remove @Deprecated tag

* Remove unnecessary line break

* Improve layout of fields
2019-09-14 19:57:24 +02:00
wiz
f9687ad563 Fix various bugs related to Japan Bank Transfer payment method (#3258)
* Fix various bugs related to Japan Bank Transfer payment method

* Add missing call to addFormForBuyer(), improve BuyerStep2View UI
* Fix Account Creation UI elements width to fill entire pane
* Fix Account Creation UI elements padding to avoid overlap
* Tweak trade display popup text and various strings
* Remove @Deprecated tag

* Remove unnecessary line break

* Improve layout of fields
2019-09-14 19:55:58 +02:00
sqrrm
e6179990bd
Merge pull request #3255 from ripcurlx/update-data-stores-and-dates-for-v1.1.6
Update data stores and dates for v1.1.6
2019-09-14 01:25:20 +02:00
Christoph Atteneder
457da44b0c
Bump version number 2019-09-13 19:20:26 +02:00
Ben
069e5c0bea Update ParseUtils methods 2019-09-13 20:14:29 +03:00
Christoph Atteneder
690ceb013e
Fix typo 2019-09-13 18:55:04 +02:00
benk10
4a9623bd1b
Merge branch 'master' into fix-offer-volume-jumps 2019-09-13 17:30:05 +03:00
Christoph Atteneder
ac98a616f1
Update migration dates for v1.1.6 and remove testing code 2019-09-13 14:46:09 +02:00
Christoph Atteneder
15f71c9e02
Add information what to do next after mediation is completed 2019-09-13 12:16:40 +02:00
Christoph Atteneder
982f610a16
Add alternative text until mediation is activated 2019-09-13 11:57:57 +02:00
Christoph Atteneder
84d91582d6
Hide support request info, when trade is complete 2019-09-13 11:40:38 +02:00
Christoph Atteneder
8f2009683c
Fix typo fist > first 2019-09-13 11:24:40 +02:00
wiz
a09557fc45
Add new payment method: Japan Bank Transfer (furikomi) 2019-09-13 09:37:16 +02:00
wiz
4d2a51ebb0
Add new FormBuilder method for Label + TextField + AutocompleteComboBox 2019-09-13 09:36:56 +02:00
Christoph Atteneder
13f00a9f48
Merge pull request #3225 from wiz/japan-bank-transfer-payment-method
Add new payment method: Japan Bank Transfer
2019-09-13 09:36:09 +02:00
wiz
fb385a0074
Add new payment method: Japan Bank Transfer (furikomi) 2019-09-13 11:46:21 +09:00
Florian Reimair
2e7277689a
Merge pull request #3244 from bodymindarts/extract-ParsingUtils
Extract helper classes from BSFormatter
2019-09-12 19:51:48 +02:00
wiz
33c6f73c7b
Add new FormBuilder method for Label + TextField + AutocompleteComboBox 2019-09-12 12:05:46 +09:00
wiz
0c4a07e1e6
Tweak light/dark theme CSS colors for trade chat state messages 2019-09-11 20:44:43 +02:00
wiz
6b6957918d
Add missing CSS classes for trade message states and status icon 2019-09-11 20:44:28 +02:00
wiz
0c6b9d0c5f
Tweak light/dark theme CSS colors for trade chat state messages 2019-09-12 02:09:13 +09:00
wiz
14f8b2e81b
Add missing CSS classes for trade message states and status icon 2019-09-12 02:08:47 +09:00
chimp1984
4a3d070259
Close trader chat popup once trade gets closed
Fixes https://github.com/bisq-network/bisq/issues/3243
2019-09-11 17:53:39 +02:00
Justin Carter
3b46f3584f
Extract parsing functions from BSFormatter to ParsingUtils
Parsing and formatting are 2 different concerns, its better to have 2
classes that handle these.
2019-09-11 16:14:18 +02:00
Justin Carter
fe33a80de5
Extract DisplayUtils from BSFormatter
All methods that are only used in the desktop project are removed from
BSFormatter to DisplayUtils. This reduces the entanglement between the desktop and core
project by reducing the surface area of the coupling.
2019-09-11 15:58:48 +02:00
Florian Reimair
be21535a4b
Merge pull request #3239 from bodymindarts/static-BSFormatter-functions
Make stateless BSFormatter functions static and remove dead code
2019-09-11 13:10:37 +02:00
Justin Carter
57d9badf8f
Make stateless BSFormatter functions static and remove dead code
Making these functions static is a preparation for extraction.
2019-09-11 12:51:12 +02:00
sqrrm
dab8436e43
Merge pull request #3200 from ripcurlx/add-scripts-for-testing-jars
Add scripts for testing jars
2019-09-11 12:46:42 +02:00
Devin Bileck
0a606b4335
Hide account age verification salt for altcoin accounts
The salt for account age verification is not relevant for altcoins,
so hide the field.

Fixes https://github.com/bisq-network/bisq/issues/2537
2019-09-10 12:28:09 -07:00
chimp1984
d55114e019 Add mediation support (#3221)
* Refactoring: Move arbitration package inside dispute package

* Use abstract base class DisputeResolver for arbitrator

* Refactoring: Move mediator to mediator package.

* Let Mediator inherit DisputeResolver.

* Do not use protobuf inheritance

- Do not use protobuf inheritance for Arbitrator and Mediator as it
would break backward compatibility (and protobuf inheritance sucks
anyway)

* Refactoring: Move ArbitratorModule to parent package

* Refactoring: Rename ArbitratorModule to DisputeModule

* Add mediators to Filter

* Add mediators to filter window

* Use abstract DisputeResolverService as base class for ArbitratorService

- Add common base class for ArbitratorService and MediatorService

* Fix test

* Use abstract DisputeResolverManager as base class for ArbitratorManager

- Add common base class for ArbitratorManager and MediatorManager

* Refactor: Move arbitratorregistration package inside register pkg

* Refactor: Rename arbitratorregistration package to arbitrator

* Add registration view for mediator

- With cmd+D one can open the mediator regisration in account screen.
For arbitrator its cmd+R

* Separate pub key list for mediator (no new keys added yet)

* Set new pubkeys for mediator registration

- Before release set new keys from maintainer who manages keys

* Set disputes @Nullable. Add null checks

* Remove pre v0.9 handling for supported arbitrators from offer

- We changed handling of arbitrator selection with v0.9 so the
supported arbitrators in the offer is not used anymore. As we
enforced v1.2 a while back for trading we can be sure no pre v0.9
clients are used anymore and we can remove the optional code part.

* Remove supported arbitrators info in offer details window

- As we do not use supported arbitraors in offer anymore since v0.9
we can remove that.

* Remove check for matching arbitrator languages

As we do not use the supported arbitratos from offer since v0.9 we can
remove that check.

* Remove not used classes

* Remove checks for arbitrator and mediator in offer

We do not use those fields anymore. We still need to keep the fields
not nullable as old clients have the check still.

* Add check if sig of proto object is not empty

We got in dev testing sometimes an empty protobuf Alert. Might be
caused from protobuf copatibility issues during development but not
100% clear.
As it causes an exception and corrupted user db file we prefer to set
it to null.

* Remove TakerSelectMediator

This is not used anymore. Currently we would get an exception in the
trade but with follow up changes we will fix that...

Mediator handling and selection will be done the same way like
arbitrator. The current mediator handling was a relict from earlier
partial support for mediators which never got completed. As still a
null check is in place we need to ensure backward compatibility.

* Set arbitratorNodeAddresses and mediatorNodeAddresses to deprecated

We do not use arbitratorNodeAddresses and mediatorNodeAddresses anymore
but as there is a null check we still need to keep the field ans set it
to an empty arrayList.

* Make ArbitratorSelection generic. Add MEDIATOR_ADDRESS

We want to use the same selection algorithm for mediators as for
arbitrators, so we make ArbitratorSelection generic.
We add MEDIATOR_ADDRESS as extraMap entry to TradeStatistics2 to be
able to track number of trades with specific mediators.

ExtraMap is used to add new data to existing protobuf definitions which
is supported also by not updated clients. Adding a new protobuf field
would only be supported by new clients. As mediator support is a new
feature we could add a new field but to keep it in the same style like
arbitrator we prefer to use the map here as well.

* Refactor: Rename ArbitratorSelection to DisputeResolverSelection

* Add mediator to OfferAvailabilityResponse and mediatorNodeAddress to OpenOffer

WIP for supporting mediator selection the same way like arbitrators.

* Make arbitrator not nullable

We can ensure that all users are post v0.9 so we can remove the nullable
 support.

* Add selectedMediator to OfferAvailabilityModel

Remove nullable support in ProcessOfferAvailabilityResponse as we can
ensure all clients are post v0.9

* Refactor: Rename method

* Add todo for using more generic keys for display strings

* Refactor: Rename method

* Fix wrong handling of registeredMediator

Fix copy/paste error

* Add mediatorNodeAddress to trade

* Handle nullable mediator in ProcessOfferAvailabilityResponse

We do not get the mediator set from old clients but we expect a not null
value so we use the DisputeResolverSelection in case it is null.
We need to pass mediatorManager and tradeStatisticsManager to the
OfferAvailabilityModel.

* Change log level, cleanup

* Revert changes in OfferPayload due backward compatibility issues

Because of backward compatibility issues we needed to revert the removal
of arbitratorNodeAddresses and mediatorNodeAddresses. The signature
check for the offer  would fail as an old client would send a not-empty
list but new clients would have had an empty list, so the hash
would be different and the sig check fail and we would not accept that
offer. That is the reason why we still need to support those data even
it is not used anymore.

This is one of the more tricky cases for backward compatibility issues.

This version now is tested between new and old clients and trade and
disputes work.

* Add checks if any mediator is available

* Cleanup classes

* Fix test

* Add mediator DisputeStates

Add isMediationDispute to Dispute class.

If a dispute opening gets requested we check if state is
DisputeState.NO_DISPUTE and the open mediation. If state is
DisputeState.MEDIATION_REQUESTED we open arbitration.

* Cleanup; support isMediationDispute

* Handle mediator data in Dispute domain

- Add getConflictResolverNodeAddress method to Dispute to resolve
arbitrator or mediator address based on isMediationDispute flag.

- Rename arbitratorPubKeyRing to conflictResolverPubKeyRing in Dispute.
We cannot rename arbitratorPubKeyRing in the protobuf definition
as it would break backward compatibility.

* Add support for mediation in dispute domain

- Add isMediationDispute method to ChatSession
- Add isMediationDispute method to DisputeCommunicationMessage
- Add isMediationDispute to dispute id
- Refactor findDispute method
- Add null checks
- Cleanups

* Remove impossible case

Reserved and locked funds are used for offers and trades only.

* Fix typos

* Handle mediator and arbitrator strings

- Work in progress of adjusting correct terms.
- Cleanups

* Refactor: Rename arbitrator package to disputeresolvers

* Refactor: Rename ArbitratorDisputeView classes to DisputeResolverView

* Add support for close ticket from mediator (WIP)

In mediator case we do not create any transaction but only send the
dispute result which contains the mediators recommended payout
distribution. At teh traders we set the disputeState in the trade to
closed. This will be used in the next commits to update the trade so
that the traders get displayed the recommended payout and get asked if
they agree to that.

* Refactoring: Rename class

Rename MessageDeliveryFailedException to
DisputeMessageDeliveryFailedException

* Refactoring: Move dispute classes to dispute package

* Refactoring: Move Attachment class to dispute package

* Refactoring: Move package one level up

Move bisq.core.dispute.arbitration.messages to
bisq.core.dispute.messages

* Add todo comment

* Use ARBITRATION instead of DISPUTE

* Make DisputeManager abstract base class for ArbitrationDisputeManager

WIP for separating DisputeManager to ArbitrationDisputeManager and
MediationDisputeManager

* Add MediationDisputeManager

* Add MediationDisputeManager and ArbitrationDisputeManager to test

* Add mediationDisputeManager to relevant classes

There are some cases where arbitrationDisputeManager only is used.
Those are usually related to the payout tx. As mediators do not do a
payout we don't need it there.

* Add TradersArbitrationDisputeView and TradersMediationDisputeView

WIP for separating TraderDisputeView

* Refactor:  Rename class

* Refactor: Rename support.tab.support to support.tab.mediation.support

I am aware that committing non default translation files is not
recommended, but I think in that case it helps to avoid to show errors
for developers who use non-english locale. The changes will be
overwritten by transifex once it gets synced...

* Add DisputeView as common base class

Further refactor separation of diff. dispute views

* Refactor: Rename package

* Refactor: Rename DisputesView to SupportView

* Refactor: Rename package

* Add MediationDisputeManager to CorePersistedDataHost

* Add MediationDisputeList as db file, refactor DisputeList

WIP for making Dispute domain more generic. We want to separate
arbitration and mediation clearly.

* Further refactoring to split mediation and arbitration

* Further refactoring to split mediation and arbitration

Move methods used for arbitration only to ArbitrationDisputeManager

* Refactor: Rename package

Rename bisq.core.dispute to bisq.core.support

No other changes in that commit.
We want to improve the data structure with the trader chat.
Support will be the top level.
Then dispute containing arbitration and mediation.
Next to dispute will be trader chat.

bisq.core.support
bisq.core.support.dispute.arbitration
bisq.core.support.dispute.mediation
bisq.core.support.traderchat  (not happy with name for that yet)

* Refactor: Move dispute domain classes into isq.core.support.dispute package

* Refactor: Move classes

Move bisq.core.chat.ChatSession to bisq.core.support.ChatSession
Move bisq.core.chat.ChatManager to bisq.core.support.ChatManager
Move bisq.core.trade.TradeChatSession to bisq.core.support.traderchat.TradeChatSession

* Refactor: Move DisputeCommunicationMessage

* Refactor: Rename DisputeCommunicationMessage to ChatMessage

* Add comments

* Refactor: Move class

* Refactor: Rename class

* Refactor: Rename addDisputeCommunicationMessage and strings and variables

Rename disputeCommunicationMessage to chatMessage

* Refactor: Rename method

* Refactor: Rename methods and strings

* Add ArbitrationChatMessage and DisputeChatMessage

* Refactor: Rename class

* Move ChatMessage.Type to SupportType

Add to all supportMessages the SupportType so that we can filter in our
chatSessions the messages we are interested in.

* Refactor: Move classed to new package

* Refactor: Rename package

* Refactor: Move classed to new package

* Refactor: Move classed to new package

* Refactor: Rename classes

* Refactor: Rename package

* Refactor: Rename classes

* Refactor: Rename classes

* Remove empty DisputeModule

* Refactor: Rename classes

* Refactor SupportManager domain (WIP)

* Refactor SupportSession domain (WIP)

* Remove methods from SupportSession

* Dont expose p2pService in SupportManager

* Remove supportType in SupportSession

* Remove supportSession from getPeerNodeAddress method

* Remove isBuyer from supportSession

* Move creation of ChatMessage to SupportManager

* Remove isMediationDispute fielf in ChatMessage

* Remove chatMessage.isMediationDispute()

* Refactor: Rename trade.getCommunicationMessages()

* Move creation of ChatMessage to Chat

* Refactor: Rename class

* Refactor: Move ChatView class

* Refactor: Move PriceFeedComboBoxItem class to shared package

* Refactor: Use 'public abstract' instead of 'abstract public'

* Refactor: Use 'protected abstract' instead of 'abstract protected'

* Add traderChatManager.onAllServicesInitialized() to BisqSetup

* Remove unused param

* Refactor: Rename addChatMessage to addAndPersistChatMessage

* Fix missing check at ack msg handling

Various WIP refactorings/improvements

* Remove addAndPersistChatMessage from SupportSession

* Remove disputeManager from DisputeSession

* Fix missing getConcreteDisputeChatSession impl.

* Refactor: Rename package

* Refactor: Rename classes

Avoid trader as it might confuse with trader chat.
As for mediation/arbitration the agent (mediator/arbitrator) are acting
a bit like a server we use the client terminology for the traders.

* Refactor: Move classes to new package

* Fix missing protobuf data

- Add missing SupportType to protobuf
- Remove is_mediation_dispute from Dispute protobuf
 definition
- Add getAgentNodeAddress method
- Var. other refactorings, cleanups

* Clone list at persisting to avoid ConcurrentModificationException

* Fix order of SupportType

Old clients fall back to enum at slot 0.

* Add getDisputeState_StartedByPeer template method

* Add trade protocol tasks for mediation result tx signing and msg sending

* Complete protocol tasks for mediation

* Refactor: Remove unneeded SuppressWarnings type: "WeakerAccess"

* Complete mediation result protocol

Works now all but not much tested....

* Add activation date and capability

We need to make sure that not updated users cannot cause problems once mediation is supported. We would get mixed cases where one has a mediation ticket and the not updated user an arbitration ticket. To avoid that we set an activation date with about 10 days from release. Until that date mediation is not supported.
Additionally we use OfferRestrictions.REQUIRE_UPDATE_DATE for hiding offers from users how have not updated (we use the fact that mediator and arbitrator has been same in old version, in new version they are different).
An old client cannot take an offer from a new maker as he does not has set the new MEDIATION capability. He will get an null value as AvailabilityResult as he has not the new entry MISSING_MANDATORY_CAPABILITY.
We will also use the min version for trading in the filter, so that not updated users get a popup telling them to update and they see all offers deactivated.

* Various fixes

* Remove code part which does not make sense (anymore)

Maybe in older versions there was use of openDisputes and closedDisputes
but now it does not make sense anymore and arbitrator never gets 4 cases
opened if offline.

* Add check of balance is > 0

* Only close trade if payout tx is set

* Add missing check if arbitrator and mediator are available

* Fix wrong key

* Improve handling of checks and popup display

For create and take offer we check certain conditions and show a
popup if not met. This commit moves that to GuiUtils.

* Rename any occurrance of DisputeResolver to DisputeAgent

* Fix handling of mediatorPubKeyRing

* Remove disputeSummaryWindow.evidence fields

* Add missing persistence for MediationResultState

* Fix tests

* Make text more compact to not exceed space

* Refactor NotificationGroup

* Improve text, add dev testing feature for popups

* Improve text

* Renamed a key and assigned a new text

* Fix states

* Do not set errorMessage

Do not set errorMessage if both peers have opened a dispute and agent
was not online

* Remove logs used for dev testing

* Fix getMedian method with empty list

* Add new methods and tests

Add fromCommaSeparatedOrdinals and toCommaSeparatedOrdinals to convert
from string representations (used for handling backward compatibility
with mediation release).

Add check if int >= 0 to fromIntList

* Move error log outside of delayed call

* Add capabilities entry to extraDataMap in offer

The previous implementation did not work for supporting updates and
hiding offers from not updated clients.
We use now the capabilities converted to a string list and put it into
the extraDataMap. If a use with old persisted offers updates his offers
gets converted to add the capabilities. Updated clients will ignore
offers without the mediation capability set in the offer.

* Rename non sync protobuf definitions

As Christoph Sturm pointed out we can rename protobuf entries.
Only index number must not be changed.

* Fix UI state when arbitration has started

Only set mediation state if we are not in arbitration state.

* Remove restriction

* Fix typo; remove errorMessage

If both have opened a dispute and agent was not online we dont treat it
as error.

* Improve text

* Store full address for localhost dev testing

The arbitrator/mediator selection is based on statistics of usage of
agents in past trades. We put the first 4 chars into the trade
statistics, but for localhost that would be same vale for 2 diff nodes.

* Remove errorMessage

If both have opened a dispute and agent was not online we dont treat it
as error.

* Improve text

* Keep accept or reject button enabled after accept

- If peer never accepts the trader who has accepted first can change
to reject to open a arbitration dispute.
We could improve that by adding a new state to open arbitration
directly and show a diff. button text and popup. But I think for now
thats ok as well....

* Cleanups (no functional change)

- remove unused params
- remove not used code
- reformat
- clean up comments
- fix log levels
- remove redundant annotations

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Update core/src/main/resources/i18n/displayStrings.properties

Co-Authored-By: Steve Jain <mfiver@gmail.com>

* Improve text

* Auto fill remaining amount in custom payout

If mediator or arbitrator are doing a custom payout, we auto-fill
counterpart field with remaining amount, so he does not need to
calculate.
2019-09-09 20:51:57 +02:00
chimp1984
bb806cfbc3 Add bsq price trend indicator (#3226)
* Change text field for median to average 30

The average 30 days price is more relevant information than the small
different between average and median price. To add a second tuple of
both would be another option would overload the screen with not that
relevant information.

In a follow up commit we want to add an ip/down indication so see
price trend.

Fixes also handling of 0 values.

* Apply reformat (no code change)

* Add support for columnIndex

* Add price trend indicator

If average 30 days price is > av. 90 days price we show a green
arrow up, otherwise a red arrow down. If same we don't show an arrow.

* Fix dev test change

Forgot to change back a small change to test directions...

* Fix padding issues
2019-09-09 12:39:08 +02:00
Florian Reimair
69d70f386e
Revert non-changes 2019-09-06 16:21:22 +02:00
Christoph Sturm
bcaac51830 Assign more thread names at thread creation. 2019-09-06 11:07:34 +02:00
Ben
522ed4ca87 Move calculation to data model and fix typo 2019-09-06 09:58:50 +03:00
chimp1984
5d4f9afa71
Add 90 days average and median BSQ price 2019-09-06 04:43:30 +02:00
chimp1984
9af723f910
Remove not used fields 2019-09-06 03:00:08 +02:00
wiz
aae4977a95
Don't paint vertical grid lines on charts 2019-09-05 08:59:03 +02:00
Christoph Atteneder
eea0bd6635
Merge pull request #3191 from wiz/hide-chart-vertical-grid-lines
Don't paint vertical grid lines on charts
2019-09-05 08:58:27 +02:00
Christoph Atteneder
2abc4b4b14
Add scripts to create testing jars 2019-09-04 13:53:09 +02:00
Christoph Atteneder
285e5f236d
Merge pull request #3189 from gordonel/patch-1
Change trader-facing language to gender-neutral
2019-09-04 10:33:23 +02:00
wiz
ec633f0c37
Fix CSS styling bug caused by using Text() instead of Label() 2019-09-04 10:32:10 +02:00
Christoph Atteneder
dd17e0834d
Merge pull request #3188 from wiz/beyond-the-css
Fix CSS styling bug caused by using Text() instead of Label()
2019-09-04 10:31:53 +02:00
wiz
bf69f51861
Reduce size of chart axis font to fit Japanese string 2019-09-04 10:26:29 +02:00
Christoph Atteneder
16a2f07c21
Merge pull request #3192 from wiz/japanese-locale-chart-axis-bugfix
Reduce size of chart axis font to fit Japanese string
2019-09-04 10:26:13 +02:00
wiz
7be5cab812
More UI polish for Dark Mode
* Tweak contrast of background linear gradient
* Tweak background colors slightly darker
* Tweak foreground colors slightly lighter
* Tweak buy/sell buttons color slightly darker
* Tweak chart axis line and label font colors
2019-09-04 10:22:27 +02:00
Ben
082de826c5 Auto caluculate offer price from amount and volume
Fix Scenario 4 of issue #3050
2019-09-03 16:13:47 +03:00
wiz
c7c2082aa3
More UI polish for Dark Mode
* Tweak contrast of background linear gradient
* Tweak background colors slightly darker
* Tweak foreground colors slightly lighter
* Tweak buy/sell buttons color slightly darker
* Tweak chart axis line and label font colors
2019-09-03 21:58:37 +09:00
wiz
97b6ba133d
Reduce size of chart axis font to fit Japanese string 2019-09-03 21:39:07 +09:00
Ben
f393625b9b Fix amount change when "Below market price" is empty
Fix Scenario 1 of issue #3050
2019-09-03 15:25:01 +03:00
wiz
2618ac17ca
Don't paint vertical grid lines on charts 2019-09-03 20:21:24 +09:00
Gordon E
74215d1846
Update TakeOfferDataModel.java 2019-09-03 12:38:14 +03:00
Gordon E
ce43142507
Update TacWindow.java 2019-09-03 12:14:01 +03:00
wiz
93e4611831
Fix CSS styling bug caused by using Text() instead of Label() 2019-09-03 05:54:24 +09:00
Christoph Atteneder
e2a17dcb8e
Update data stores 2019-09-02 11:14:59 +02:00
Christoph Atteneder
a212a5889c
Merge pull request #3149 from ghubstan/validate-phone
Validate phone numbers
2019-09-02 09:47:11 +02:00
Christoph Atteneder
0e21ffb08e
Merge pull request #3168 from wiz/fifty-shades-of-gray
Various CSS fixes for v1.1.6
2019-09-02 09:24:36 +02:00
Christoph Atteneder
f972984a92
Merge pull request #3172 from battleofwizards/fix-doubleclick-on-autocomplete-dropdowns
Fix #3171 doubleclick on autocomplete dropdowns
2019-09-02 09:21:26 +02:00
Christoph Atteneder
e0c91d22b3
Merge pull request #3176 from sqrrm/blocknotify-option
Add rpcBlockNotificationHost option
2019-09-02 09:20:13 +02:00
chimp1984
6dafafd7b1
Fix performance issue in BsqWalletService
The updateBsqWalletTransactions method got called at each block for all
transactions. During block download that wasted a lot of cpu and
led to stuck UI thread and lost connections.
The updateBsqBalance is not cheap (a few ms) and called for 100s of txs
at each block was very problematic.
Furthermore the listeners on the walletTransactions observableList got
triggered which made the situation worse.

We changed the observableList to a ArrayList and use a listener which
gets called after the list is updated.
We also make sure the onTransactionConfidenceChanged listener is not
calling updateBsqWalletTransactions if bsq parsing is not complete and
if the depth of the tx is > 1.
In the updateBsqWalletTransactions method we use a flag and a delay
to ensure that the updateBsqBalance is not called more then once
in 100 ms.

We changed also the getter to return a cloned version of the list to
avoid potential concurrent modification exceptions at clients.

Closes #3175
2019-09-01 22:47:10 +02:00
wiz
6cef6e043e
Multiple CSS bugfixes for light/dark themes
[Light Theme]
* Fix wrong shade of gray used as background color on grid-pane
* Fix green scrollbars, should be gray as before

[Dark Theme]
* Fix action buttons being too dark on dark background
* Fix combo-box-editor referencing old CSS class names
* Fix incorrect shades of gray used for wizard item background
* Set font-smoothing to gray method

* Style javafx's main color palette, which fixes below issues:
* Fix dark text on dark background in text field on grid-pane
* Fix password entry input field dark on dark
* Fix trade chat bubbles and text
* Fix calendar date picker
* Fix viewing DAO proposal results
2019-09-02 05:09:34 +09:00
wiz
04d073fab7
Move CSS theme code into its own class, apply CSS theme to all scenes 2019-09-02 05:08:37 +09:00
sqrrm
f30b68b39f
Fix tests 2019-09-01 19:10:26 +02:00
battleofwizards
73c8832603
Fix #3171 doubleclick on autocomplete dropdowns 2019-08-31 22:48:25 +02:00
chimp1984
39e22ca44e
Fix bug with not showing system msg at peer who receives msg
- We only added the system msg when one opens the chat but not when
one received a message.
2019-08-31 01:14:43 +02:00
ghubstan
de4b59048b
Integrate PhoneNumberValidator into SwishForm
PhoneNumberValidator + Test Changes:
  Added no-arg constuctor required for Guice injection.
  Added isoCountryCode setter;  this field must be set before
  validation.
  Added validation of isoCountryCode.
  Added missing country code test.

SwishValidator Changes:
  SwishValidator now extends PhoneValidator.
  Added no-arg constuctor required for Guice injection.
  Set isoCountryCode = SE in constructor.

SwishForm Changes:
  Sets Swish acct phone number to normalized phone number if
  phone # validation is successful.
  Replaced Logger declaration with @Slf4j annotation.
  Formatted source.

Added 'validation.phone.missingCountryCode' property to i18n file.
2019-08-30 15:27:46 -03:00
Christoph Atteneder
6e232d89dd
Merge pull request #3139 from battleofwizards/add-autocomplete-on-market-buy-sell-tabs
Add dropdown autocomplete on Market, Buy, Sell tabs
2019-08-30 19:32:01 +02:00
Christoph Atteneder
b5f871b8ed
Merge pull request #3165 from chimp1984/trade-chat
Traders chat
2019-08-30 19:00:03 +02:00
chimp1984
50baa9b023
Close chat window if dispute gets closed 2019-08-30 18:44:43 +02:00
chimp1984
57ec0dbc7e
Persist chat position. Improve listener handling.
- Store last position of the chat window so if it gets closed and opened
again it opens at the last position.

- Fix issues with the listener for new messages.
The handler was called multiple times before. Now its is called only
once. Tested with multiple trades and scrolling.

We use maps for each trade to avoid multiple listener registrations
when switching views. With current implementation we avoid that but we
do not remove listeners when a trade is removed (completed) but that
has no consequences as we will not receive any message anyway from a
closed trade. Supporting it more correctly would require more effort
and managing listener deactivation at screen switches (currently we
get the update called if we have selected another view.

This part can be improved if any dev feels motivated but its not
trivial...
2019-08-30 18:08:12 +02:00
Christoph Atteneder
8edd2611db
Use button instead of label to fix tooltip font size, use material design icon and add additional cleanup code 2019-08-30 12:42:17 +02:00
Christoph Atteneder
964ca648b8
Fix positioning of badge 2019-08-30 12:04:55 +02:00
wiz
efe1b47b88
Additional CSS fixes/tweaks for Dark Mode theme 2019-08-30 10:13:12 +09:00
chimp1984
663d8591c4
Add chat rules system msg; cleanups 2019-08-30 00:58:06 +02:00
chimp1984
6304c9ec84
Add badge for num new chat msg 2019-08-30 00:07:51 +02:00
chimp1984
e0c1a85406
Add wasDisplayed field to chatMsg
- Fix logger
- Manage display state off trade chat msg (wip)
2019-08-29 22:29:36 +02:00
battleofwizards
3f1b188e21
Add dropdown autocomplete on Market, Buy, Sell tabs; fix #2226
Basic autocomplete feature for all dropdowns on the major tabs:

* Market / Offer Book
* Market / Trades
* Buy BTC
* Sell BTC

Known limitations:

* Autocomplete still missing from Settings, Account, DAO tabs
* Minor UX glitches remain despite lots of debugging and polishing

Related issues:

* fix #2226
* partially addressed #2712
* superseded #112
2019-08-29 20:33:34 +02:00
chimp1984
29e957a7ca
Apply changes from master 2019-08-29 19:11:09 +02:00
chimp1984
fa43f03151
Merge branch 'master_upstream' into sq-add-trader-chat
# Conflicts:
#	desktop/src/main/java/bisq/desktop/main/disputes/trader/TraderDisputeView.java
2019-08-29 19:09:49 +02:00
chimp1984
bfb111da67
Add close handler to popup
- Close already open chat if new one opens
2019-08-29 18:56:11 +02:00
wiz
d308491d7f
Minor CSS fixes for light/dark themes 2019-08-30 01:42:09 +09:00
chimp1984
2189cba41b
Show chat in popup instead of tab (WIP) 2019-08-29 17:50:14 +02:00
chimp1984
329572cc5d
Merge branch 'master_upstream' into sq-add-trader-chat
# Conflicts:
#	core/src/main/java/bisq/core/arbitration/DisputeManager.java
#	core/src/main/java/bisq/core/arbitration/messages/DisputeCommunicationMessage.java
#	core/src/main/java/bisq/core/trade/Trade.java
2019-08-29 16:50:32 +02:00
wiz
fd0c8652bd
Rename colors in bisq.css, add theme-light.css and theme-dark.css
Co-authored-by: Peter Banik <peter@froggle.org>
2019-08-29 20:48:01 +09:00
wiz
e2b47c8a37
Load different CSS file depending on dark mode setting 2019-08-29 20:28:04 +09:00
wiz
4eb85b955e
Add toggle switch UI preference for Dark Mode on/off
* Store preference for Dark Mode as int32 css_theme
2019-08-29 20:20:25 +09:00
Christoph Atteneder
d701d2f37a
Merge pull request #3157 from ripcurlx/change-burned-bsq-to-grouped-by-day
Group burned BSQ by day
2019-08-28 12:45:10 +02:00
Christoph Atteneder
41774bda48
Group burned BSQ by day 2019-08-28 11:18:01 +02:00
ghubstan
39d823a6fb
Validate phone numbers
Created new PhoneNumberValidator + Test. Validator hides
no arg constructor; public constructor requires two letter
ISO country code for validating inputs.

After successful validation, inputs are transformed into E.164
format and cached in a field, accessible via a getter method.
However, area and region codes are not checked for correctness.
End users are responsible for correctness of area/region codes.

Four i18n properties (validation.phone.*) were added to
displayStrings.properties

This is a partial fix for Issue #3042. The validator
will be integrated into the GUI if PR is approved & patch is
merged.

Question for Bisq devs:
Another new pkg protected class, CountryCallingCodes, contains
an immutable map of ISO country codes -> country calling codes;
it is the only non-validator class in its package. The map
declaration is too large to live in the PhoneNumberValidator class,
even after tweaking idea.properties in an attempt to prevent
the IDE from freezing. Is it OK to leave CountryCallingCodes
where it is, or is there a more appropriate home for it?
2019-08-27 12:19:52 -03:00
sqrrm
ace881cc04
Fix test, add singleton check for ChargeBackRisk 2019-08-27 12:47:02 +02:00
wiz
5bef161c6b
Tweak class names for navigation button text size for Japanese locale 2019-08-24 14:05:07 +09:00
wiz
d32f390809
Increase top navigation button text size for Japanese locale 2019-08-24 02:17:43 +09:00
Christoph Atteneder
0d9d1bdd8c
Merge pull request #3124 from battleofwizards/fix-dropdown-autocomplete-bugs
Fix bugs in SearchComboBox (improve autocomplete)
2019-08-23 11:10:35 +02:00
Christoph Atteneder
b43a006832
Merge pull request #3127 from devinbileck/activate-dao-preferences
Fix incorrect DAO full node check when loading PreferencesView
2019-08-22 19:35:25 +02:00
Devin Bileck
1780090558
Fix incorrect DAO full node check when loading PreferencesView
When loading the preferences view, it would always log a warning
indicating that DAO full node is selected without providing required
parameters even though it wasn't selected.
2019-08-22 01:28:11 -07:00
battleofwizards
fed956f63f
Fix bugs in SearchComboBox (improve autocomplete)
Bisq's SearchComboBox implements a simple autocomplete. It is used
on the "add new altcoin account" form.

This fixes the following bugs in the SearchComboBox:

* no more dropdown flickering (fixed hide+show hack)
* space key no longer resets the text input
* unconfirmed changes no longer affect the form
* empty list no longer renders empty dropdown

This is a preparation step for using SearchComboBox more widely
in the project.
2019-08-21 22:19:31 +02:00
Devin Bileck
b095086204
Prevent NullPointerException in ProposalsView
When activating the ProposalsView, the table height is updated on the
user thread. Sometimes the scene is unavailable and causes a
NullPointerException. This should at least prevent the exception.

Fixes #2883 and #3116
2019-08-21 00:59:30 -07:00
sqrrm
f2f62c7033
Merge pull request #3112 from freimair/optimizations
Various optimizations
2019-08-20 22:08:19 +02:00
Christoph Atteneder
85a93ba261
Merge pull request #3107 from christophsturm/christoph-more-tests
inject CorruptedDataFilesHandler instead of making it static
2019-08-20 11:34:14 +02:00
Florian Reimair
0501412d8e
Fix performance issue with DaoResultView 2019-08-20 11:18:17 +02:00
Christoph Sturm
7694d4e7d1 change some storage creations to injection. ensure its not a singleton 2019-08-19 17:19:45 +02:00
Christoph Sturm
b77cff9e26 inject CorruptedDataFilesHandler instead of making it static 2019-08-19 16:54:46 +02:00
battleofwizards
becfdc6819
Auto remove whitespace in the IBAN input field
When adding a payment account Bisq requires IBAN to be whitespace free.

It is annoying for the user to manually clean pasted IBAN of spaces.
In online banking IBAN-s are usually displayed *with* spaces for
better readability.

This commit auto-removes whitespace when user is leaving the input
field, right before validation, effectively allowing to paste
real world IBAN-s.
2019-08-17 22:36:26 +02:00
sqrrm
56037f0a08
Merge pull request #3077 from freimair/gui_tweaks
Gui layout tweaks
2019-08-16 18:23:55 +02:00
sqrrm
4381eea242
Merge pull request #3086 from christophsturm/p2ptest
inject publickeyring
2019-08-16 18:22:38 +02:00
Florian Reimair
9763753553
Merge pull request #3090 from battleofwizards/render-column-headers-in-csv-export
Render proper column headers and values for CSV exports; fix #3075
2019-08-14 18:46:41 +02:00
Florian Reimair
cb774176b7
Add minheight to prevent truncation 2019-08-14 18:34:43 +02:00
Christoph Sturm
5579c3019e rename MakerFeeMaker => MakerFeeProvider 2019-08-14 17:58:04 +02:00
Christoph Sturm
9eb174bc88 provide PubKeyRing and use it where appropriate instead of keyring 2019-08-14 17:58:04 +02:00
battleofwizards
72a6b784dc
Render proper column headers and values for CSV exports; fix #3075
When exporting to CSV, both portfolio/trades and funds/transactions
were lacking the column headers.

Additionally, portfolio/trades colum values were outdated and
not matching the intended export.

Both issues are fixed.
2019-08-14 16:35:40 +02:00
Christoph Sturm
d5af6e5260 avoid acronyms 2019-08-14 10:45:05 +02:00
Christoph Sturm
bd06d2a7df document what this is for 2019-08-14 10:42:38 +02:00
Christoph Sturm
17221cbed8 remove more powermock and jmockit tests.
ignore 2 or 3 tests that are not possible to convert now
2019-08-13 19:30:57 +02:00
Christoph Sturm
a8494a993a fix missing annotation 2019-08-13 15:58:14 +02:00
Christoph Sturm
c6f07ed945 singletonify the rest of the core module 2019-08-13 15:58:14 +02:00
Christoph Sturm
7500887484 even more singletoning 2019-08-13 15:58:14 +02:00
Christoph Sturm
3f097ebf63 more singletoning 2019-08-13 15:58:13 +02:00
Christoph Sturm
a4e8ec5ebf convert some of the core config 2019-08-13 15:58:13 +02:00
sqrrm
e52c255446
Merge pull request #3058 from christophsturm/bump-guice
use singleton annotation instead of binding as singleton
2019-08-13 15:19:41 +02:00
Florian Reimair
8821cdccf7
Dynamic list view sizes for DAO bonding tab 2019-08-13 12:43:40 +02:00
Florian Reimair
3018417d9b
Dynamic list view size for asset listing fee 2019-08-13 12:07:39 +02:00
Florian Reimair
637071c956
Dynamic list view size in Dao network monitor view 2019-08-13 11:44:47 +02:00
Florian Reimair
7e7d956f05
Dynamic list view size in accounts view 2019-08-13 11:22:08 +02:00
Florian Reimair
6ea0c50752
Update trading amount to prevent popup loop 2019-08-12 19:16:42 +02:00
sqrrm
fb1c96d24c
Merge pull request #2976 from niyid/master
Fixes for issues #2741, #2944, #2955
2019-08-09 15:35:21 +02:00
sqrrm
b92b4becfb
Merge pull request #3040 from bisq-2106-2/master
Fix for #2106
2019-08-09 15:32:50 +02:00
Christoph Atteneder
89073316c9
Merge branch 'master' of github.com:bisq-network/bisq into hotfix-v1.1.5
# Conflicts:
#	build.gradle
#	desktop/package/linux/Dockerfile
#	desktop/package/linux/package.sh
#	desktop/package/linux/release.sh
#	desktop/package/macosx/create_app.sh
#	desktop/package/macosx/finalize.sh
#	desktop/package/macosx/insert_snapshot_version.sh
#	desktop/package/windows/package.bat
#	desktop/package/windows/release.bat
#	relay/src/main/resources/version.txt
2019-08-08 11:19:51 +02:00
Christoph Atteneder
a56b367476
Revert to SNAPSHOT version 2019-08-08 10:34:06 +02:00
Christoph Atteneder
3bf3ff83b9
Bump version number 2019-08-08 09:54:54 +02:00
sqrrm
08a34e6cf8
Don't force close on checkpoint fail 2019-08-08 09:41:03 +02:00
sqrrm
398f173981
Don't force close on checkpoint fail 2019-08-07 23:19:21 +02:00
Christoph Sturm
643c0daef0 use singleton annotation instead of binding as singleton.
this is the correct way to do it. the way it is currently done means
that if a component is not declared in a module, guice still finds it
but does not use the singleton lifecycle

binding as singleton in the module is meant to be used for classes that
we don't have the sourcecode for (i.e. jdk classes)
2019-08-06 17:44:47 +02:00
Christoph Sturm
aa4813d7b1 don't fail if there is no shutdown hook. 2019-08-06 17:44:47 +02:00
Christoph Sturm
20e011178e bump guice version and start testing desktop guice setup 2019-08-06 17:44:47 +02:00
Niyi Dada
b4f79f2e73 Fixed column indexing. 2019-08-06 11:35:59 +01:00
Niyi Dada
d12a6c2e0f Reformatting completed. 2019-08-01 13:11:38 +01:00
Niyi Dada
09369c6043 Reformatting. 2019-08-01 12:29:05 +01:00
Niyi Dada
0fffbe670e Columns added to export but hidden from view table.
- Transaction Fee
 - Maker Fee
 - Buyer Deposit
 - Seller Deposit
2019-07-31 22:55:22 +01:00
Christoph Atteneder
fdf5364c47 Add domain layer for signed account age witnesses (credits ManfredKarrer and oscarguindzberg) 2019-07-30 11:38:57 +02:00
Christoph Atteneder
db25293d62
Merge branch 'master' of github.com:bisq-network/bisq into hotfix-for-v1.1.3
# Conflicts:
#	build.gradle
#	desktop/package/linux/Dockerfile
#	desktop/package/linux/package.sh
#	desktop/package/linux/release.sh
#	desktop/package/macosx/create_app.sh
#	desktop/package/macosx/finalize.sh
#	desktop/package/macosx/insert_snapshot_version.sh
#	desktop/package/windows/package.bat
#	desktop/package/windows/release.bat
#	relay/src/main/resources/version.txt
2019-07-29 19:00:37 +02:00