846 Commits

Author SHA1 Message Date
Sale Djenic
534e172397 chore(@desktop/wallet): KeyPairDto which actually refers to keycard is renamed to KeycardDto
This change is needed for further changes which are part of issue #10592
2023-05-10 10:11:26 +02:00
Anthony Laibe
5ac0547238 feat(@wallet): allows multiple addresses in assets module
Next will be other module
2023-05-09 19:01:08 +02:00
Sale Djenic
5122815df8 feat(@desktop/wallet): removing wallet account without an authentication
Closes: #10569
2023-05-09 12:05:49 +02:00
Stefan
528bb53b77 fix(Wallet) move deletion of pending transactions in nim
Bump status-go HEAD that removes deletion of pending multi-transactions
in status-go

Previous implementation was relying on the fact that all pending
transactions are also multi-transactions, which it seems not to be
the case (e.g. ens, airdrop collectible)

Also tried to extend the deletion of multi-transactions to status go
but it was causing crashes for minted/dropped tokens.

Updates #10474
2023-05-08 11:58:50 +02:00
Michal Iskierko
216a1d1e2b fix(@desktop/communities): Deleting index when updating owners model and minor fixes
Issue #10254
2023-05-05 14:05:31 -04:00
Michal Iskierko
2087616b82 feat(@desktop/communities): Adding token owners model
- replace qml owners model with Nim one
- get token owners from wallet service
- keeping owners cache in community_tokens/service and refresh every 10 minutes

Issue #10254
2023-05-05 14:05:31 -04:00
Patryk Osmaczko
cc191ae0e4 feat(communities): propagate featured flag
closes: #10565
2023-05-05 19:57:39 +02:00
mprakhov
60bd0d2a6c feat(@desktop/communities): Automaticaly encrypt closed communitites 2023-05-05 19:04:29 +02:00
Jonathan Rainville
b9a2e62602 fix(message/service): fix msg not appearing in new chat because of race
Fixes #10340

Fixes a race condition when receiving a message in a channel that doesn't exist yet (for example in a delete 1-1 chat).
What happens is that the status-go signal contains both the message and the chat. Both are handled by different services, so there was a race between the two of them. If the chat service handled the chat first, then the message was added correctly, but in the case of the message service handling it first, it would try to add the message to a chat that doesn't exist yet, so it wouldn't work.

I also cleaned the ChatUpdateArgs by removing the messages arg that was not used anywhere and also was a bit counter-intuitive. Why did a Chat arg have messages?
2023-05-05 11:09:32 -04:00
Pascal Precht
90acfa0457 fix(permissions): ensure permissions model is rebuilt when permission
was deleted

This is needed because there's cases where the deletion of a permission
might cause the current user to no longer be eligible to join
a community.

Community has the follwoing permissions:
- own 2 ETH and 1 FOO_NFT or
- own 1 FOO_NFT

User owns: 1 FOO_NFT

^ The above would make the user eligible to request access to join.

Now if the community removes the second permission, the user now no
longer fulfills the requirements so we need to ensure the UI
permits the user to request access.

Rebuilding the permissions model (including its token criteria) sets the
necessary flags in the UI automatically.
2023-05-04 11:23:56 +02:00
Michal Iskierko
a73ea4604e fix(@desktop/communities): Fix double toast message
Fix #10486
2023-05-04 10:28:43 +02:00
Pascal Precht
202a789c67 fix: ensure notification settings are cached from RPC
There are a bunch of notification related settings that cause RPC
calls when read from the UI in QML/Qt.

This is bad because whenever the view tries to read a notification
setting it causes an RPC call and then rerenders the view. This happens
pretty much every time a new signal arrives in the client.

To account for that we now fetch all notification settings once and mark
the service as initialized so it know when to simply return cached
values. The cache is updated when the notification settings change.

