Commit Graph

233 Commits

Author SHA1 Message Date
Eric Mastro daabef3a3c fix: do not show watch-only accounts as “from address”
Fixes: #2257.

If a user had selected a watch-only address in the wallet, the backend `walletModel.currentAccount` property would also change. When loading a transaction modal, this property was used to set the `selectedAccount` value for the “from” `AccountSelector`, regardless if the account was a watch-only address.

This PR updates the logic for `selectedAccount` such that it will only allow the account to be selected if it is not a watch-only account.
2021-04-29 12:36:39 -04:00
Pascal Precht aa8d9a7f48 feat: introduce StatusLoadingIndicator component
A `StatusIcon` that rotates infinitely and can be used for indicating
pending states.

Usage:

```
StatusLoadingIndicator {
    width: 24 // default: 17
    height: 24 // default: 17
    color: "red" // default: loading asset color
}
```

This also removes `LoadingImage` component from `ui/shared`.

Closes #2360
2021-04-27 14:56:09 -04:00
Eric Mastro 58e292e9ab fix: Add close button to seed backup warning
Fixes: #2248.

Add a close button to the seed backup warning banner in the wallet. The banner will reappear upon application restart as long as the seed hasn’t already been backed up (`profileModel.mnemonic.isBackedUp`).

A new .svg with a white outline needed to be added as well because the original “close.svg” had a purple outline, which would show up when the ColorOverlay applied to the close button had an opacity less than 1.0.
2021-04-21 17:59:27 -04:00
Pascal Precht aeedc87368 feat: introduce global settings
This commit introces global settings that apply across accounts used
inside the application. This is useful when settings like the selected
locale should b the same across all accounts.

Closes #2144
2021-04-19 13:53:14 +02:00
Jonathan Rainville dae0d60684 feat: extract seed textArea to shared component and use it in wallet 2021-04-15 16:50:57 -04:00
Pascal Precht 63bc6f0e53 chore: remove unnecessary splitview props 2021-04-15 10:12:50 +02:00
Pascal Precht 153d37a7dc fix(Wallet): use correct theme colors for wallet icons in receive modal 2021-04-14 17:00:37 +02:00
Pascal Precht f2524db882 fix(Wallet): introduce hover effect for wallet accounts 2021-04-14 17:00:37 +02:00
Jonathan Rainville 8607251a6e fix: fix qml warnings 2021-04-13 17:49:43 -04:00
Pascal Precht 0b5a51177f core: update token icon assets
Closes #2019
2021-04-13 15:12:12 -04:00
Jonathan Rainville 6c0fce5b0c fix: menu dropdowns not closing on button click and position 2021-04-01 16:59:43 -04:00
Jonathan Rainville de307276c1 fix: wallet left tab button colors 2021-03-26 15:28:06 -04:00
Jonathan Rainville 038ea033c9 feat: implement new dark theme colors for menu and more
Fixes #2094
2021-03-26 15:28:06 -04:00
Pascal Precht 907c257eaf fix(Wallet): prevent signing phrase from leaking out of modal 2021-03-26 11:30:03 -04:00
Eric Mastro 2336aa4e6f fix: custom token validation for non-token addresses
When contract addresses that are not ERC-20 or ERC-721 were input, the token would be allowed to be added and would crash the app.

In addition, when an ERC-20 contract was deployed without a name and symbol, “Invalid ERC-20 address” would appear.

