1526 Commits

Author SHA1 Message Date
Patryk Osmaczko
acbf6fce51 feat(@desktop/communities): add new join community workflow
- user is able to see community without being a member
- invitation bubble always display "Go to Community"
- join community buttons are displayed in community view

main part of: #7072
2022-10-07 09:10:21 +02:00
Alexandra Betouni
2ec0b5330a fix(SearchPopup): displaying comm channel's emojis
Closes #7702
2022-10-06 15:46:45 +03:00
PavelS
2da05c0025 fix(@desktop/chat): update toast message logic
Fixes #7487
2022-10-06 11:43:35 +02:00
Pascal Precht
d9acab566f perf(chat): only perform verification requests on scroll if necessary
There was an issue where imported messages from third-party services
would cause super laggy scroll behaviour in the chat view.

The reason for that is that on scroll, the app keeps calling
`getVerificationRequestFrom()` on the chatkey of the community.
Typically the results of these requests are cached so that it should
perform the call only once, but because there's no actual verification
request/contact for the community chat key (all third-party messages are
signed by the community), the call keeps on happening over and over.

This commit adds a flag to `getContactDetailsAsJson` and `isEnsVerified`
to control whether or not the call to `getVerificationRequestFrom`
should in fact be made (which should not be the case for imported
messages).

The result of this is a smoother scrolling experience.

Fixes #7767
2022-10-06 11:39:24 +02:00
Pascal Precht
bf14b06d55 feat(CreateCommunityPopup): add discord import progress panel and discord message handling
This adds the UI plus all necessary models and signal handling to render
discord import progress in the desktop application.

It also introduces message handling for discord chat message types.

Requires status-im/status-go#2826 to function

Co-authored with @caybro
2022-10-06 09:13:57 +02:00
Richard Ramos
1a2524cbda chore: setup a mailserver as part of UI tests run in CI 2022-10-03 16:31:23 -04:00
Sale Djenic
a1027ff087 feat(@desktop/keycard): sign transaction using Authenticate flow
Actually this is not a signing transaction, but rather authenticating logged in
user when he wants to send a transaction. An authentication is done by entering
password(regular user) or pin(keycard user).

A real signing transaction feature will be (hopefully) added in a near future where
we're going to sign a transaction on a keycard which corresponds to a certain
account, a user wants to send a transaction from.

To sum up... this change just removes password from the send modal and introduces
`Authenticate` flow instead.

Fixes: #7510
2022-09-29 17:28:18 +02:00
Igor Sirotin
010bdc9956 feat(CreateChatView): Support pasting chat key 2022-09-28 09:55:25 -04:00
Michal Iskierko
3bcd26b6ae fix(@desktop/general): Fix sections switching shortcuts
Ctrl+n shortcut changes enabled section.

Fix #7478
2022-09-28 09:42:14 -04:00
PavelS
06b6b9258b fix(@desktop/chat): add message sent and delivered handlers
Fixes #7367
2022-09-28 15:44:05 +03:00
Sale Djenic
4e257539b8 chore(@desktop/keycard): usingBiometricLogin prop added to the user profile global instance 2022-09-27 20:15:34 +02:00
Sale Djenic
3687df2a2f chore(@desktop/keycard): isKeycardUser prop added to the user profile global instance 2022-09-27 20:15:34 +02:00
Sale Djenic
08ef68706f feat(@desktop/keycard): login flow wrong keychain pin update 2022-09-27 20:15:34 +02:00
Sale Djenic
861c585d2b feat(@desktop/keycard): adding wallet account using Authenticate flow
Fixes: #7509
2022-09-27 20:15:34 +02:00
Sale Djenic
4bff0b14ed fix(@desktop/wallet): crash adding an account via seed phrase fixed 2022-09-27 20:15:34 +02:00
Sale Djenic
f11ff29cb4 feat(@desktop/keycard): check what’s on a Keycard
Fixes: #7032
2022-09-27 20:15:34 +02:00
Sale Djenic
10c3b66336 feat(@desktop/keycard): unlock keycard flow added to the flows which are using it
- factory reset flow updated with unlock keycard flow
- setup new keycard (keycard migrate) flow updated with unlock keycard flow
- authenticate flow updated with unlock keycard flow
2022-09-27 19:03:18 +02:00
Sale Djenic
a3b71c7d91 feat(@desktop/keycard): unlock keycard flow added
Fixes: #7031
2022-09-27 19:03:18 +02:00
MishkaRogachev
d4d22f4094 feat(ActivityCenter): Notification badge with community info 2022-09-26 15:49:46 +03:00
PavelS
cee8af5869 fix(@desktop/community): add member verified model value
Fixes #7378
2022-09-22 15:01:06 +03:00
Patryk Osmaczko
d1b3e7af9e fix(@desktop/chat): rework invitation bubbles
InvitationBubbleView.qml:
- rework view to use layouts properly
- add missing community identicon

