Commit Graph

268 Commits

Author SHA1 Message Date
Lukáš Tinkl 9e396f7344 chore: refactor/improve/optimize StatusMessage & friends
- drop dead code
- reduce number of direct bindings
- use Loaders whenever possible

Fixes #8744
2023-01-10 10:55:53 +01:00
Sale Djenic 4fb18e7cac fix(@desktop/onboarding): an issue handling date on Ubuntu fixed
It seems that `new Date` with only minutes set on Ubuntu generates different
datetime then on Mac.
2023-01-10 09:37:46 +01:00
Lukáš Tinkl e947f81cd2 fix: Chat input: can't send html text from the clipboard
We always take the plain text from the clipboard but even the plaintext
can contain HTML tags, so escape those and wrap the result in a `<div
style='white-space: pre-wrap'>foo</div>` container. That way we preserve
not only the linebreaks but also any whitespace or tags.

Fixes #8919
2023-01-05 12:32:53 +01:00
Sale Djenic 32fcda485c feature(@desktop/keycard): migrate an exsiting account from Keycard to Status Desktop
Fixes: #7030
2023-01-04 14:24:55 +01:00
Sale Djenic b2cb263d68 feature(@desktop/keycard): import or restore a Keycard via a seed phrase
Fixes: #7029
2023-01-04 14:24:55 +01:00
Sale Djenic 0e65f2a7ff feature(@desktop/keycard): create a new Keycard account with a new seed phrase
Fixes: #7028
2023-01-04 14:24:55 +01:00
Sale Djenic 19ba018a1d fix(@desktop/onboarding): onboarding flows for `I already use Status` path do not match figma requirements (1/2)
Profile fetching (display name and identity images) implemented on the status-go side and
integrated in the desktop app.

Signal notifying about the progress while fetching backed up data from waku implemented on
the status-go side and integrated in the desktop app.

`I already use Status -> Enter a seed phrase` and `I already use Status -> Login with Keycard`
updated so they match figma now.

Fixes: #8467
2023-01-04 11:15:58 +01:00
Sale Djenic 9d382b1c81 fix(storybook): profile fetching updated
Profile fetching page, which is part of onboarding flow, is updated so it matches
the latest figma changes now.
2023-01-04 11:15:58 +01:00
Khushboo Mehta eb2ec7c1af feat(@desktop/wallet): Update network card and routing lines in SendModal
fixes #8714
2023-01-02 15:36:26 +01:00
MishkaRogachev f70ccfc17d fix(ActivityCenter): Add identity verification AC notifications 2022-12-30 12:13:42 +04:00
Khushboo Mehta 17aaec2d53 feat(@desktop/wallet): Send modal update
fixes #8609
2022-12-21 20:44:56 +01:00
mprakhov fb254fd775 fix:(@desktop/keystone): Request saving password to keystone on a startup after changing the password through settings 2022-12-21 17:02:38 +02:00
Igor Sirotin 3f2f732698 fix(Utils): Return empty contact if no `mainModuleInst` set 2022-12-20 17:23:09 +03:00
Alexandra Betouni 99c7b33e1e fix(Global): Cleaned up Global from backend dependencies
Closes #7933
2022-12-19 16:28:41 +02:00
Patryk Osmaczko 87674064d0 feat(chat/messages): implement new messages marker
closes: #8572
iterates: #7488
2022-12-16 19:12:12 +01:00
Boris Melnik a584a31818 fix(warnings): Remove warnings on login screen
Fixes: #8293
2022-12-15 14:17:53 +03:00
Michal Iskierko 3f01af4446 fix(@desktop/chat): Fix user names propagation.
Add ProfileUtils for displaying correct name.
Set names in models correctly.
Fill names in qml correctly.

Fix #8343
2022-12-14 17:44:26 +01:00
Sale Djenic 4b972acdd9 feature(@desktop/keycard): display keycards for the same keypair as a list in the keypair details view
Fixes: #8136
2022-12-14 08:22:12 +01:00
Lukáš Tinkl 73cc621f0c fix: Rename "Chat" tooltip to "Messages"
... and do it the proper way, ie. make the string translatable as we
can't handle translations coming from NIM files at the moment

