Commit Graph

1345 Commits

Author SHA1 Message Date
Anthony Laibe 59f604349c refactor(@wallet/desktop): refactor wallet with new architecture
refactor: wallet: connect current account

refactor(@wallet): load collection and connect to store

refactor(@wallet): add boilerplate for accounts creation/generation

refactor(@wallet): watch account

refactor(@wallet): Add account generation

refactor(@wallet): display all accounts

refactor(@wallet): switch account

refactor(@desktop): update current currency

refactor(@desktop/wallet): token action

refactor(@desktop/wallet): Add update account

refactor(@desktop/wallet): filter chat account from wallet

refactor(@desktop/wallet): Update currency attribute

refactor(@desktop/wallet): Fix display of various balances

refactor(@dekstop/wallet): handle current account changed

refactor(@wallet/desktop): add notify event on main section

refactor(@desktop/wallet): Push events from service

refactor(@desktop/wallet): handle all tokens event

refactor(@desktop/wallet): refresh accounts on event

refactor(@wallet/desktop): formatting of currency balances

refactor(@desktop/wallet): load collectible

refactor: refactor wallet transaction history to the new architecture

update status-lib

refactor: add back events for the transaction history

refactor: support multiple accounts in the transaction history
2021-11-05 11:02:45 -04:00
Iuri Matias 7be5572ede add privacy module 2021-11-05 11:02:45 -04:00
Iuri Matias 7c8f3f5923 add mnemonic module 2021-11-05 11:02:45 -04:00
Iuri Matias 4b10d26865 add language section & service 2021-11-05 11:02:45 -04:00
Richard Ramos be5ac485da remove old permissions file 2021-11-05 11:02:45 -04:00
Richard Ramos 50a3e5f346 refactor: dapps and permissions 2021-11-05 11:02:45 -04:00
Richard Ramos a156a8be1e fix: wrong service method signature 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
Jonathan Rainville 1d0b20b156 refactor: refactor contacts sub-section to the new architecture 2021-11-05 11:02:45 -04:00
Sale Djenic 8c3c4d7607 refactor(@desktop/general): code cleaned app after `accountSettings` and `globalSettings` moved to Nim
Since we have `accountSettings` and `globalSettings` available on both sides Nim
and qml, we don't need `src/app_service/service/local_settings/service` any more.
Indeed it has never been a service logically, but we made it as service according to
the old code base.

Accessing any of local setting instances is easy doable from any part of the app just
using `singletonInstance` and appropriate settings from it.
2021-11-05 11:02:45 -04:00
Sale Djenic 3f6bb66536 refactor(@desktop/general): `globalSettings` moved to Nim 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
Iuri Matias 4e3ecbf4b5 add profile section
add profile module

add boilerplate for profile section

add profile module

add profile module

fix variant

 use accounts service

get identityimage to work

cleanup

add other contacts services

add contacts service

make contact section compile with refactor

fix controller and service interfaces