Fixes #10493
2023-05-04 09:32:44 +02:00
Igor Sirotin
f656088112
fix: Fixed community channel emoji not updated (#10534) 2023-05-03 20:07:37 +03:00
Anthony Laibe
f58bfb97eb fix(@wallet): send a token without balance
fixes #10509
2023-05-03 13:58:58 +02:00
Igor Sirotin
ac6cebed9f Added toContentType function 2023-05-02 17:00:54 -04:00
Igor Sirotin
98d8a70572 fix: Added SystemMessagePinnedMessage contentType 2023-05-02 17:00:54 -04:00
Jonathan Rainville
6997e05586 fix(chats): fix unread counters in many instances
Fixes #10076

Reverts the refactor that makes getChannelGroups (ie getChats) not return chats (now it does return all chats too).
That way, we actually have the right mentions and unread count when receiving new messages

Also fixes an issue where mentions and unread count would get reset to 0 when getting a community update, because the signal doesn't have enough info
2023-05-02 14:33:14 -04:00
MishkaRogachev
206800bd5b fix(Contacts): Use contactRequestState enum for determinating correct contact state 2023-05-02 13:56:36 -04:00
MishkaRogachev
e160e70121 fix(Contacts): Remove lagecy removeContactRequestRejection
Close #9935
2023-05-02 13:56:36 -04:00
Igor Sirotin
7dfd13ca77
fix(ens): Various ENS-related UI fixes (#10492) 2023-05-01 23:32:36 +03:00
Igor Sirotin
abf58b008f
fix(Pairing): Added installation info to pairing results (#10418) 2023-04-29 13:33:08 +03:00
Lukáš Tinkl
c548a96a2a fix(Settings/LanguageView): do not change language on the fly
disable retranslation, display a confirmation dialog and apply the
language change after app restart

rationale: the way the retranslation works internally is that it force
reevaluation of _all_ QML bindings which:
- might lead to crashes (immediately or later)
- lots of warnings printed to console, some bindings can get broken as a result
- not all UI is correctly retranslated on the fly (we have lots of places
where we assign the text imperatively via JS code), so these wouldn't
appear translated before app restart anyway

Fixes #7823
2023-04-27 16:12:33 +02:00
Sale Djenic
69bf8c0e53 feat(@desktop/wallet-sync): accounts syncing part 1 2023-04-27 16:06:01 +02:00
Sale Djenic
1a919f586f fix(@desktop/wallet): issues with deleting wallet accounts fixed
In case an account being deleted is migrated to a Keycard keystore file it was not removed from
`keycards_accounts` table and in case it was the last account for that keypair derived from keystore
file was not removed as well as other keycards containing the same keypair. That's all sorted out.
2023-04-27 16:06:01 +02:00
Sale Djenic
0a04e1a67c fix(@desktop/keycard): cleaning last received data from the keycard service after ui flow is done 2023-04-27 16:06:01 +02:00
Igor Sirotin
6fe82ef133
fix: Fix and rework "start chat" text field input (#10450) 2023-04-27 17:03:49 +03:00
Jonathan Rainville
c44e46a6a5 chore(warnings): clean up some Nim warnings 2023-04-26 10:36:58 -04:00
Anthony Laibe
e6f88758dc feat(@wallet): wallet accounts module dedup
Second part of having profile section accounts
2023-04-25 14:56:20 +02:00
MishkaRogachev
eb5423db9c fix(Contacts): Use only retractContactRequest for removing contacts 2023-04-25 16:16:32 +04:00
MishkaRogachev
2160b53e33 fix(ActivityCenter): Use ContactRequestId for accpeting and declining CRs from AC
Close #10127
2023-04-25 16:16:32 +04:00
MishkaRogachev
0ae1881564 fix(ActivityCenter): Fix contact request notifications
Close #9788
2023-04-25 16:16:32 +04:00
Khushboo Mehta
c94997ddec feat(@desktop/wallet): Wallet -> Send: polish Send/Bridge Modals
fixes #10344, #10321, #10320
2023-04-24 22:07:22 +02:00
Jacek Sieka
e4f7269587 Nim 1.6
Upgrade Nim compiler to 1.6.

The necessary changes are related to how `for` loops now implicitly
create a `lent` type, which is Nim's way of creating a "temporary"
reference to an item inside a collection - this helps performance by
avoiding a copy of the data, but it also means that the copy that
previously was implicit in the for loop must be made explicit in the
code.
2023-04-24 12:38:35 -04:00
Jonathan Rainville
10b8d38844 fix(re-encryption): make sure loading screen is shown when re-encrypting
Fixes #10352

Adds a 1 second timer before re-encrypting, to make sure the loading screen is shown before it starts, since it can freeze.
2023-04-24 09:32:21 -04:00
Anthony Laibe
c8d0cb36e6 feat(@wallet): sort saved addresses
fixes #9772
2023-04-22 11:06:59 +02:00
Lukáš Tinkl
038ab08765 fix: do not display ENS name when not ENS verified
- expose "isEnsVerified" as model role
- fix returning "ensName" when the user is not ensVerified
- react to nickname updates correctly
- fix sorting in the user/member list view
2023-04-21 00:24:32 +02:00
Stefan
691de11211 fix(Wallet) network selection and unify network implementations
Major changes:

- Don't allow empty network selection. End up using the nim model
  directly instead because of individual row changes issues
  encountered with nim models
- Made the clone model a generic implementation to be used in other
places where we need to clone a model: ReceiveModal,
AddEditSavedAddressPopup
- Use cloned model as alternative to NetworksExtraStoreProxy in
  ReceiveModal
- Added tristate support to our generic checkbox control
- UX improvements as per design
- Fix save address tests naming and zero address issue
- Various fixes

Notes:
- Failed to make NetworkSelectPopup follow ground-truth: show partially
  checked as user intention until the network is selected in the
  source model. Got stuck on nim models not being stable models and
  report wrong entry change when reset. Tried sorting and only updating
  changes without reset but it didn't work.
- Moved grouped property SingleSelectionInfo to its own file from
  an inline component after finding out that it fails to load on Linux
  with error "Cannot assign to property of unknown type: "*".".
  It works on MacOS as expected

Closes: #10119
2023-04-20 19:34:24 +02:00
Dario Gabriel Lipicar
fb8ea4a054 feat: add api to get list of owners from a given nft contract
Fixes #10290
2023-04-19 16:34:58 -03:00
Jonathan Rainville
2aa759adcf refactor(section-model): change model to be sorted to fix reorder
Part of #3364

To make the drag and drop reorder work correctly on channels, we needed to change the model again so that it was sorted in the model itself.
That is because the drag and drop gives us the value of the position it is dropped to as a single list, so dragging the second item of the second category would mean from position 5 to position to position 4, but what the backend wants is moving the item 2 to position 1.
Sorting the model enables us to get the category that is the parent of that position and call the service with the right positions and id.
It also enables us to reorder the channel in and out of the category.
See the module code to see how the calculation is done with an explanatory comment.
The model needed some changes to support that. Some of the function where changed from dataChange calls to resetModel calls, since we need to re-sort the model.
I tried using beginMove, but it would crash. Maybe there is a bug in NimQML or I used it badly, I'm not sure.
2023-04-19 12:26:15 -04:00
Jonathan Rainville
136635670e fix(category): fix category highlight calculation
Fixes #10313

There were a couple of small issues.
First, we didn't call the function to calculate the highlight on new messages.
Secondly, the calculation was bugged because the category wasn't saved correctly in the channelGroup update.
2023-04-18 14:17:13 -04:00
Richard Ramos
cacca6ff31 chore: set default sync period to 9d via status-go migration 2023-04-18 11:24:18 -04:00
Patryk Osmaczko
e822c37716 feat(chat): implement marking specific messages as seen
iterates: #9069
2023-04-17 18:53:42 +02:00
Michal Iskierko
81f97157e6 fix(@desktop/communities): Fix computing balances for different chains during deployment
Fix #10308
2023-04-17 15:21:13 +02:00
Michal Iskierko
7055a77a96 fix(@desktop/communities): Displaying toast messages when minting
Fix #9849
2023-04-17 15:11:35 +02:00
Alex Jbanca
d1ffa2e3b3 perf(ChatLoadingTime): Separate get chat messages and get pinned messages in different tasks 2023-04-17 13:18:30 +03:00
Mikhail Rogachev
c1b28d23c5
fix(ActivityCenter): Update status-go ActivityCenterNotificationTypeCommunityKicked and fix accepting community requests from AC (#10283)
* fix(ActivityCenter): Move ActivityCenterNotificationTypeCommunityKicked to the right place

Close #9811

* fix(ActivityCenter): fix accepting community request to join
2023-04-14 15:27:13 +04:00
Sale Djenic
2fae4cdaf1 fix(@desktop/wallet): a few wallet account related issues fixed
- index was not returned properly because of case sensitive address comparison
- delete account was not done properly for keycard accounts
- after login the app was asking for store to keychain even it was a test environment
2023-04-13 19:51:10 +02:00
Jonathan Rainville
2551ee0914 fix(chat-service): fix chatsWithCategoryHaveUnreadMessages for catID 2023-04-13 13:47:58 -04:00
Michal Iskierko
3e550bf9a5 fix(@desktop/communities): Tracking airdrop transaction
Fix #10161
2023-04-13 12:06:04 +02:00
mprakhov
8c874a90d2 fix(@desktop/communities): show members in spectate mode for open communities and hide for closed communities 2023-04-12 18:04:07 +02:00