Closes #8418
2022-12-13 03:46:25 +01:00
Jonathan Rainville 194e3048bc fix(messages): fix Resend btn not working and add Sending visual state
Fixes #7643

This adds the backend to resend. It then hooks the button to it.
This also adds a visual state for when we are sending. This gives a good indication that a message was sent.
2022-12-12 11:56:21 -05:00
Lukáš Tinkl 668ea868c4 fix(notifications): The sound of notifications is harsh and annoying
Use logarithmic sound volume scale instead of linear when interpreting
the sound volume value

TLDR; we were literally overblowing the speakers with absolute sound
volume levels; for the whole story I recommend reading:
https://www.dr-lex.be/info-stuff/volumecontrols.html

Also play a sound preview when changing the volume in Settings

Needs https://github.com/status-im/dotherside/pull/83

Fixes #8426
2022-12-12 11:39:32 +01:00
Lukáš Tinkl f62acae911 fix(Settings): cant switch off sounds for notifications
Fix a bunch of problems with handling sound/notifications related options
coming from the backend:
- `volume` and `notificationSoundsEnabled` live in a different settings
object; adjust the stores for that
- unbreak loading the actual wav/mp3 files (was never working on Linux
outside of AppImage!) -> use "qrc:/", same as the NIM backend does
- fix the volume scaling (backend has [1,100], QML is [0, 1])
- simplify our Audio QML item interface; no need for an extra property
and resolving the URL twice (which results in broken scenarios mentioned
above); we know which sounds we want to load

Closes #8668
2022-12-09 11:01:18 +01:00
Pascal Precht b510b33730 feat(communities): allow community import via public key
Status allows for importing communities via their private keys.

There's a requested feature that users should be able to import a community via
its public key as well.

This will behave differently as private keys won't give users ownership
of the communities. When importing via a (compressed) public key, Status
will try to fetch information about the community from the network. If it
finds such information, it'll load it into the app and create
a communitiy view from which users can then request access.

If it can't find a community or community information in the network,
the user will get a dedicated error message.

This commit also refactors the `ImportCommunityPopup` such that it uses
`StatusDialog` and updates the copy accordingly since importing via
public key is now possible as well.

Closes #8339
2022-12-07 14:18:08 +01:00
Lukáš Tinkl e13726e4af feat(SocialLinkPreview): links are too short to display even short urls
- rework the way social links are displayed/editted; we now only allow to
enter a so called "handle" and then substitute that in the final URL
template
- move the "icon" model role to NIM backend

This has several advantages:
- we display only the "handle" and don't have to elide some long URL
- we won't let users enter random URLs into their profile and spoof the
viewing part into clicking it

Additionally, make the social link "button" clickable -> navigate to the
target URL, and make the tooltip behave as "usual" (on mouse hover).
2022-12-07 12:40:58 +01:00
Pascal Precht 93eaf0fdfd fix: allow whitespaces in display and nicknames
Closes #8391
2022-12-06 19:34:17 +01:00
Khushboo Mehta 0c7442d696 fix(@desktop/wallet): Wrong Password error should not be handled in the SendModal
fixes #8527
2022-12-05 13:59:06 +01:00
Sale Djenic 49da859947 feat(@desktop/keycard): create a backup copy of a Keycard
Fixes: #7035
2022-12-02 17:26:06 +01:00
Khushboo Mehta 9ded9d4ffa feat(@deaktop/wallet): Add bridge view
fixes #8236
2022-12-01 17:15:55 +01:00
Lukáš Tinkl 9559789030 chore: reduce the number of (verification) RPC calls
- when calling `Utils.getColorHashAsJson()` we don't actually need to
issue ID verification requests at all and there might be situations when
we know beforehand that we don't need the ENS verification either
- change these helper functions' syntax and do early returns in that case
- in MessageContextMenuView, the "contact details" were duplicated, so
remove one
- remove dead code, fix some warnings
2022-12-01 16:50:23 +01:00
Lukáš Tinkl 6b7eea8db9 fix: unbreak suggestions for emojis containing an underscore
- don't consider `_` as a "punct" or invalid character, some emojis like
flags do contain it in their name