add about section
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
Anthony Laibe 5b1510313a fix: loading service without error 2021-11-05 11:02:45 -04:00
Anthony Laibe a7a56cf471 refactor(@desktop/wallet): connect ui and account token 2021-11-05 11:02:45 -04:00
Anthony Laibe 6a1923abcf refactor(@desktop/wallet): Add walletaccount to more module 2021-11-05 11:02:45 -04:00
Anthony Laibe 4bc61134c4 refactor(@desktop/wallet): Connect list account and qml 2021-11-05 11:02:45 -04:00
Anthony Laibe 4bbf19c470 refactor(@wallet/desktop): bind new token list to qml 2021-11-05 11:02:45 -04:00
Anthony Laibe 142d2a9188 refactor(@desktop/wallet): enable check recent history 2021-11-05 11:02:45 -04:00
Anthony Laibe b7eaef8a84 refactor(@desktop/wallet): load account list 2021-11-05 11:02:45 -04:00
Anthony Laibe 7e22ff161c refactor(@desktop/wallet): add balance and price 2021-11-05 11:02:45 -04:00
Anthony Laibe b01e20302b refactor(@desktop/wallet): build wallet account token 2021-11-05 11:02:45 -04:00
Anthony Laibe b050796fc8 refactor(@desktop/wallet): add visible property to token 2021-11-05 11:02:45 -04:00
Anthony Laibe 0d129fa7fd refactor(@desktop/wallet): Add settings service and to module 2021-11-05 11:02:45 -04:00
Anthony Laibe 5d523b739e refactor(@desktop/wallet): Add eventemitter 2021-11-05 11:02:45 -04:00
Anthony Laibe 072b36e672 Fix rebase 2021-11-05 11:02:45 -04:00
Anthony Laibe a876a4b9ce refactor(@desktop/wallet): Add wallet account service 2021-11-05 11:02:45 -04:00
Anthony Laibe 1828029ab2 refactor(@desktop/wallet): Add collection/item/collectibles module 2021-11-05 11:02:45 -04:00
Anthony Laibe c97138c1dd refactor(@desktop/wallet): Attach utils data to main account 2021-11-05 11:02:45 -04:00
Anthony Laibe 0b38ec2568 refactor(@desktop/wallet): Connect backend to collectible service 2021-11-05 11:02:45 -04:00
Anthony Laibe 20a636d912 refactor(@desktop/wallet): Init collectible service 2021-11-05 11:02:45 -04:00
Anthony Laibe 8203643f86 refactor(@desktop/wallet): Init transaction service 2021-11-05 11:02:45 -04:00
Anthony Laibe 27d92f32f9 refactor(@desktop/wallet): Add getToken and controller 2021-11-05 11:02:45 -04:00
Anthony Laibe d9b6153ed0 refactor(@desktop/wallet): add token service 2021-11-05 11:02:45 -04:00
Anthony Laibe 32cfe03880 refactor(@desktop/wallet): Add transaction model/item 2021-11-05 11:02:45 -04:00
Anthony Laibe 1088669a6e refactor(@desktop/wallet): Add account tokens model/item 2021-11-05 11:02:45 -04:00
Anthony Laibe 9e6a1bdf57 refactor(@desktop/wallet): Add token view/model/item 2021-11-05 11:02:45 -04:00
Anthony Laibe ad7b6f7087 refactor(@desktop/wallet): init boilerplate code for wallet section 2021-11-05 11:02:45 -04:00
Sale Djenic b2f2801d3d Missed "loginCompleted" signal added.
It will be removed at the end of refactoring phase, when everything is done,
but now we need it to init all parts of the app correctly.
2021-11-05 11:02:45 -04:00
Sale Djenic 07f1510dd3 Fixed issues after rebase to the `refactoring/base` branch. 2021-11-05 11:02:45 -04:00
Sale Djenic 162ced9c38 Local account settings is not part of the `local_settings` service any more,
cause it logically doesn't belong there as it is not a service. It is a global
instance, exposed to the UI (qml) part. Since it represents QSettings it should
be maintained from the single point.
2021-11-05 11:02:45 -04:00
Sale Djenic 37e9150021 Cleaning up the code, and removing leftovers 2021-11-05 11:02:45 -04:00
Sale Djenic 72197f86f5 Accounts service is cleared if on NodeStopped signal 2021-11-05 11:02:45 -04:00
Sale Djenic 11cdd608f3 Log out the app on NodeStopped signal 2021-11-05 11:02:45 -04:00
Sale Djenic 48a39e4569 keychain feature refactored 2021-11-05 11:02:45 -04:00
Sale Djenic 44ba3f43f7 Local account settings exposed to the UI 2021-11-05 11:02:45 -04:00
Sale Djenic 08e7fef491 keychain feature partly refactored 2021-11-05 11:02:45 -04:00
Sale Djenic 3e0d312fee Events class is forwarded instead of whole AppService 2021-11-05 11:02:45 -04:00
Sale Djenic c3a374c36a Local settings service moved to AppController.
Old ProfileController and related props moved to AppController in order
to have an usable app during refactoring of onboarding/login modules.
2021-11-05 11:02:45 -04:00
Sale Djenic 7568880f26 quick fix for `production is not defined` error 2021-11-05 11:02:45 -04:00
Sale Djenic 4f3ca4eb78 login process refactored 2021-11-05 11:02:45 -04:00
Sale Djenic 8974a8db5e selecting among multiple accounts on login added 2021-11-05 11:02:45 -04:00
Sale Djenic 30f11c06d4 onboarding process updated, import account feature handled 2021-11-05 11:02:45 -04:00
Sale Djenic e9bb9b256e Onboarding creating new account process updated. 2021-11-05 11:02:45 -04:00
Sale Djenic a945275d3f Registering context property moved from constructor to the load method for each module. 2021-11-05 11:02:45 -04:00
Sale Djenic cc20c234e0 Community section as an identified module's type is removed since community
section is nothing else but the special kind of chat section module type. The
rest of the code is updated accordingly.
2021-11-05 11:02:45 -04:00
Sale Djenic 05705f219d Module organization change due to Nim limitations.
Parent modules are exposed to submodules using their base class instead of
concepts, since using concepts is not possible to create a second level nested
modules.
2021-11-05 11:02:45 -04:00
Sale Djenic 9f4eeffdea A base structure for new architecture added
Initial structure for MainModule containing ChatSectionModule and
CommunitySectionModule is added, as well as initial structure for
StartupModule containing OnboardingModule and LoginModule.

Order of execution is updated and adapted to the current app state.
Main module gets loaded once a user is successfully logged in.
2021-11-05 11:02:45 -04:00
¨Anthony a715c6b62e refactor(@desktop/ens): Keep only one ens view
Once refactoring with module this should probably be attached to main
or to something common to all module since it is accessed in low level part
of the app accross multiple section
2021-10-26 08:15:36 -04:00
Pascal Precht b8ecc3e0bf fix(Communities): preserve channel position after editing
Turns out we've been accidentally resetting the channel's `position`
property to `0` by not sending it over to status-lib's underlying
`editCommunityChat` API.

This fixes it by using a newer version of status-lib which supports
the `position` paramter in `editCommunityChat` and then sending that
value along from the edit channel popup.