Backend:
- remove local community requests on community join
- propagate SIGNAL_COMMUNITY_MY_REQUEST_ADDED to UI

fixes: #7139
2022-09-21 08:57:18 +02:00
MishkaRogachev
2d02a3cb2e fix(ActivityCenter): Refactor components for viewing notifications 2022-09-20 16:43:21 +03:00
MishkaRogachev
edbd9adbb6 fix(ActivityCenter): Getting any of AC notifications visible
Close #7016
2022-09-20 16:43:21 +03:00
Lukáš Tinkl
9addf1221b fix(PinnedMessagesPopup): “Jump to” button doesn’t work pinned messages popup
This was never implemented, eventhough a similar approach is used with
the global AppSearch. Expose the method `scrollToMessage(messageId)` so
that it can be called from QML directly.

Fixes #7375
2022-09-19 16:34:07 +02:00
Richard Ramos
8a9a23a89e fix: contact status not reflected in list 2022-09-19 09:12:00 -04:00
Michal Iskierko
62c2b56fc8 fix(@desktop/chat): Improving displaying user names in chat
1. Rename contactDetails.displayName -> defaultDisplayName
2. Add contactDetails.optionalName (filled in contact service)
3. Set in message_model defaultDisplayName and optionalName values
4. Adjust UI

Issue #7241
2022-09-19 11:24:35 +02:00
Michal Iskierko
a45770cc98 fix(@desktop/chat): Fix showing contact names after restoring account
Fixes #7241
2022-09-19 11:24:35 +02:00
Richard Ramos
c3aa69b8ab feat: set default sync period to 30 days for new accounts 2022-09-15 15:59:23 -04:00
Anthony Laibe
215f9e0fa6 fix(@wallet): asset formatting
Fix asset formating and display of network only enabled
2022-09-15 16:54:43 +02:00
Sale Djenic
a2f48eef49 refactor(@desktop/keycard): buttons' responibility in the keycard popup improved
A new rule introduced which should provide easier tracking/maintainig
later. The rule says:
- popup contains up to 3 action buttons and one back button (optional)
- if 3 buttons are displayed in the popup then the most left button, but
not back button, always triggers tertiary action, middle button always
triggers secondary action and the most right button always triggers primary
action
- if 2 buttons are displayed, then:
  - if one of them is "Cancel" (left button) it should trigger tertiary action
and the other one (right button) should trigger primary action
  - if non of them is "Cancel" then the left button triggers secondary action
and the right button triggers primary action
- if single button is displayed, then:
  - if it's "Cancel" it triggers tertiary action
  - if it is not "Cancel" it triggers primary action
- tertiary action always reffers to the cancel action until otherwise set
- tertiary action will be always triggered by closing popup via keybord
(esc key) or clicking on top right `x` button on the popup
2022-09-15 11:01:32 +02:00
Sale Djenic
03bb1e5bf0 feat(@desktop/keycard): authenticate flow added
- Added `Authenticate` flow
- `Setup a new Keycard with an existing account` updated so it includes `Authenticate` flow
from the point where is needed (when migrating a profile keypair)
- We are missing `Unlock Keycard` flow for this one, will be added once it is developed
2022-09-14 16:05:52 +02:00
Sale Djenic
405171dad7 fix(@desktop/keycard): updates to the onboarding/login flow
- login states updated so they can resolve enter pin state from each state
that flow may be in
- not a keycard state added
- login plugin state added
2022-09-14 16:05:52 +02:00
Sale Djenic
3042a0cffa chore(@desktop/keycard): shared keycard popup module extension
shared keycard popup module is extended with:
- `uniqueIdentifier`
- `settingsService`
- `walletAccountService`
- `keychainService`
2022-09-14 16:05:52 +02:00
Sale Djenic
7a998b0e21 feat(@desktop/keycard): user profile prop address renamed to keyUid
Prop `address` renamed to `keyUid` to be consistent in code and name the
things in the way what they really are.
2022-09-14 16:05:52 +02:00
Patryk Osmaczko
6760870dc9 fix(@desktop/chat): rework members selector
fixes: #5941
fixes: #7234
fixes: #7235
fixes: #7236
fixes: #7237
fixes: #7238
fixes: #7239
fixes: #7240
2022-09-13 12:33:34 +02:00
Jonathan Rainville
aba2a42c6f test(@wallet): allow to use ganache with goerli 2022-09-13 11:56:42 +02:00
Stefan
7af95eaada feat(wallet): add favorites for saved addresses
Depends on statug-go favourite flag extension and merging of `favourites`
with `saved_address` tables and API