Fixes: #8446
2022-11-28 12:11:23 +01:00
alexjba 1b2fd40b20 Adding qmake project file for wasm
This changeset contains the prerequisites required to compile StoryBook on wasm_32 and the README file with instructions
2022-11-23 16:20:37 +02:00
alexjba 98d3073a61 Update min text length in password 2022-11-23 15:21:21 +02:00
Khushboo Mehta 6c0806c2e1 (@desktop/wallet): Fix for pending tx not shown in history view
fixes #7530
2022-11-22 13:57:50 +01:00
alexjba 6474e73b85 Add profile fetching view to storyBook
The profile fetching view is part of the onboarding process. This view should be displayed on existing user onboarding flow, while the profile is being fetched in the backend.
It has 3 states:
1. Fetching in progress
2. Fetching completed
3. Fetching error
2022-11-17 21:48:53 +02:00
Sale Djenic 557703543c fix(@desktop/keycard): migrating keypair looks somehow stucked for a while before switching to `Migrating key pair to Keycard` state
Fixes: #8177
2022-11-15 12:12:07 +03:00
Boris Melnik 13acb5730d fix(profile-settings): Add usage dirty values for preview and load image profile on save
Closes: #7920 #7917
2022-11-14 14:59:46 +03:00
Michał Cieślak 1ca1866993 chore(Storybook): page for CreateChannelPopup added 2022-11-11 15:14:44 +02:00
Igor Sirotin a69b3b5928 fix(StatusMessageReply): Fixed reply text styling and behavior 2022-11-11 13:31:06 +01:00
Lukáš Tinkl 2b6164fc8d fix: ens names should not display `@`
Fixes #8122
2022-11-10 10:42:05 +01:00
Sale Djenic 6d4bec84b1 fix(@desktop/keycard): bigger Keycard views look cut if the app is resized to the min height
Fixes: #8137
2022-11-10 11:03:44 +03:00
Michal Iskierko 1f2a050695 feat(@desktop/general): Use compressed community key in deep links
Issue #8001
2022-11-08 15:18:39 +01:00
Pascal Precht cabfaf1ed6 fix(Communities): adjust discord import error codes
Those have been changed in status-go, resulting in wrong visualization
of import warnings and errors.

This commit adjusts them so they match the correct codes again.
2022-11-03 18:24:48 +01:00
Sale Djenic 2c03146309 fix(@desktop/keycard): can't create accounts if the main account was restored in using an existing keycard account
`I already use Status` -> `Login with Keycard` flow is enabled.

Fixes: #7867
2022-10-28 20:43:09 +02:00
Michal Iskierko 234a164597 fix(@desktop/chat): Accept profile deep link in "Send Contact Request to chat key"
Fix #8070
2022-10-28 16:15:40 +02:00
MishkaRogachev 532700f6c7 feat(ActivityCenter): Kicked from community notification 2022-10-28 00:25:10 +03:00
MishkaRogachev 9c8fee09cd feat(ActivityCenter): Community membership status handling 2022-10-28 00:25:10 +03:00
MishkaRogachev d4e4e66fc6 feat(ActivityCenter): Community membership notifications
Close #7277
2022-10-28 00:25:10 +03:00
Lukáš Tinkl f122607ada fix: consecutive discord messages should be grouped like status messages
- fill the senderId just like other messages
- add some checks in Utils since the "publicKey" (ID) coming Discord
isn't in the format we'd normally expect

