148 Commits

Author SHA1 Message Date
Khushboo Mehta
1f636e1198 fix(@desktop/browser): Fix for custom homepage not launched in dapp browser
fixes #4036
2021-11-11 09:29:00 -05:00
Richard Ramos
46f9e1fc93 fix: provider chainid format 2021-11-05 15:55:35 -04:00
Khushboo Mehta
0d7d09e351 fix(@desktop/browser): Add new bookmark Modal doesnt display url and name of website.
Also fixed behaviour of add/removing a bookmark.

fixes #4037
2021-11-05 15:35:05 -04:00
Pascal Precht
313208cfd4 fix(@desktop/browser): fix paste button in favorites modal
This fixes the base button in the favorites modal by replacing the legacy
`Input` component with StatusQ's `StatusInput` and `StatusButton` components.

It also updates the validation mechanism to use the one provided by StatusQ.
The `height` of the modal has been adjusted due to its content growing when
validation errors are shown.

This will go away as soon as we replace `ModalPopup` with `StatusModal`.

Fixes #3977
2021-11-05 11:02:45 -04:00
Richard Ramos
c0d87dd063 refactor: provider pt1 and dapp permissions service 2021-11-05 11:02:45 -04:00
Sale Djenic
f0b2ed6cca refactor(@desktop/general): appSettings moved to Nim 2021-11-05 11:02:45 -04:00
Richard Ramos
70c1095b60 refactor: creating module for bookmarks and provider 2021-11-05 11:02:45 -04:00
Alexandra Betouni
426c116bac refactor(desktop) Made shared a QML module
Use it as import shared 1.0, import shared.controls 1.0
etc instead of import "../../../shared"

