Commit Graph

327 Commits

Author SHA1 Message Date
Michał Cieślak 544f749f44 ProfileHeader and related components refactored to use compressed key directly 2024-11-13 09:49:07 +01:00
Michał Cieślak b8f9566116 UserImage refactored to remove dependency on backend via Utils 2024-11-13 09:49:07 +01:00
Jonathan Rainville 27ececad63
perf(contacts): make initial contacts fetching async (#16560)
* perf(contacts): make initial contacts fetching async 

Fixes #16509

* fix: don't fetch contact if we don't have it in cache

Fixes #16509

* feat: add a visible loading indicator when the chats are not ready yet
2024-11-01 10:32:20 -04:00
Sale Djenic 03a0a18313 fix: links do not work in the terms of name registration popup
Fixes #16658
2024-10-30 14:10:40 +01:00
Michał Cieślak 4c7205fc5d getEmojiHashAsJson moved from Utils to UtilsStore 2024-10-28 23:16:31 +01:00
Michał Cieślak f6f73c188a isAlias moved from Utils to UtilsStore 2024-10-28 23:16:31 +01:00
Michał Cieślak 14226af5a0 UtilsStore creaed, isChatKey method moved 2024-10-28 23:16:31 +01:00
Anastasiya Semenkevich b19bdcf97f chore(@qml): add object name for leaving community context menu item 2024-10-23 11:31:26 +03:00
Lukáš Tinkl d9d6d90dc9 [Style] remove legacy Style and its themes
- legacy Style and ThemePalette removed
- moved and deduplicated font definitions into `Theme` (unrelated to a
color palette)
- `Style.current.foo` -> `Theme.foo`
- `Style.current.fooColor` -> `Theme.palette.fooColor`
- upgrade the imports to 5.15
- removed some mode dead components

Fixes #16514
2024-10-22 15:54:31 +02:00
Michał Cieślak 95e5f5d34d Global.settingsSubSubsection property (UI state in singleton) removed
Closes: #16457
2024-10-22 11:18:09 +02:00
Michał Cieślak 5acb9fc8fb Global.settingsSubsection property (UI state in singleton) removed 2024-10-22 11:18:09 +02:00
Michał Cieślak c22a15e8fa Backend-dependent content removed from Constants, userProfile removed from Global
Closes: #16459
2024-10-16 23:02:02 +02:00
Michał Cieślak 02993196e9 References to Global.userProfile removed from multiple components 2024-10-16 23:02:02 +02:00
Michał Cieślak c4828a094b Access to user profile encapsulated in profile store 2024-10-16 23:02:02 +02:00
Michał Cieślak dc3a1ca39b SendModal handler removed from ProfileSectionStore 2024-10-16 23:02:02 +02:00
Michał Cieślak 3bf415add0 UserStatusContextMenu refactored to be not dependent on stores 2024-10-16 23:02:02 +02:00
Khushboo Mehta 3f55e6c9c5 feat(@desktop/wallet): Remove preferred chains from wallet accounts all over the app 2024-10-11 18:48:37 +02:00
Khushboo Mehta 7003ba73e2 feat(@desktop/wallet): Remove network prefixes in saved addresses and ReceiveModal 2024-10-11 18:48:37 +02:00
Michał Cieślak 9f9dcefcf8 chore: using StringUtils.plainText consistently
There were two version of plainText - one exposed from the backend,
another, backend-independent in StringUtils. The latter one is now
used in all cases.
2024-10-11 12:14:53 +02:00
Alex Jbanca fd99b96cb5 feat(WalletConnect): Handle sign request expiration
Implementing the user-story for sign request expiry and add qml tests
+ other minor fixes

## Acceptance Criteria

```
//Always show the expiration
Given the sign/transaction request dialog is shown
When request has an expiration date
Then the user sees a 1 minute countdown in the dialog
```

```
// Show 1 minute timer
Given the sign/transaction request dialog is shown
When the request has 1 minute or less before expiring
Then the user sees a 1 second countdown in the dialog
```

```
Given the sign/transaction dialog is open
When the request expires
Then the Accept button is removed
And the only option for the user is to close the dialog
```

```
Given the sign/transaction request dialog is open
When the request expired
Then the `Sign` and `Reject` buttons are removed
And the `Close` button is visible
```

```
Given the sign/transaction request expired
Then a toast message is showing
And it contains the "<dapp domain> sign request timed out" message
```

```
Given the sign/transaction request dialog is open
When the request expired
Then the sign/transaction request dialog is still visible
```

```
Given the sign/transaction request expires
Then a console message is shown
And it contains 'WC WalletConnectSDK.onSessionRequestExpire; id: ${id}`'
```
2024-10-10 12:49:15 +03:00
Lukáš Tinkl bf666c20f5 fix(chat): chat input accepts DnD for blocked users
- do not allow DND when the StatusChatInput is disabled
- remove `Global.dragArea` variable from the Global singleton
- move the `DropAreaPanel` into `StatusChatInput` and handle its
enabling from there

Fixes #16451
2024-10-10 10:33:13 +03:00
Sale Djenic 11f1e1541b fix: optimizes send modal flow for buying stickers 2024-10-09 13:10:14 +02:00
Sale Djenic 46f34ec8fc fix: optimizes send modal flow for ens usernames 2024-10-09 13:10:14 +02:00
Lukáš Tinkl 63fb79abd6 fix(CurrencyStore): fix passing the CurrencyStore around
- now that we no longer have them as singletons, just pass the one and
only instance down from AppMain
2024-10-07 12:09:23 +02:00
Michał Cieślak 9503def18b chore: applicationWindow property removed from Global singleton
Closes: #16455
2024-10-05 14:15:35 +02:00
Michał Cieślak 05f73ebf78 stores: shared/RootStore made not singleton
Closes: #16247
2024-10-03 20:08:32 +02:00
Michał Cieślak 2af0d6668b stores: access shared/RootStore via explicit property instead of singleton 2024-10-03 20:08:32 +02:00
Jonathan Rainville 252061d8e8
feat(sync): add a fallback mechanism when the pairing does't work (#15820)
Fixes #15750

When the pairing fails, the UI now let's the user use the seed phrase instead.
When they do, a call is send to the original device and both instances will show an AC notif.
When the original device accepts the pairing, the call is made to pair and sync the devices and the AC notifs get deleted
2024-10-02 09:54:35 -04:00
Michał Cieślak 9acf8d8709 stores: remove isWalletEnabled from shared/RootStore
Closes: #16254
2024-10-02 13:38:22 +02:00
Lukáš Tinkl d09448e406 fix(AddEditSavedAddressPopup): fix validating account
- `contactsModuleInst` was undefined due to a different RootStore
2024-09-29 11:01:35 +02:00
Jonathan Rainville c09de56678
fix(searchList): speed up ctrl-k search by using SPFM (#16393) 2024-09-27 12:05:23 -04:00
Khushboo Mehta b3e336987c feat@(desktop/wallet): Launch SednModal when an address or ens name is detected in a 1-1 chat and validate it when launched
closes #16293
2024-09-23 11:20:56 +02:00
Khushboo Mehta 5771a33eaa feat(@desktop/wallet): Added feature flag FLAG_SEND_VIA_PERSONAL_CHAT_ENABLED for the send via personal chat feature
Also added logic in order to detect and highlight an address/ens name in the chat
2024-09-23 11:20:56 +02:00
Lukáš Tinkl 9d9fb69e3b feat(StatusEmojiPopup): reimplement around C++ EmojiModel
- the new C++ EmojiModel provides a simple wrapper around the existing
JSON to facilitate a faster access and to be able to search/filter in
QML using SFPM
- no more nested GridViews inside Repeaters
- get rid of emoji manipulation and search/filter using JavaScript
- included the C++ script to generate the emojiList.js
2024-09-03 10:19:54 +02:00
Lukáš Tinkl 19e0be07d8 feat: Upgrade emoji selection to support latest emojis
- upgrade to latest TWEmoji 15.1.0 from
https://github.com/jdecked/twemoji (the original twemoji is abandonware
now)
- create new EmojiJSON metadata from https://github.com/milesj/emojibase
- removed unused 26x26 assets
- add storybook page for StatusEmojiPopup

Fixes #8979
2024-09-03 10:19:54 +02:00
Khushboo Mehta b8f41e35c4 feat(@desktop/wallet): Buy Mercuryo flow - Improvements
fixes #16041
2024-09-02 16:51:16 +02:00
Michał Cieślak c9b7d9eab6 Remove nim api for clipboard handling
Additionally there is hook on ClipboardUtils added
to detect if copied string is a wallet address and call addressWasShown.
Earlier that call was done internally on nim side.

Closes: #16196
2024-08-29 15:46:17 +02:00
Michał Cieślak 4ac9a9b305 copyImageToClipboardByUrl moved to ClipboardUtils 2024-08-29 15:46:17 +02:00
Seitseman 2275fe4f1f fix(Stored): Make stores typed
Adding types instead of var for stores used in qml components

Closes: #14801
2024-08-27 10:52:18 +02:00
Lukáš Tinkl f4040fb580 chore(links): do not open confirmation for "mailto:" links
- the domain for those is empty anyway
2024-08-20 10:46:00 +02:00
Alex Jbanca 4d963031e9 fix(WalletConnect): Store web cookies and cache to a dedicated folder for each account
WalletConnect cannot operate on shared cookies in between accounts. This commit will split the cookies and cache in different folders with the user public key as folder name.
2024-08-13 23:23:23 +03:00
Lukáš Tinkl a7e74f3e00 chore(Global): Remove FeatureFlags access via Global singleton
- rationale: do not save global state in a singleton, gather and
propagate the values via FeatureFlagsStore

Fixes #14697
2024-08-12 20:00:31 +02:00
Lukáš Tinkl 7f4ca098de fix(SendModal): hide the Custom network mode in `production`
- manage the lifetime of the Custom tab button dynamically; setting the
tab button to `visible: false` doesn't unfortunately remove it from the
tab bar

Fixes #16052
2024-08-12 09:46:21 +02:00
Khushboo Mehta ada348486e feat(@desktop/wallet): Swap:: Added text that links to Paraswaps terms and conditions page 2024-08-08 18:34:43 +02:00
Lukáš Tinkl ed650d32dd chore: Remove the Browser from the app completely for now
- completely removes the `ui/app/AppLayouts/Browser` QML app section
- removes the `app_service/service/bookmarks`,
`app/modules/main/browser_section` and
`src/app_service/service/dapp_permissions` NIM modules
- remove the Browser settings page and associated popups/components
- HTML links now always open in an external browser
- adjust the section indexes in `Constants`
- fixup the e2e tests

Fixes #14614
2024-08-07 16:45:31 +02:00
Stefan 98c18901e0 fix(dapps) Wallet Connect internet connection reestablishing issue
Add a new NetworkChecker QObject to StatusQ to be used in checking
internet connection status. This is used by the WebEngineLoader
to only allow loading of web pages when there is an active internet
to cover for a corner case on MacOS where the internet connection is
not reestablished if the WebEngineView was loaded without an active
internet connection.

Closes: #15598, #15806
2024-07-31 14:08:16 +02:00
Cuteivist 20620e04cf
fix(wallet): Repeat transaction updates (#15571) 2024-07-31 13:58:05 +02:00
Roman Chornii 4b4377331f
fix(dApps): sign popup appears during splash screen (#15739) 2024-07-23 21:48:01 +03:00
Michal Iskierko 52fe774975 feat(@desktop/metrics): Show metrics popup when starting application
Adding local setting: metrics_popup_seen
Small refactoring: showing popup from main.qml
Showing popup: 1. on welcome screen, 2. in Settings/Privacy page and 3. after login when the popup has not been shown yet

Issue #15628
2024-07-23 10:59:03 +02:00
Michal Iskierko a26657bbca feat(@desktop/metrics): Add metrics management page
Add new settings page for metrics management - Privacy and security
Add popup to enable/disable metrics on Onboarding and Privacy screens
Add MetricsStore in QML

Issue #15490
2024-07-23 10:59:03 +02:00