- 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...
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
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?
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.
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.
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
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.
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.