Closes #6678
2022-10-27 22:44:00 +02:00
Khushboo Mehta aec7a30d03 feat(@desktop/wallet): Updated UI for bridge and multi routing support
fixes #7334
2022-10-26 18:48:30 +02:00
Michał Cieślak 57e80255bf fix(Global): Popup components moved from Global.qml to dedicated non-singleton component
Closes: #7992
2022-10-25 15:35:18 +02:00
Michal Iskierko 6d2a2e6e03 fix(@desktop/general): Fix clicking deep links in chat
Clicking any deep-link in chat: /u, /c, /cc does not open browser but executes instantly

Fix: #6302
2022-10-25 08:26:16 -04:00
Lukáš Tinkl 6e664564e0 feat(storybook): add Profile Popup
This adds the ProfileDialogView to storybook pages

For now, there's just one control to switch between own profile and
another profile; more to come in later PRs.

The mocked global objects (mainModuleInst and globalUtilsInst) are
injected via QML

Fixes: #7820
2022-10-21 18:12:39 +02:00
Sale Djenic a60e5d49cf feat(@desktop/keycard): create a new pairing code
Fixes: #7038
2022-10-19 13:24:41 +02:00
Sale Djenic 1f49f3fedd chore(@desktop/keycard): keycard animations' details set as constants for easier maintaining 2022-10-19 13:24:41 +02:00
Sale Djenic 7377526553 feat(@desktop/keycard): create a 12-digit personal unblocking key (PUK)
Fixes: #7037
2022-10-19 13:24:41 +02:00
Sale Djenic 9b2a63c400 feat(@desktop/keycard): change pin flow added
Fixes: #7034
2022-10-19 13:24:41 +02:00
Lukáš Tinkl 025a45d1a4 chore(AppMain): improve startup time
- wrap everything we can in AppMain with a (async) Loader
- do not access globals w/o a proper store
- drop some dead code

Although I wasn't able to completely fix the bug, the ~50% improvement in
startup time is still worth trying imho. On my machine, the startup time
went down from ~7s to under 4s.

Related: #7292
2022-10-19 10:48:20 +02:00
Lukáš Tinkl 7a407662e2 feat: New Profile Modal
Fixes: #7360
2022-10-17 12:05:54 +02:00
Sale Djenic 43011645f2 fix(@desktop/keycard): clicking `Get Keycard` button should direct to purchase page
Fixes: #7027
2022-10-14 13:49:23 +02:00
Khushboo Mehta 7e82b36509 feat(@desktop/wallet): Create API to retrieve historical price for a token
fixes #7260
2022-10-14 10:29:29 +02:00
Sale Djenic b1f8a476e8 feat(@desktop/keycard): rename keycard flow
Fixes: #7033
2022-10-13 19:58:45 +02:00
Michał Cieślak f0e238dce6 chore(general): Remove profile pictures visibility options
From now on, if the image is available it should be displayed
uncoditionally.

Closes: #7609
2022-10-13 07:51:55 -04:00
Sale Djenic 0cb23e0f16 fix(@desktop/keycard): login flow
Onboarding flow updated according to the latest related
figma changes.
2022-10-13 08:28:21 +02:00
Sale Djenic 095578b517 fix(@desktop/keycard): onboarding flow `I already use Status` -> `Login with Keycard` updated
Onboarding flow updated according to the latest related
figma changes.
2022-10-13 08:28:21 +02:00
Sale Djenic 9be07efec3 fix(@desktop/keycard): onboarding flow `I'm new to Status` -> `Generate keys for a new Keycard` updated
Onboarding flow updated according to the latest related
figma changes.
2022-10-13 08:28:21 +02:00
Boris Melnik 4cfa4e5451 fix(replies): Fire dataChanged when contact changed in reply
Closes: #7687
2022-10-12 10:54:24 -04:00
Alexandra Betouni 6fa4553d08 fix(DragnDrop): re-enabled drag and drop
Closes #7484
2022-10-12 10:34:46 -04:00
Boris Melnik 073e97eecd fix(Communities): Fix elide for communtiy public key
Closes: #7777
2022-10-12 16:33:18 +03:00
Michał Cieślak 4c03e67089 feat(Utils): Tracer can be used directly in layouts 2022-10-07 20:15:48 +02:00
MishkaRogachev 9b227cbfd9 feat(ActivityCenter): Add CTA for contact request notifications
Close #7277
2022-10-07 15:09:56 +04: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
Igor Sirotin f32e551c75 fix(InviteFriendsToCommunityPopup): Created single global instance. Fixed profile icons. 2022-10-05 14:37:36 +03: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
Sale Djenic c5a81455e8 fix(@desktop/keycard): change password disabled for a keycard user 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 a3b71c7d91 feat(@desktop/keycard): unlock keycard flow added
Fixes: #7031
2022-09-27 19:03:18 +02:00
Lukáš Tinkl a209d39881 fix: ENS name issues
- don't display identicon rings for contacts with an ENS name
- prefer the at-form (@foo-user) whenever possible, and don't display their
  username or pubkey unless they are locally given a nickname