Closes #3934
2021-10-27 18:05:45 -04:00
Pascal Precht
8617c70742 refactor: remove AccountSelector and replace with StatusAccountSelector 2021-10-27 11:48:43 -04:00
Alexandra Betouni
056f84c301 refactor(desktop/chat) Cleaning up popups 2021-10-26 16:22:49 -04:00
Pascal Precht
2db77fa31c refactor: replace StatusIcon and StatusLoadingIndicator with StatusQ components 2021-10-26 10:47:47 -04:00
Richard Ramos
7fe218fc85 fix: missing property in browser backend and path to provider.js
Fix #3827
2021-10-26 14:33:37 +02:00
Khushboo Mehta
14b49b800a refactor: remove StatusIconButton from ui/shared/status
fixes #3832
2021-10-26 08:27:11 -04:00
Pascal Precht
684d0b30b6 refactor(@desktop/browser): use StatusQ controls in browser module 2021-10-21 09:22:35 -04:00
Pascal Precht
ecec858594 refactor(Browser/FavoritesBar): use StatusQ StatusModal and StatusButton 2021-10-21 09:22:35 -04:00
Alexandra Betouni
9cc361c40a refactor(desktop/chat) Moving chat to new architecture
Closes #3710
2021-10-20 15:29:38 -04:00
Pascal Precht
88049eac49 refactor: move TransactionSigner to ui/shared/views 2021-10-14 12:51:27 -04:00
Pascal Precht
87ea584b62 refactor: move Timer to ui/shared/controls 2021-10-14 12:51:27 -04:00
Pascal Precht
0b302c08a3 refactor: move StyledTextField to ui/shared/controls 2021-10-14 12:51:27 -04:00
Pascal Precht
61ccf9c757 refactor: move StyledText to ui/shared/panels 2021-10-14 12:51:27 -04:00
Pascal Precht
638e91717e refactor: move Separator to ui/shared/panels 2021-10-14 12:51:27 -04:00
Pascal Precht
322a071aa3 refactor: move SVGImage to ui/shared/panels 2021-10-14 12:51:27 -04:00
Pascal Precht
273f0f8961 refactor: move RoundedIcon to ui/shared/panels 2021-10-14 12:51:27 -04:00
Pascal Precht
37e71ca431 refactor: move RecipientSelector to ui/shared/controls 2021-10-14 12:51:27 -04:00
Pascal Precht
fa3adb30e4 refactor: move PopupMenu to ui/shared/popups 2021-10-14 12:51:27 -04:00
Pascal Precht
cbfe90947e refactor: move ModalPopup to ui/shared/popups 2021-10-14 12:51:27 -04:00
Pascal Precht
86a57a308b refactor: move LabelValueRow to ui/shared/panels 2021-10-14 12:51:27 -04:00
Pascal Precht
bdc7c799d2 refactor: move Input to ui/shared/controls 2021-10-14 12:51:27 -04:00
Pascal Precht
dc81cda66c refactor: move CopyToClipboardButton to ui/shared/controls 2021-10-14 12:51:27 -04:00
Pascal Precht
5d05b415ba refactor: move view and panels components into controls if they belong there 2021-10-14 12:51:27 -04:00
Pascal Precht
2d47223e1c refactor: move AccountSelector into ui/shared/panels 2021-10-14 12:51:27 -04:00
Pascal Precht
4e8f2303e6 refactor(@desktop/profile): introduce new QML and store structure in profile section
Closes #3712
2021-10-14 09:29:05 -04:00
Khushboo Mehta
80de3f75eb fix(@desktop/wallet): move QML Wallet section to new architecture
fixes #3714
2021-10-13 13:53:01 -04:00
Khushboo Mehta
77bde47de0 \refactor: move QML Browser section to new architecture
closes #3709
2021-10-05 16:29:18 -04:00
Alexandra Betouni
4ee21ada05 feat(desktop) Added image function in Style
Introduced Style.svg() Style.png() Style.emoji() and
Style.icon() in Style.qml. Those should be used to
set the source in Images instead of using relative
paths. Usage:
Image {
   source: Style.svg("check)
   ....

Also moved all Singletons inside a new "utils"
folder and made it a QML module, to use
import utils 1.0 instead of relative paths

Closes #3678
2021-09-28 15:28:00 -04:00
Anthony Laibe
336ea968de refactor: browser use object 2021-09-28 15:25:57 -04:00
Richard Ramos
285f54dab6 EIP1559 2021-09-10 13:42:19 -04:00
Khushboo-dev-cpp
7d5fac46f1 fix(@desktop/browser) Websites with transparent background not handled properly
Removed background color assignment as by default it is set to white if unassigned. This fixes the issue of strange grey background in dark mode with white components from websites with transparent background

fixes #3209
2021-08-20 14:59:12 -04:00
Khushboo Mehta
27ff37e166 fix(@desktop/browser): Favorite list get truncated when its too long
Adapted the bookmark list to a grid view to accomodate items when the list gets long.
Max column size is 7 and in case screen cannot show 7 columns it will flow to the next row.
Also added ideinticon for a website with no icon
Fixed the issue of DApps launching on all new tabs.

fixes #2009
2021-08-19 11:15:55 -04:00
Anthony Laibe
2b027088e5 fix(@desktop/browser): hide favorite bar when there is none
fixes #3210
2021-08-13 12:35:17 -04:00
Jonathan Rainville
164efde2c4 chore(theme): add dropShadow theme color and use it where needed 2021-08-02 17:02:01 -04:00
Andrei Smirnov
5d837c450c Fixed issues #2560, #2795, #2796. 2021-07-02 08:51:14 -04:00
Jonathan Rainville
702f52f6ed fix(browser): fix browser undefined model 2021-06-22 12:59:11 -04:00
Iuri Matias
599bf731fb refactor: extract 'channels' to its own file 2021-06-18 12:12:01 -04:00
Iuri Matias
6bcdb9ca54 refactor wallet views
add getSettings methods to src/status

fix issue with calling getSettings; document issue

remove most direct references to libstatus; document some common issues

remove most references to libstatus wallet

add mailserver layer to status lib; remove references to libstatus mailservers

remove libstatus accounts references

move types out of libstatus; remove libstatus types references

remove libstatus browser references

refactor libstatus utils references

remove more references to libstatus stickers

remove references to libstatus constants from src/app

remove more libstatus references from src/app

refactor token_list usage of libstatus

refactor stickers usage of libstatus

refactor chat usage of libstatus

remove libstatus references from the wallet view

remove logic from ens manager view

fix issue with import & namespace conflict

remove unnecessary imports

refactor provider view to not depend on libstatus

refactor provider view

refactor: move accounts specific code to its own section

fix account selection

move collectibles to their own module

update references to wallet transactions

refactor: move gas methods to their own file

refactor: extract tokens into their own file

refactor: extract ens to its own file

refactor: extract dappbrowser code to its own file

refactor: extract history related code to its own file

refactor: extract balance to its own file

refactor: extract utils to its own file

clean up wallet imports

fix: identicon for transaction commands
Fixes #2533
2021-06-17 16:11:01 -04:00
Eric Mastro
0b0a542828 fix: loading of wallet history, display of tx datetime
Fixes: #2539.

Transaction history is now correctly being fetched from status-go as per mobile. Firstly, when accounts are added (ie as watch accounts), `wallet_checkRecentHistory` must be called first so that the status-go db is populated. After that, `wallet_getTransfersByAddress` can be called. On app load, when we run the `initBalance` logic, we are calling `wallet_getTransfersByAddress`, asking for the last 20 transactions with the `loadMore` parameter set to false. When the user navigates to the Wallet > History tab, they can then click “Load More” to fetch more transactions from status-go. Once the number of transactions returns false below the expected amount, the remaining transactions to fetch have been exhausted and the “Load More” button is disabled.

feat: add non-archival node warning to the UI to indicate to the user that they may not have complete results

feat: set active account to the added account
Once an account is added to the wallet, that newly added account is selected as the active account.

1. The “load more” button is active when new transactions that aren’t already displayed are returned from `wallet_getTransfersByAddress`. This is the only way to enable or disable the “Load more” button as status-go is not able to return information regarding whether or not there are more transactions to be fetched. The downside to this is that lets say the last page of transactions is returned, but there are no more pages left. These returned txs are not currently displayed, so the “load more” button will still be enabled. However, the next click of the button will return 0 results, thus disabling it. It’s effectively an extra click to get to the disabled state.
2. For more information on how the `toBlock` parameter operates for the `wallet_getTransfersForAddress` RPC call, see https://notes.status.im/XmENTrVRRaqhwE4gK0m8Mg?view.
2021-06-10 10:47:03 +10:00
Richard Ramos
5895495bc3 Add missing accountsChanged event to web3 provider
Fixes #2423
2021-05-18 15:24:41 -04:00
Eric Mastro
ee1287b71d fix: prevent crash on generate account wrong password
Fixes #2448.

Currently, if a wrong password is entered when generating a wallet account, the app will crash due to attempting to decode a `GeneratedAccount ` from an rpc response containing only an error.

With this PR, we are detecting if an error is returned in the response, and if so, raising a StatusGoException. This exception is caught in the call chain, and translated in to a `StatusGoError` which is serialised and sent to the QML view, where it is parsed and displayed as an invalid password error in the input box.

refactor: remove string return values as error messages in wallet model
In the wallet model, we were passing back empty strings for no error, or an error as a string. This is not only confusing, but does not benefit from leaning on the compiler and strong types. One has to read the entire code to understand if a string result is returned when there is no error instead of implicitly being able to understand there is no return type.

To alleviate this, account creation fundtions that do not need to return a value have been changed to a void return type, and raise `StatusGoException` if there is an error encountered. This can be caught in the call chain and used as necessary (ie to pass to QML).

refactor: move invalid password string detection to Utils
Currently, we are reading returned view model values and checking to see if they include a known string from Status Go that means there was an invalid password used. This string was placed in the codebased in mulitple locations.

This PR moves the string check to a Utils function and updates all the references to use the function in Utils.
2021-05-14 10:27:37 -04:00
Richard Ramos
7ee11e27e2 fix: can't send transactions on browser
Fixes #2433
Fixes #2422
2021-05-03 14:13:41 -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