Fixes #3672
2021-10-08 13:33:42 +02:00
Michele Balistreri 4aec7db317 add authenticate 2021-10-06 08:32:32 -04:00
Michele Balistreri 3016fd4ec1 make pairing work 2021-10-06 08:32:32 -04:00
Michele Balistreri 101e77cc14 continue flow implementation 2021-10-06 08:32:32 -04:00
Michele Balistreri 5cf58a78e5 implement pairing storage 2021-10-06 08:32:32 -04:00
Michele Balistreri ce1be698a6 handle signals and card states 2021-10-06 08:32:32 -04:00
Michele Balistreri a22d936df7 update Jenkinsfile 2021-10-06 08:32:32 -04:00
Michele Balistreri 7d8be3fc40 start implementing keycard onboarding flow 2021-10-06 08:32:32 -04:00
Michele Balistreri 03c0a85aee update Dockerfile, status-lib 2021-10-06 08:32:32 -04:00
Michele Balistreri 0535886e6c use status.keycard 2021-10-06 08:32:32 -04:00
Michele Balistreri 8f9d300312 add keycard-go to makefile 2021-10-06 08:32:32 -04:00
Michele Balistreri 1e4dc0acbf test connection/disconnection events 2021-10-06 08:32:32 -04:00
Michele Balistreri 303e40bdcf card connection prompt 2021-10-06 08:32:32 -04:00
Michele Balistreri 2a027d44d0 add insert card dialog 2021-10-06 08:32:32 -04:00
Michele Balistreri 3d46e62345 draft authentication dialogs 2021-10-06 08:32:32 -04:00
Richard Ramos 0fd3182899 refactor: contacts-perfomance 2021-10-05 16:15:29 -04:00
Anthony Laibe a189b0d72b refactor: Update permission backend 2021-10-05 16:15:29 -04:00
Anthony Laibe 8fab06494a refactor: Add view with new eth backend 2021-10-05 16:15:29 -04:00
Anthony Laibe f4e3a1effc refactor: profile types
Also group import together and start local import with ./ so that we
know it is not a lib
2021-10-05 16:15:29 -04:00
Richard Ramos a5d48a20b3 feat: wakuV2 light client mode 2021-10-05 16:15:29 -04:00
Richard Ramos f3f0987d43 fix: wakuV2 mailserver cycle 2021-10-05 16:15:29 -04:00
Richard Ramos eac373600e fix race condition by setting the peers on init 2021-10-05 16:15:29 -04:00
Richard Ramos 4fa2f5c472 feat: connected/disconnected status with wakuV2 2021-10-05 16:15:29 -04:00
Richard Ramos 350472ed03 fix race condition by setting the peers on init 2021-10-05 16:15:29 -04:00
Richard Ramos d0514f366d feat: connected/disconnected status with wakuV2 2021-10-05 16:15:29 -04:00
Anthony Laibe 22e8c8a7ff fix(@desktop/profile): Split account and profile settings
Avoid to reveal which alias own which settings. The only settings
pre-login available is the storeToKeychain

Ideally we should also encrypt the profile settings
2021-10-01 10:29:05 -04:00
Anthony Laibe a44822d7f6 fix(@desktop/profile): Fix loading the correct settings
Since #e0c53b7012354023e367c33093598f7523063aa6 settings where loaded
according to the username while they should be loaded after the public
key

As the public key is only available once the login happened, it needs
to be set when the profile is being initialized
2021-10-01 10:29:05 -04:00
Anthony Laibe 3acabfd2a8 refactor: ensure settings is accessed via model 2021-09-30 16:37:07 +02:00
Michael Bradley, Jr c9319c3968 refactor: remove unused imports of nbaser and nim-base32
Closes #1268.

Another PR in the status-im/status-lib repo will be needed to close related
issue https://github.com/status-im/status-lib/issues/56.
2021-09-29 13:51:56 -04:00
Anthony Laibe 3fa328f8b8 Fix: loading bookmark from type 2021-09-29 11:57:01 -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 1ae0b91014 refactor: gif store return object 2021-09-28 15:27:38 -04:00
Anthony Laibe 336ea968de refactor: browser use object 2021-09-28 15:25:57 -04:00
Anthony Laibe d519843e52 refactor: contact store use object 2021-09-28 15:23:40 -04:00
Anthony Laibe 1cea69b331 feat(@desktop/wallet2): Toggle network 2021-09-28 15:20:43 -04:00
Richard Ramos 85250211ea feat: add mailserver request signals 2021-09-28 14:55:37 -04:00
Richard Ramos f43a1a65ea fix: message history issues
- Display loading indicator on login when mailserver messages are requested
- Fix bug where the mailserver that's selected as soon as you login is disconnected while being still in the process of connecting instead of waiting until 10s have passed to try connecting to a different mailserver
- Use status-go version that fixes an issue fetching mailserver messages when more than 999 messages are being verified if they're in the cache
2021-09-28 14:26:19 -04:00
Anthony Laibe 3660bad243 fix(@desktop/wallet): emit wallet2 event
fixes #3659

Wallet2 needs its own event otherwise they wallet1/2 mixes
and as not everything is implemented in wallet2, it crashes
In this particular case, the account is added into wallet1 but trigger
an event intercepted by wallet2, wallet2 doesn't have the new account
and crash
2021-09-23 13:36:36 -04:00
Sale Djenic f54f3a61bf fix(@desktop/chat): removing contact results in the same contact's contact request showing up again
Fixes: #3418
2021-09-22 15:27:52 -04:00
Anthony Laibe 83a0ea391d feat(@desktop/wallet): Add chain id to internal API 2021-09-22 14:17:49 -04:00
Andrei Smirnov d6d4ae5c79 fix(@desktop/notifications): fixing wrong mentions counting 2021-09-21 11:08:38 -04:00
Eric Mastro 233d1f4da4 fix: block/unblock contacts not persisting
Fixes: #3473.

Sometimes when blocking users and changes channels, blocked user messages would still appear.