- show compressed keys everywhere instead of the regular ones

Fixes: #7319
Fixes: #7515
2022-09-26 22:38:02 +02:00
MishkaRogachev edbd9adbb6 fix(ActivityCenter): Getting any of AC notifications visible
Close #7016
2022-09-20 16:43:21 +03:00
Michał Cieślak 34625ad1c4 feat(@desktop/communities) Permissions, 'who holds' section - handling localiezed amounts
Closes #7162
2022-09-19 21:46:44 +02:00
Khushboo Mehta 8c4ce7bc29 fix(@desktop/wallet): Send Modal doesn't fill available height and Drop Shadow missing in Send Modal Footer
Also fixed a crash found while fixing the above bugs

fixed #7133, #7134
2022-09-19 13:22:00 +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
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 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 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
Khushboo Mehta e9c270da87 fix(@desktop/wallet): Entering ENS name in SendModal doesnt work
fixes #6695
2022-09-05 14:55:31 +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
Lukáš Tinkl 15d33eb7fd fix(Global): 'Open in Browser' doesn't work in chat
strip the URL from any HTML tags before trying to open it; Qt sometimes
likes to leave some HTML tags there and that breaks the URL validity
checks further on

Fixes: #7170
2022-08-31 09:56:15 +02:00
Stefan b499942eea fix(Wallet/AddAccountModal): fix status-go error messages
Remove the unneeded native error dialog showing internal status-go
error strings. Instead redirect the error message for wrong private key
as specific error message.

Fixes: #6984
2022-08-30 19:05:06 +02:00
Pascal Precht fa5b862d2c feat(CreateCommunityPopup): introduce file selector and category panels 2022-08-26 10:59:41 +02:00
Sale Djenic 398f62806f feat(@desktop/keycard): initial UI for the keycard settings
This is just a wireframe implementation, without any special functionalities.

Fixes: #7023
2022-08-24 14:18:06 +02:00
PavelS 38c77095b8 fix(@desktop/chat): adjust add members default picture
Update colorForPubkey to check if colorId is in bounds
Replace userCustomizationColors array usage with Utils function call

Fixes #6971
2022-08-23 13:07:58 +03:00
Igor Sirotin 42a1cf995c fix(ChatMessagesView): Usage of `StatusMessage` WIP 2022-08-20 03:02:41 +03:00
Patryk Osmaczko 46e01afa04 feat(settings/profile): add social links' ui primitives
iterates: #6797
2022-08-17 13:18:32 +02:00
Alexandra Betouni c2ad7281ae feat(utils): Adding Tracer component
Used to help determine UI components position
and dimensions
2022-08-16 19:14:48 +03:00
Boris Melnik fbc10e7665 fix(CreateChatView): Move `ActivityCenterPopup` to appmain
Closes: #6345
2022-08-15 14:10:27 +03:00
Sale Djenic 505b242246 fix(@desktop/keycard): implement new keycard factory reset flow
This partially covers factory reset flow. The part where user is able to select which accounts
wants to remove/keep from/on a keycard will be added later once we add the keycard settings part
for storing those data to a keycard.

Fixes: #6790
2022-08-11 13:57:37 +02:00