This PR adds error checking from the token detail lookup and reports the error back to the user in the modal. This prevents non-ERC-20/721 contracts from being able to be added to the app and prevents a crash.
2021-03-25 15:52:02 -04:00
Jonathan Rainville 2a9f9118a1 fix: fix settings not being refetched when they had been edited before 2021-03-24 12:06:24 -05:00
Jonathan Rainville b9594591b0 fix: fix a lot of issues relative to dark theme
Fixes #1997
2021-03-16 17:22:58 -04:00
ace-smart 4c31a97db8 Fixed wrong color issue of the wallet layout. Fixes #1903 2021-02-25 15:43:14 -05:00
Richard Ramos 6207c8af53 fix: appSettings were being overwritten due to defaultAppSettings periodically executing sync() 2021-02-18 16:40:21 -05:00
Jonathan Rainville 0e699cac65 chore: run translation scripts 2021-02-18 15:23:58 -05:00
Pascal Precht 5ec3ad88d5 fix(SetCurrencyModal): fix callstack size exceeded error
There's a bug in the `SetCurrencyModal` where it runs into a callstack size
exceeded error because we're calling it's `open()` API to open itself.
That function happens to call itself again and again.

The reason that API was introduced in the first place, was to ensure that
the configured default currency is reflected currectly.

This commit fixes that issue by getting rid off the `open()` and `close()`
APIs which cause the mentioned error, and rely on `openPopup`'s parameters
configuration instead.
2021-02-08 17:37:28 -05:00
Pascal Precht 62183fb414 refactor: replace StyledButton with StatusButton
There are some inconcistencies in the application when it comes to
button UI elements because we're using `StatusButton` in some places,
in other we use `StyledButton`. The latter is the original
component we've created when we started out building Status
Desktop, but is planned to be removed entirely in favour of
`StatusButton`.

This commit replaces the usages of `StyledButton` with `StatusButton`
2021-02-02 10:57:42 +01:00
Jonathan Rainville bc61aee55e fix: fix QML errors 2021-02-01 13:27:20 -05:00
Richard Ramos c241bd47db fix: code review 2021-02-01 12:02:55 -05:00
Richard Ramos 81c33fe2af Do initial balance fetch async 2021-02-01 12:02:55 -05:00
Pascal Precht 3a538acb1e feat: introduce StatusWalletColorSelect component
This is a new form control component to select colors for wallet
accounts. It will replace the currently used `ColorSelect` in the
Status Desktop application so it aligns with the new designs.

Closes #1497
2021-01-21 11:59:34 -05:00
Pascal Precht 787354b0dc feat: introduce StatusExpandableAddress component
This introduces a new component to render Addresses that can be
expanded as well as copied using `CopyToClipBoardButton`.
While there's already an `Address` component that allows for expansion,
it doesn't give us control over it's look and feel and, should rather
be a `Button` anyways.

There's also cases in the application where we render a collapsed address
and don't allow for expanding it. In such cases, we might not want/need
a button at all.

Might make sense to introduce a separate address component that just shows
a collapsed address without any behaviour, which can then be used inside
`StatusExapandableAddress`.

Closes #1633
2021-01-19 16:48:26 -05:00
Pascal Precht c328f332f6 fix(Wallet): fix bug that prevented users from setting the currency
Setting the default currency through the UI doesn't work because of a `MouseArea` that
is masking the an underlying `StatusRadioButton` which will tricker the default currency
change.

This commit enhances the `MouseArea` to trigger the default currency change and it
also ensures the UI is responding accordingly. Namely that the new default currency
is correcly selected in the list of currencies.

There's also a little change in the background hover color so it works well across
light and dark themes.

Fixes #1632
2021-01-14 16:00:10 -05:00
Pascal Precht 7c8aca0fbc uiux(Wallet): improve asset manager usability and UI
This commit does a couple of things:

- It changes a label in the wallet menu from "Add/remove Token" to "Manage Assets"
  as it has been designed
- It changes the asset list so a hover state could be introduced. Previously there
  was no visual effect or response to mouse hover on asset items
- It improves usability of the asset list by making an entire asset item
  clickable to toggle the asset in the wallet. This was not possible before.
  Users had to click the checkbox achieve this effect

Closes #1631
2021-01-14 15:43:29 -05:00
Jonathan Rainville e459d4dbd4 fix: fix PopupModal to not show a footer at all if there is no children 2021-01-13 14:32:35 -05:00
Pascal Precht 7fe54a1182 uiux(Wallet): ensure send and receive buttons have the right look & feel
Closes #1628
2021-01-12 16:33:46 -05:00
Pascal Precht b2636a0807 uiux(Wallet): use StatusButton instead of StyledButton
`StyledButton` is considered obsolete and by using `StatusButton` we're getting
the expected and correct look & feel of buttons by default.