This PR fixes the issue by toggling a `hide` property on  messages from a contact when that contact is blocked or unblocked. Previously, the messages were only removed from the view when the contact was blocked, but when the view was reloaded, that state was not tracked correctly.
2021-09-21 09:53:15 -04:00
Sale Djenic 0c73febf2c fix(@desktop/chat): channel links sends to main public channel instead of a channel in that community
In case clicked channel:
- exists in a community -> the app will switch you to it
- doesn't exist in a community, but exists in the public chat list -> the app
  will switch to `Chat` section and also to the appropriate channel there
- doesn't exist in a community and doesn't exist in the public chat list -> the app
  will switch to `Chat` section and join new channel

Fixes: #3489
2021-09-20 17:34:38 -04:00
Iuri Matias 9204d495c6 update call to get contacts api 2021-09-20 12:42:32 -04:00
Khushboo Mehta 2515f12c3b fix(@desktop/chat): Push notification body contains only chat key when user is mentioned
fixes #3347
2021-09-20 12:42:32 -04:00
Anthony Laibe 442280f957 feat(@desktop/wallet2): Enable multi chain for collectible 2021-09-20 12:30:39 -04:00
Pascal Precht 1bca5ee174 fix(@desktop/chat): ensure replacement of mentions with pubkey works in communities
There were two issues why mentions didn't work in communities:

1. The function that replaces mentions with pubkey looked in the wrong place
2. The same function always prepented `userName` with `@` which isn't always necessary

This commit fix this by ensuring the replacement function looks in the community memberlist
instead of a messageList and also by checking if a `userName` already starts with a `@`
and only prepends it if not.

Fixes #3492
2021-09-20 09:58:26 -04:00
Anthony Laibe d804e15f27 fix(@desktop/contacts): Keep only one contacts list
fixes #3485
2021-09-20 09:52:24 -04:00
Michael Bradley, Jr 6625ae38be feat(desktop/profile): add link in advanced settings so log directory can be opened directly
Closes #3509.
2021-09-20 08:58:19 -04:00
Eric Mastro 9854a49a44 feat(wallet2): introduce saved addresses
Closes #3307.

WalletV2 view can be toggled between normal wallet view and the SavedAddresses view.

Users can load, add, edit, and delete saved addresses.

Favouriting a saved address is out of scope, as is sending to a saved addresses, drilling down in to a saved address, and supporting multiple networks.

Updates components that utilised the StatusMinLengthValidator component to support the changes made to StatusQ.

### Notes
1. Depends on status-go PR https://github.com/status-im/status-go/pull/2356
2. Depends on StatusQ PR https://github.com/status-im/StatusQ/pull/394.

# Conflicts:
#	src/app/wallet/v2/view.nim
#	ui/app/AppLayouts/WalletV2/WalletV2Layout.qml
2021-09-20 08:32:56 -04:00
Khushboo Mehta e6f8a79f67 fix(@desktop/communities): Fix for app doesn't preserve selected community chat
fixes #3486
2021-09-17 13:15:31 -04:00
Richard Ramos 214069cb25 feat: display mailserver interactions 2021-09-17 13:14:01 -04:00
Sale Djenic 8af104a16e feat(@desktop/onboarding): support (optionally) OS keychain to login password
This feature works for MacOs only, for now.

On login, whether new or already created user may select between options:
"Store" - store password to the Keychain
"Not now" - don't store it now, but ask next time again
"Never" - don't store them ever and don't ask again

Selected preference may be changed later in:
`ProfileSettings > Privacy and security > Store pass to Keychain`

On the next app run, if `Store` was selected, a user will be asked to confirm
his identity using Touch Id in order to log in the app. If any error happens
he will be able to login using password.

Fixes: #2675
2021-09-17 12:45:34 -04:00
Sale Djenic e0c53b7012 refactor(@desktop/general): managing local settings added on the nim side
From now on we are able to access local settings (settings and global settings)
on the nim side, not only through the qml.

This change is required as part of the feature issue-2675.
2021-09-17 12:45:34 -04:00
Anthony Laibe 974e53f3cb feat(@desktop/wallet2): Add network select 2021-09-16 17:35:58 -04:00
Anthony Laibe 5ce06a94cc feat(@desktop/chat): download messages
fixes #3508
2021-09-16 16:37:58 -04:00
Richard Ramos dc8294b6bd fix: display current active mailserver
Fixes #3505
2021-09-16 16:29:33 -04:00
Khushboo Mehta b9073919cb feat(@desktop/wallet2): Added traits for the opensea Assets
fixes #3435
2021-09-16 15:39:10 -04:00
Richard Ramos 1db9e1b151 chore: remove unused imports 2021-09-16 14:56:25 -04:00
Richard Ramos 03eed589a9 feat: display logs in node management section 2021-09-15 16:04:28 -04:00
Alexandra Betouni 22994a4a14 feat(desktop/profile) adding password changed modal
Implemented new change password succcess confirmation
popup

Closes #3432
2021-09-15 15:20:33 -04:00
Andrei Smirnov d159c0e61c feat(@desktop/deep-links): integrated deep links with single-instance IPC 2021-09-15 14:30:34 -04:00
Andrei Smirnov a4df3c644b Lock on DATADIR, not app dir 2021-09-15 12:18:09 -04:00
Andrei Smirnov 10de9fc0c1 Rebased 2021-09-15 12:18:09 -04:00
Pascal Precht 315c4014a7 fix(@desktop/profile): show ENS username in profile page if available
Closes #3424
2021-09-15 06:45:58 -04:00
Richard Ramos 8e80497cdc fix: set preferred username 2021-09-15 06:45:26 -04:00
Iuri Matias 3b4d6ade7d rename libstatus to statusgo_backend 2021-09-11 17:51:52 -04:00
Iuri Matias 17f8abb250 name utils import due to conflict 2021-09-11 08:45:49 -04:00
Khushboo Mehta 35e15f7ed0 feat(desktop/wallet): Adding Setttings tab in wallet 2
Added nim api's to get the account signing phrase