Additional changes:

- Remove duplicate name instead of ESN

Closes: #6546
2022-09-12 15:58:52 +02:00
Anthony Laibe
81300b655f fix(@wallet): display currency price rather than 24h change
fixes #7268
2022-09-12 11:00:41 +02:00
Patryk Osmaczko
ad996d4884 feat(@Desktop/chat): extend chat section model with onlineStatus
closes: #7279
2022-09-12 10:32:25 +02:00
Khushboo Mehta
928e1999d9 feat(@desktop/wallet): Implement Transaction details as per new design
fixes #7214
2022-09-09 21:36:58 +02:00
Patryk Osmaczko
1218de67b9 feat(@desktop/chat): display fetch messages when needed
- it only applies to community chats

closes: #6731
2022-09-09 10:39:58 +02:00
Khushboo Mehta
e9d3d7a0b0 bash: q: command not found
feat(@desktop/wallet): New design for Transaction History

fixes #7213
2022-09-09 00:04:25 +02:00
Michal Iskierko
2bb346a09e fix(@desktop): Use colorId to find correct color of users&members
colorId is set in the model instead of using qml function.

Fix #6366
2022-09-08 13:56:27 +02:00
Sale Djenic
89f4fa7440 fix(@desktop/chat): chat - messages in 1-1 chat arrive out of order
An explanation why we keep track of `timestamp` and `localTimestamp` here,
introduction of those two actually fixes the following issues:
- https://github.com/status-im/status-desktop/issues/6004
- https://github.com/status-im/status-desktop/issues/7058

We should always refer to `whisperTimestamp` as it is set for a message by the network
in order they are sent (that solves the issue #6004), but another issue #7058 is happening
cause `whisperTimestamp` has one second accuracy (which is a very big timeframe for messages).
That further means that all messsages sent by user A within 1000ms will be received with the
same `whisperTimestamp` value on the side of user B, in that case to differ the order of
those message we're using localy set `timestamp` on the sender side which is received unchanged
on the receiver side.
Now a question why don't we use only locally set `timestamp` may araise... the answer is...
because of issue #6004, cause it can be that users A and B send a message in almost the same
time in that case message sent by user A will be immediatelly added to the message list, while
message sent by user B will arrive like a less then a second later and in that case user A may
see user B message before or after his message and the same for user B, depends on local time
of those 2 users which is set for `timestamp` time in the moment they sent a message.

If we anyhow find a way to have here accutacy higher than 1 second, then we can go on only
with `whisperTimestamp`
3f987cc565/protocol/messenger.go (L3726)

Fixes: #7058
2022-09-06 15:06:47 +02:00
Sale Djenic
07a0cdc680 fix(@desktop/keycard): additional updates
- `Setup a new Keycard with an existing account` flow improved
- code review comments applied
- Qml part updated due to the latest `StatusListItem` changes in `StatusQ`
2022-09-06 15:06:13 +02:00
Sale Djenic
79aece0aeb fix(@desktop/keycard): updates to the onboarding/login flow
Changes done within this commit were required by the latest keycard
library change, where we gave up of sending few signals when we're
running/resuming flow, which were sent before (those were signal notifying
about unplugged reader, card not inserted and card inserted, they are sent
by the keycard lib now only if that is really needed).
2022-09-06 15:06:13 +02:00
Sale Djenic
afa7928bae feat(@desktop/keycard): keycard settings -> migrate keypair flow
- Added flow which covers `Setup a new Keycard with an existing account` from
the keycard settings part (though two sub-flows there are missing, `Unlock Keycard`
and `Authentication` cause we don't have them yet).
- Updated factory reset flow (part of shared module) that it can read and display metadata
from a keycard if they are set, with this update this flow is almost complete, we are missing
`Unlock Keycard` flow for it as well.
2022-09-06 15:06:13 +02:00
Michal Iskierko
d6a061a517 feat(@desktop/chat): Add setting image in group chat
Image and cropping information are sent to status-go.

Issue #6466
2022-09-01 12:25:53 +02:00
Michal Iskierko
c16b0762ae fix(@desktop): Fixing setting contacts statuses
Remove timers logic since it was moved to status-go.
Handle additional status.updates.timedout signal.

Issue #6403
2022-09-01 10:03:52 +02:00
Khushboo Mehta
56e6427260 fix(@desktop/wallet): Assign an emoji to the default wallet account during onboarding
fixes #6694
2022-08-30 11:56:32 +02:00