Closes #1627
2021-01-12 16:33:39 -05:00
Jonathan Rainville 89da5dd923 feat: open links in user request browser with modal 2021-01-04 15:29:23 -05:00
Richard Ramos 239b95e9a2 fix: initialize wallet paths and types, and disable deletion of non-watch accounts 2020-12-09 14:18:45 -05:00
Richard Ramos ae30d04010 refactor: ProfileView 2020-12-08 17:01:22 -05:00
hydrogen fad0bb858e fix: password count and disable repeat until first is valid
cleanup
2020-12-04 15:52:23 -05:00
Richard Ramos 1e245a3375 fix: don't allow importing existing seed phrases / private keys in wallet and clean error messages when opening popup 2020-12-02 14:44:49 -05:00
Richard Ramos cfb17cd85c fix: remove duplicated SNT in token list and add mouse cursor to wallet list 2020-12-02 14:35:07 -05:00
Richard Ramos 60702ee639 feat: Add warning in wallet to backup seed phrase 2020-12-01 14:37:43 -05:00
Richard Ramos 6f76d079ae fix: hover state, title and show scrollbar currency list modal 2020-12-01 14:37:36 -05:00
Richard Ramos ba06d46d68 fix: menu icons and width on wallet module 2020-12-01 14:02:19 -05:00
Richard Ramos 3a6248319c fix: QR button acts as a toggle, and changed the font of HeaderButtons 2020-12-01 13:46:47 -05:00
Richard Ramos c405029e37 fix: wallet derivation paths for generated accounts , imported seed phrases and private keys 2020-12-01 13:31:30 -05:00
Richard Ramos 3f12320764 feat: checkbox style 2020-12-01 13:30:58 -05:00
Richard Ramos 91f5aae9e7 feat: show sign phrase modal in wallet 2020-12-01 13:30:07 -05:00
Richard Ramos 0b8a6ae511 Various ui fixes on wallet
-  Account color is used in list hightlight, separator and tabs
- Popup fields are cleared when opened
- Account color is randomized when popup is opened
2020-12-01 13:29:23 -05:00
Richard Ramos f88a05e2f5 Various ui fixes on wallet
- Show scrollbars in asset list if needed
- Show scrollbars in account list if needed
- Fix margin between assets
- Add symbol to asset amounts
- Stop scrolling at element bounds
2020-12-01 13:29:12 -05:00
emizzle e0e1487643 refactor: replace transaction modal `reset` functionality
The transaction component's `reset` functionality was meant ot reset a form when the modal was closed. It was difficult to manage and added extra overhead for each additional transaction modal created.

Instead of using reset functions, we can use Loaders to load and destroy the modal's as they are opened and closed. We do not need to keep them in memory and then also reset their functions. It creates a smaller memory footprint to destroy the object and reload on open.

feat: load gas prediction prices asynchronously
2020-11-26 11:17:24 -05:00
Pascal Precht 2aac433a3d refactor: get rid off `AddButton` and make use of `StatusRoundButton` instead 2020-11-19 16:52:32 -05:00
emizzle 76e7897e8d fix: 1-on-1 send tx recipient show in tx preview
We were previously displaying an address in the "to" field for TransactionPreview. Instead, this is meant to be a contact view.
- Fix ContactSelector to trigger selectedContactChanged
- Fix RecipientSelector > ContactSelector to trigger resolveEns from outside call to prevent infinite loop from the above fix
- Add alias to pre-selected contact for the Contact view of TransactionPreview
- Add option to change debounce delay so that when values are pre-selected (readonly), there is no delay before resolution.
- Fix missing tx data param in walletModel.estimateGas
2020-11-11 12:01:38 -05:00