fixes #3303
2021-09-10 14:27:33 -04:00
Richard Ramos 285f54dab6 EIP1559 2021-09-10 13:42:19 -04:00
Richard Ramos daa0865885 refactor: moving OPENURI constant back from status-lib to app 2021-09-10 11:56:27 -04:00
Richard Ramos a13a0e0d3a refactor: extract app constants from status-lib to desktop 2021-09-10 11:56:27 -04:00
Anthony Laibe 22831f124f feat(@desktop/wallet2): Fetch networks on wallet init 2021-09-09 17:49:23 -04:00
Andrei Smirnov 0528f5d933 Fixed link structure for 1-1 chats 2021-09-09 16:53:09 -04:00
Andrei Smirnov a3368b091e Fixing rebase. 2021-09-09 16:53:09 -04:00
Andrei Smirnov 03022742d8 feat(@desktop/Windows): status-im:// protocol support and installer fixes 2021-09-09 16:53:09 -04:00
Andrei Smirnov d80034e0c4 fix(@desktop/communities): processing response from InviteUsers call 2021-09-09 15:17:16 -04:00
Richard Ramos d32c3e53d9 refactor: signal handling 2021-09-09 14:35:51 -04:00
Richard Ramos 32049aa928 refactor: extract status to separate repository 2021-09-08 15:52:43 -04:00
Richard Ramos b4a209e17c fix: membership requests dissapearing on a community update
Fixes #3315
2021-09-08 14:55:15 -04:00
Sale Djenic 7c812c0961 refactor(@desktop/general): move Qt logic out of src/status library
Since `src/status` was Qt dependant part because of the following foundation files:
- /src/status/tasks/marathon/mailserver/controller.nim
- /src/status/signals/core.nim
- /src/status/tasks/marathon/mailserver/events.nim
- /src/status/tasks/qt.nim

and because logic related classes like:
- /src/status/chat.nim

this commit made that part Qt independant.

New layer `src/app_service` is introduced and above mentioned foundation files
are moved there. As well as corresponding logic for requested services.

Communication between logical parts on the high level is as follows:
- `src/app` => `src/app_service` => `src/status` => `src/app`
- `src/app` => `src/status` => `src/app`

Fixes: #3376
2021-09-08 14:09:21 -04:00
Sale Djenic 7bbfba7fb3 feat(@desktop/wallet2): implement buy crypto feature
If user wants to buy/sell crypto, popup modal list will be displayed so he may
choose which service to use for that action.

Fixes: #2120
2021-09-07 14:18:14 -04:00
Sale Djenic 2177e06d95 chore(@desktop/wallet2): wallet2 controller added
Wallet2 related classes added to `src/status` and `src/status/wallet2`.
`src/app/wallet/v2` classes updated accordingly.
2021-09-07 14:18:14 -04:00
Sale Djenic 71360d4362 chore(@desktop/general): json common properties moved to the more general location 2021-09-07 14:18:14 -04:00
Andrei Smirnov 3902ddf002 fix(@desktop/updates): using timeout when checking for new version 2021-09-07 10:27:48 -04:00
Anthony Laibe 4bef4533b6 fix(@desktop/chat): do not crash when deleting a message
fixes #3387
2021-09-07 10:27:05 -04:00
Sale Djenic a591e91a2e fix(@desktop/general): clicking push notification does expand the app but does not open correct channel/chat
Logic for adding os notifications for Windows and  MacOs added.

Fixes: #2996
2021-09-06 16:39:37 -04:00
Andrei Smirnov 979fea1cee Bugfixes 2021-09-02 15:58:13 -04:00
Andrei Smirnov f74d1a67a5 fix(@desktop): various UI scaling fixes 2021-09-02 15:58:13 -04:00
Andrei Smirnov 68d34e5706 fix(@desktop/chat): edit channel modal to show up-to-date values 2021-08-31 14:33:56 -04:00
Sale Djenic 4916b8f552 fix(@desktop/chat): no identicon/profile picture shown and wrong timestamp format in search results
Icons added for messages senders in the search result, also community and chat
icons are colorized now.

Fixes: #3259
2021-08-31 14:23:59 -04:00
Andrei Smirnov 21059919b1 Reverted odd method removal. 2021-08-31 12:07:48 -04:00
Andrei Smirnov 8ae050b642 fix(@desktop/communities): changing contact nickname must be reflected in users list 2021-08-31 12:07:48 -04:00
Richard Ramos 1c7fa14903 fix: log error when an RPC exception is raised when releasing an ens 2021-08-31 12:04:03 -04:00
Richard Ramos efcbb023a6 fix: message when username is locked, and remove preferred username when released 2021-08-31 12:04:03 -04:00
Richard Ramos 80343446ec feat: release ENS names 2021-08-31 12:04:03 -04:00
Anthony Laibe e2ca49b097 perf(@desktop/chat): make mark all messages read async 2021-08-31 11:55:38 -04:00
Anthony Laibe 0d5cf71df5 perf(@desktop/chat): avoid query when switching chat
As we keep a local list of contact request and contact added
we should not need to query this data each time we switch chat as
we already have this data in memory.

This data should be maintained each time there is a change

fixes #1642

Also: Remove what seems to be duplicated and dead code about
getContactById
2021-08-31 11:55:38 -04:00
Anthony Laibe 9af32a1796 fix(@desktop/chat): Add new dedicated event for sending message 2021-08-26 16:53:38 -04:00
Richard Ramos f637067606 fix: code review 2021-08-26 16:38:47 -04:00
Richard Ramos 1969130fad feat: display bloom filter usage 2021-08-26 16:38:47 -04:00
Pascal Precht 88092e4966 feat(Communities): add support for drag reodering community categories 2021-08-26 15:39:39 -04:00
B.Melnik a362efecf4 feat(Communities): implement drag and drop to reorder category channels
Closes: #2776
2021-08-26 10:53:57 +02:00
Richard Ramos 6561e0ea26 switch deletedMessages from string array to object array 2021-08-25 10:44:24 -04:00
Richard Ramos db3b7ecfd9 feat: Version Updating
Fixes #1290
2021-08-24 16:56:55 -04:00
Anthony Laibe 94f6041ec5 feat(@desktop/chat): Align chat member and suggestion
Removed all computation of suggestion from qml
Reuse user list in order to populate the suggestion box

As a side effect, the suggestion are not serialized from qml to
nim

Remove InputArea which seems not used anymore
2021-08-24 14:56:20 -04:00
Richard Ramos 2142609eb1 fix: add register topics to the config 2021-08-23 15:47:03 -04:00
Anthony Laibe 77927da284 fix(@desktop/wallet2): Ensure app not crash when loading collectibles
fails
2021-08-23 15:06:50 -04:00
Iuri Matias 067ed7b255 display peer number in node tab 2021-08-23 15:06:12 -04:00
Anthony Laibe 98943f6d72 feat(@desktop/wallet2): New collectibles API 2021-08-20 16:17:19 -04:00
Andrei Smirnov 62ef00ee60 chore(@desktop): odd warnings 2021-08-20 15:02:26 -04:00
Andrei Smirnov 99bdfc65ed Addressed PR comments 2021-08-20 14:56:00 -04:00
Sale Djenic 06c10df134 feature(@desktop/chat): implement search results for communities, channels
Added a part for fetching messages from multiple chats/channels/communities.

Fixes: #2934
2021-08-19 16:26:59 -04:00
Sale Djenic e2628338de feature(@desktop/chat): implement search results for communities, channels
Added a part for fetching messages from multiple chats/channels/communities.

Fixes: #2934
2021-08-19 16:26:59 -04:00
Anthony Laibe b2051ebe87 fix(@desktop/chat): avoid to resend notification on scroll
In order to avoid re-sending notification on scroll, update
the channel joined time to now
2021-08-19 10:55:33 -04:00
Anthony Laibe 3fdd593f0f feat(@desktop/internal): Specific logfile per app start
fixes #3146
2021-08-19 10:53:43 -04:00
Khushboo Mehta 8caf95aace feat(MessageContextMenu): Allow Copy and Download Image
Added copy and download Image functionality on right click of an image or its preview

closes #2672
2021-08-19 10:23:18 -04:00
Alexandra Betouni f82a23e361 fix(desktop/chatmessages) fixed stickers can't be used as reply
Closes #2404
2021-08-17 11:41:06 -04:00
Sale Djenic 04ca90a7d0 fix(@desktop/general): Changing System Appearance on the fly is not working
App is responsive to the OS theme change event.
Now we're following system set theme when the app is started.

Corresponding part on the side on nimqml is added.

Corresponding part on the side on dotherside is added.

On the side of dother side we had kind of a memory leak, cause objects added to
the filter were not deleted ever. When the app is closing, it just removes
filters, but doesn't delete them.

I faced a logical issue, that we were sending qmlengine pointer to the
installEventFilter method, instead object which may or may not rely on the
qqmlengine instance, that is fixed also.

Fixes: #1725
2021-08-16 16:27:14 -04:00
Andrei Smirnov f440995462 Addressed PR feedback 2021-08-16 15:32:21 -04:00
Andrei Smirnov b7ca0aaf14 Addressed PR feedback 2021-08-16 15:32:21 -04:00
Andrei Smirnov 8310a36bde feat(@desktop): change password 2021-08-16 15:32:21 -04:00
Anthony Laibe d3fdd4a575 fix(@desktop/chat): Going from communities to chat reopen latest opened
chat

fixes #3195
2021-08-16 14:09:47 -04:00
Anthony Laibe 28a4362b64 feat(@desktop/profile): handle blocked contact
fixes #3047
2021-08-16 14:03:52 -04:00
Sale Djenic a530f65ada fix(@desktop/communities): `joinedCommunities` doesn't update underlying community
Counting mentions for community seems was not developed yet. That's added here in this commit, but
instead of using "mentionsCount" we introduced on the side of nim, I found that we're receiving
"unviewedMentionsCount", but only for new messages. I used it for this fix.

Counting mentions and requests per community added.

Fixes: #2972
2021-08-16 12:55:12 -04:00
Richard Ramos 50b6b59abf feat: add wallet v2 tab 2021-08-16 09:45:06 -04:00
Anthony Laibe 153cfeb138 fix(@desktop/onboarding): display the app, then init the profile 2021-08-13 12:55:12 -04:00
Richard Ramos 77c3e1b211 fix: delete 2021-08-13 12:30:57 -04:00
Andrei Smirnov c4104b9b32 fix(@desktop): crash on shutdown path 2021-08-12 17:34:24 +03:00
Anthony Laibe 69a6d06fea fix(@desktop/wallet): Use the new pending tx API for pending tx
fixes #3141
2021-08-11 12:07:00 -04:00
Andrei Smirnov 5a7aac0baf fix(@desktop): crash when transitioning from login|onboarding to the app state 2021-08-11 18:51:59 +03:00
Anthony Laibe 7f3810b67a fix(@desktop/onboarding): fix crash when restoring keys
fixes #3191
2021-08-11 13:25:27 +02:00
Anthony Laibe 992828b0c3 fix(@desktop/wallet): Total balance reflect real total
fixes #3054
2021-08-10 15:42:21 +02:00
Anthony Laibe ee84818c06 feat(@desktop/chat): Save favorites and recents gif 2021-08-10 15:31:19 +02:00
Iuri Matias 86688a7e59 move client.close to a finally 2021-08-06 15:14:30 -04:00
Iuri Matias 553a698900 add missing http client close() so it doesn't run out of files 2021-08-06 15:14:30 -04:00
Richard Ramos d1b46c0226 feat: selector for online or invisible state
Fixes #3126
2021-08-06 13:30:05 -04:00
Andrei Smirnov 51c5a8015d fix(@desktop): crash on shutdown 2021-08-06 12:42:18 -04:00
Richard Ramos 481184df25 fix: disable dynamic translations on linux 2021-08-05 15:12:34 -04:00
Sale Djenic 4ba08f02a5 Rebasing issues fixed (#3005) 2021-08-05 14:35:46 -04:00
Sale Djenic 5e569865e4 feature(@desktop/chat): support jumping to search result message that is not currently loaded in memory
A crash leaving chat is fixed.

The issue was very hidden cause everything looks ok, at first glance, but not, the thing is that
"messages" exposed to qml were deleted from ChatsView and signals beginRemoveRows and
endRemoveRows were emitted for CatsView abstract list model instead for MessageView abstract list
model. That results in an app crash in some moments (not always reproducible, but often).

Fixes: #3005
2021-08-05 14:35:46 -04:00
Sale Djenic 83d6817f70 feature(@desktop/chat): support jumping to search result message that is not currently loaded in memory
Crash adding public chat which is caused by changes applied to this feature is fixed.

Fixes: #3005
2021-08-05 14:35:46 -04:00
Sale Djenic 5d8b02e057 feature(@desktop/chat): support jumping to search result message that is not currently loaded in memory
Feature added. Firstly we check if the searched message is already displayed and if yes simply jump
to it, if not then we are loading new 20 messages in the past using cursor and check if the
searched message's id is among those received messages. We do that in a loop till we find the
message we are searching for.

Fixes: #3005
2021-08-05 14:35:46 -04:00
Sale Djenic e62465d86f feature(@desktop/chat): support jumping to search result message that is not currently loaded in memory
Changes made here were necessary in order to have good base to requested develop feature.

- duplicated methods are removed
- loading messages either on start (initial loading) or loading more messages requested by
  scrolling in the chat view is now done in separate thread (asynchronous) instead as it was earlier,
  done in the main thread
- new file is added for storing async tasks for chat part only
- ChatModel (from status/chat.nim) is QObject instance now, so it may handle async job in a slot
- a job requested from the view is done in separate thread and view is notified about the changes
  using signal/slot mechanism

This is not refactoring, but minimal update to have clear situation for further changes

Fixes: #3005
2021-08-05 14:35:46 -04:00
Sale Djenic 74d868ab92 feature(@desktop/chat): implement search on sqlcipher (status-go side)
Searching messages by some term for a specific channel is added on the side of status-go and an
appropriate part on the side of nim is developed accordingly.

Fixes: #2912
2021-08-05 14:35:46 -04:00
Sale Djenic de661459cb feature(@desktop/chat): implement search on sqlcipher (status-go side)
Current code adapted to handle future changes on message search (like searching message in multiple
channels).

Memory leak which was happening in qml assigning (copying) MessageItem to qml variable messageItem
(where that qml variable messageItem was never deleted) is fixed.

Fixes: #2912
2021-08-05 14:35:46 -04:00
Richard Ramos b319eb988e fix: etherchains api parsing error 2021-08-05 12:29:06 -04:00
Sale Djenic f0c605936d feature(@desktop/chat): implement search on sqlcipher (status-go side)
Searching messages by some term for a specific channel is added on the side of status-go and an
appropriate part on the side of nim is developed accordingly.

Fixes: #2912
2021-08-04 15:49:50 -04:00
Sale Djenic 1573d7b928 feature(@desktop/chat): implement search on sqlcipher (status-go side)
Current code adapted to handle future changes on message search (like searching message in multiple
channels).

Memory leak which was happening in qml assigning (copying) MessageItem to qml variable messageItem
(where that qml variable messageItem was never deleted) is fixed.

Fixes: #2912
2021-08-04 15:49:50 -04:00
Anthony Laibe 728a97389d fix(@desktop/profile): remove chat when blocking contact
fixes #2708

When blocking a contact, if there is a chat open, close it
2021-08-03 16:47:33 -04:00
RichΛrd 46e3779020 fix: code review 2021-08-03 16:43:19 -04:00
Richard Ramos d34dafd525 fix: it should be possible to enter gas prices with decimals 2021-08-03 16:43:19 -04:00
Anthony Laibe b21e1d87c0 feat(@desktop/chat): Style gif widget component 2021-08-03 16:42:05 -04:00
Anthony Laibe c5051d4d4f feat(@desktop/chat): display gif with 3 columns 2021-08-03 16:42:05 -04:00
Anthony Laibe 9cd0f77e92 fix(@desktop/wallet): load collectible on initial account set
fixes #3121
2021-08-03 16:04:09 -04:00
Anthony Laibe 20b1bed309 chores(@desktop/chat): add guard when buying stickers
Call the same function as to when we do a transaction to validate
the argument
2021-08-03 16:03:51 -04:00
Richard Ramos eb9734a72d feat: bandwidth stats
Fixes #2935
2021-08-03 15:41:56 -04:00
Richard Ramos 1551c94135 fix: code review 2021-08-02 15:51:33 -04:00
Richard Ramos 9de0b95c3d fix: group member list 2021-08-02 15:51:33 -04:00
Jonathan Rainville 9f21740bae feat: add api to delete a community channel 2021-08-02 14:08:51 -04:00
Richard Ramos af6978a367 fix: various issues 2021-07-29 09:08:27 -04:00
Sale Djenic c8e3fd8735 Added code to apply default language before qml is loaded. 2021-07-28 12:32:30 -04:00
Sale Djenic c1b47f1c9c High cpu usage fix 2021-07-28 12:32:30 -04:00
Andrei Smirnov c621d5c2ac fix(@desktop): crash on login while getting a setting 2021-07-27 17:44:44 -04:00
Andrei Smirnov 15af3ae454 fix(@desktop): decoding error while getting networks json 2021-07-27 17:44:44 -04:00
Jonathan Rainville e2d91dc66b fix(act-center): multiple fixes to the activity center 2021-07-27 15:29:03 -04:00
Richard Ramos acdb4d3bcb fix: last seen timestamp and removing useless echo 2021-07-27 11:16:28 -04:00
Anthony Laibe a2db1deeda fix(@desktop/chat): revert the visible logic for fetch more messages
This is causing fetch more message to not be visible in other chat type
such as publich chat
2021-07-27 09:45:21 -04:00
Jonathan Rainville 7d169e85f2 fix(delete): disable deleting certain message types 2021-07-26 17:14:07 -04:00
Jonathan Rainville 6dc5e1177b fix(delete): fix deleting pins when deleting messages 2021-07-26 17:14:07 -04:00
Jonathan Rainville 523e94ae0c feat: enable to delete messages
Fixes #2775
2021-07-26 17:14:07 -04:00
Anthony Laibe a1ce2ba0da fix(@desktop/communities): Community chat colors stays up to date
fixes #2826

When fetching communities, the chat attached to it are not complete.
In this commit, we ensure that everytime we fetch a community, we update
its chat with the chat being loaded which contains all the data we need
to properly display a chat
2021-07-26 13:27:00 -04:00
Anthony Laibe 75c986cc77 fix(@desktop/onboarding): do not display keyid as address
fixes #3035
2021-07-26 13:17:34 -04:00
Anthony Laibe 5488abcbde fix(@desktop/chat): fix upload of image with special characters
fixes #3034
2021-07-23 17:11:42 -04:00
Jonathan Rainville 0455bcdcf1 fix: fix pin counter not updating for communities
Fixes #3014
2021-07-23 16:49:51 -04:00
Richard Ramos 55a11f016e fix: limit suggestions to member list in communities
Fixes #3021
2021-07-23 15:58:07 -04:00
Pascal Precht e097d2bfe7 fix(Communities): preserve category id when editing channels
As described in #3015, when editing channels that belong to a category of a community,
after saving them, they'll get kicked out of the category.

This is because we haven't passed the category id along the API that performs the
save operation.

This commit ensures we have access to a category chats' `categoryId` and send it
over to `editCommunityChat` RPC API provided by status-go

Fixes #3015
2021-07-23 15:48:21 -04:00
Anthony Laibe aec0130107 fix(@desktop/chat): prevent double addition of private chat 2021-07-23 15:40:36 -04:00
Anthony Laibe e88665f27a fix(@desktop/chat): hide notification when leaving/creating a group
fixes #2484
2021-07-23 15:37:23 -04:00
Anthony Laibe 58506fbd97 feat(@desktop/chat): Display gif popup next to emoji 2021-07-23 15:27:56 -04:00
Andrei Smirnov 2df8e938ae fix(@desktop/login): crash on login and login ux improvements 2021-07-23 15:13:45 -04:00
Andrei Smirnov b1be4d643b fix(@desktop/communities): pending membership counter 2021-07-23 14:45:07 -04:00
Anthony Laibe 076a5bc5b7 fix(@desktop/communities): mute/unmute communities
fixes #2880
2021-07-23 13:40:40 -04:00
Andrei Smirnov b3528bd717 fix(@desktop): missing context menu on SystemTrayIcon 2021-07-23 13:22:04 -04:00
Andrei Smirnov f73fbe3204 chore(@desktop): nim compilation warnings - unused imports 2021-07-23 13:19:37 -04:00
Richard Ramos b7747104ec fix: code review 2021-07-22 13:48:53 -04:00
Richard Ramos 07c399530b fix: load old user status, and fix code review obs. 2021-07-22 13:48:53 -04:00
Richard Ramos 7aaca9ec4d toggle switch to control if status should be broadcasted or not 2021-07-22 13:48:53 -04:00
Richard Ramos 6849091460 feat: community user status pt 2 2021-07-22 13:48:53 -04:00
Richard Ramos c21f80e7da feat: select bloom filter level 2021-07-21 15:09:23 -04:00