Commit Graph

6445 Commits

Author SHA1 Message Date
Mikhail Rogachev 0455832f92
feat: Add `scanCommunitiesMembersForName` endpoint (#13789)
Close #13434
2024-03-01 22:12:19 +03:00
Michał Cieślak 00af1d0e90 StatusQ(WritableProxyModel): Handling of layoutChanged/rowsMoved from source models fixed
Closes: #13601
2024-03-01 15:47:41 +02:00
Jonathan Rainville c9fd4ebcee feat(communities): hook promoteSelfToControlNode to UI
Fixes https://github.com/status-im/status-desktop/issues/13560
2024-02-29 12:29:39 -05:00
Mikhail Rogachev f934615752
feat: Add api for getting full pending CR object (#13749) 2024-02-29 12:49:37 +03:00
Alexandra Betouni cdbe3a7718 [ProfileSettings]: Added biometrics in password change view
Closes #13302
2024-02-29 11:44:59 +02:00
Godfrain Jacques 0a42bd0742
(desktop/fix) Fix Owner token holder representation (#13712)
fix #12065 token owner presentation in Token section by displaying the owner
token holder as contact
2024-02-28 10:02:44 -08:00
Ivan Belyakov 09c0f1b0c8 feat(wallet): ReceiveModal dialog UI tweaks
Closes #13386
2024-02-28 17:23:46 +01:00
Dario Gabriel Lipicar 10c44b8038 feat(@desktop/wallet): implement collectible details activity tab
Fixes #12311
2024-02-28 13:07:48 -03:00
Mikhail Rogachev 6ac2f92200
feat: add `markAsTrusted` endpoint (#13751)
Close #13716
2024-02-28 16:50:40 +03:00
Michal Iskierko 3b5d55090d fix(@desktop/permissions): Handle correct values in permissions
Add new field AmountInWeis to token criteria dto.
Keep strings instead of floats in token_criteria_item.
HoldingSelectionModel keeps amount in wei-like units but they are displayed in permissions as floats (divided by decimals).

Issue #11588
2024-02-27 19:33:27 +01:00
Valentina Novgorodtceva 6de7032d65 chore: object name for build showcase button added and fixed small typo 2024-02-27 16:14:02 +03:00
Mykhailo Prakhov 996199b910
feat(desktop@communities): change kicked/banned member behavior (#13706)
feat: change kicked/banned member behavior
2024-02-27 12:55:56 +01:00
Ivan Belyakov eac2f498de fix(wallet): Fix missing 'Community minted' section in AssetsView regression 2024-02-27 12:50:22 +01:00
Noelia 3425102990 feat(ProfileShowcase): Adds drop area in collapsed headers
- It adds an additional right component to `FoldableHeader.qml`.
- It adds hidden button component in `hidden` foldable header.
- It adds visibility buttons component in `in showcase` foldable header.

Closes #13595
2024-02-27 11:48:10 +01:00
Lukáš Tinkl 630da7caaa fix: 150% and 200% zoom levels prevent the user from logging in
- TLDR: we were scaling twice, resulting in ginourmous pixel values

The long story:
- since Qt treats the various scale factors in a multiplicative way (see
https://www.qt.io/blog/2016/01/26/high-dpi-support-in-qt-5-6 for
explanation) and there's no way to get the screen's baseline scale
factor programatically, we also have to export `QT_SCREEN_SCALE_FACTORS`
to something that's not equal to `0` or `1` to force the monitor scale
factor to `100%` and then compensate for it when exporting our own scale
value using `QT_SCALE_FACTOR`
- make the UI slider values go in `25%` steps, allowing for more fine
grained control; with `100%` we fallback to the Qt's native handling of
highdpi
- raised the maximum to `300%` since on highres displays, one wouldn't
be able to go over the implicit maximum of `200%` (due to the internal
scaling being 2x)
- scale our main window's minimum width/height so that we don't overflow
the monitor's available space
- modernize the `ConfirmAppRestartModal` to use `StatusDialog`
- use the new `Utils.restartApplication()` when changing the UI language
as well
- remove some dead code

In the (very) long term, we should take a different approach of scaling
our app independently of Qt, just taking the monitor
`Screen.devicePixelRatio` into account, similar to what other apps like
Telegram do

Fixes #13484
2024-02-27 10:39:05 +01:00
Michał Cieślak 0497ecd82e StatusQ(LeftJoinModel): Handling of layoutChanged from source models fixed
Closes: #13683
2024-02-27 10:12:47 +02:00
Michał Cieślak 1639f1f9e7 feat(StatusQ/Testing): invert method added TestModel emiting valid layoutChanged 2024-02-27 10:12:47 +02:00
Ivan Belyakov be218c22cd feat(wallet): Send modal community tokens always grouped and listview sections changed
Closes #13430
2024-02-26 17:21:52 +01:00
Lukáš Tinkl 4d3745d4b2 feat(Profile flow) Mark as ID verified / remove verification
- implement two new actions and popups to directly mark a contact as "ID
verified" and remove the verification thereof respectively
- do not hardcode the secondary button inside ProfileDialogView and make
it a Loader
- make the CommonContactDialog contents scrollable

Fixes #13711
2024-02-26 16:11:56 +01:00
Noelia 3386ce74e7 feat(ProfileShowcase): Created first info popup
- Created `ProfileShowcaseInfoPopup` component.
- Added storybook support for the new popup component.
- Added new popup into the application flow.
- New property stored in local account settings file.

Closes #13338
2024-02-26 10:08:52 +01:00
Noelia 90f4e1477c feat(ProfileShowcase): Add blur delegate state while dragging
- Added `FastBlur` component to `ShowcaseDelegate` and added property to change to blur state.
- Updated `ProfileShowcasePanel` to activate blur delegate state when dragging.

Closes #13594
2024-02-26 10:05:31 +01:00
Khushboo Mehta 085bf762a5 feat(@desktop/wallet): Update token details view
closes #12373
2024-02-23 13:03:28 +01:00
Anthony Laibe aed61b68b1 feat(@wallet): sepolia default 2024-02-23 11:52:40 +01:00
Noelia 1dc03624d6 feat(ProfileShowcase): Drop area behaviour / design when sections expanded
- It updates `ProfileShowcasePanel` with new drop area design adding shadows, changing drop areas design and sizes.

- It adjusts `ShowcaseDelegate` according to design, ie: heigh and background colour on dragActive.

Closes #13509
2024-02-23 10:13:13 +01:00
Noelia 1af5c166c5 SQ(StatusDraggableListItem): Added new property `changeColorOnDragActive `
This property holds if background color will be changed on drag active or not.
2024-02-23 10:13:13 +01:00
Noelia f31f01d64b feat(ProfileShowcase): Enable add more accounts component
- Added new additional footer component in `EmptyShapeRectangleFooterListView`.
- Enabled more accounts component in profile showcase assets and collectibles panel.

Closes #13590
2024-02-22 17:09:36 +01:00
Cuteivist fae86bcb8d
feat(@wallet): Show community activity (#13627) 2024-02-22 15:41:19 +01:00
Cuteivist 3126973cfc
feat(activity): Add navigation to tx details (#13634) 2024-02-22 15:41:13 +01:00
Michał Cieślak 0d4e7bd458 StatusQ(MovableModel): layoutChanged handling fixed
Closes: #13602
2024-02-22 14:39:31 +01:00
Michał Cieślak 1bcbb482a1 feat(StatusQ/Tests): Added isNotSame(...) method for comparing models
It works similarly as isSame(...) but doesn't print warnings when
mismatch is found. Thanks to that may be used conveniently whenever
we expect differing models in a test.
2024-02-22 14:39:31 +01:00
Michał Cieślak 6d502427e5 feat(StatusQ/Tests): Added utility for persistent indexes validation 2024-02-22 14:39:31 +01:00
Mykhailo Prakhov 12569d795f
feat(@desktop/community): allow owner delete all messages during the ban and ban/unban AC notifications (#13653) 2024-02-22 12:01:01 +01:00
Sale Djenic 34f801231c feat(savedaddresses): saved address details popup implementation
Within this commit a new popup is introduced with the requested UI effect.

Closes #13096
2024-02-22 11:03:10 +01:00
Alexandra Betouni 12c24c4f15 [Create new community popup]: Adjusted request to join
As per new designs

Closes #12809
2024-02-22 11:42:33 +02:00
Alexandra Betouni 8cdfa81b79 [BackupSeedPopup]: Fixed warning message size based on text size
Closes #8402
2024-02-22 11:06:28 +02:00
Sale Djenic a3923461e8 fix(savedaddresses): saved addresses should be displayed in mixed cases format
Fixes #13665
2024-02-22 10:05:26 +01:00
Lukáš Tinkl 343cfa0982 feat(Profile flow): Block/unblock user
- implement block and unblock user popups with optional "Remove contact" and "Remove ID verification" check boxes
- emit (combined) toasts

Fixes #13522
2024-02-21 19:39:05 +01:00
Lukáš Tinkl b0e24b0396 fix(StatusWarningBox): expose `textSize` 2024-02-21 19:39:05 +01:00
Jonathan Rainville dc580fe6ba fix(SharedAddresses): fix airdrop address not being reflected in popup
Fixes #13618
2024-02-21 13:15:00 -05:00
Michał Cieślak 94f250d671 chore(ProfileShowcaseDirtyState): integration with Constants.ShowcaseVisibility enum 2024-02-21 09:42:05 +01:00
Michał Cieślak 29c15a5bff feat(StatusQ): custom UndefinedFilter filter for filtering undefined role values
Generic filter for handling undefined values. This kind of filtering
cannot be done using ValueFilter. On the other hand using
FastExpressionFilter is much more costy in terms of performance
overhead.

Closes: #13638
2024-02-21 09:42:05 +01:00
Michał Cieślak ac266bb997 feat(ProfileShowcase): Component managing all models required by Profile Showcase settings UI
Closes: #13435
Closes: #13490
Closes: #13494
2024-02-21 09:42:05 +01:00
Michał Cieślak 809af0ac90 feat(ProfileShowcase): Base components for managing dirty state 2024-02-21 09:42:05 +01:00
Michał Cieślak 5b5b19fc7a StatusQ(Utils): Simple utility allowing to declare children in QtObject without property assignment 2024-02-21 09:42:05 +01:00
Michał Cieślak b949fb7b3b StatusQ(MovableModel): Methods naming refactor, Storybook pages updated/improved 2024-02-21 09:42:05 +01:00
Michał Cieślak f747791f50 StatusQ(MovableModel): Add ability to restore and bypass original order of source model 2024-02-21 09:42:05 +01:00
Lukáš Tinkl e46f6c311c feat(Profile flow): Remove a contact
- implement the new remove contact confirmation popup

Fixes #13521
2024-02-20 20:11:56 +01:00
Godfrain Jacques f236782490
(feat/desktop) Add toggle for mainnet transaction validation with nimbus (#13227)
- Adds the View for the toogle button
2024-02-20 11:07:22 -08:00
Lukáš Tinkl e773d8d358 feat[StatusButton] missing green/success state
- implemented the missing `StatusBaseButton.Type.Success` state and
colors for both `StatusButton` and `StatusFlatButton`
- use a `switch` instead of a waterfall of ternaries
- adjust storybook for the new case

Fixed #13622
2024-02-20 00:35:04 +01:00
Khushboo Mehta eaef030bc8 feat(@desktop/wallet): Send dialog: sizing and layout rules to limit dialog height jumping between states
fixes #13377
2024-02-19 17:23:20 +01:00
Cuteivist 7dedb223a2
feat(@desktop/activity): Handle token received notification (#13447) 2024-02-19 14:58:20 +01:00
Lukáš Tinkl 4a3eb4ce18 feat(Profile flow) Mark as untrusted
- add new popup for marking a person as untrusted
- optionally display checkboxes to remove ID verification or the contact
- emit toasts

Fixes #13520
2024-02-19 14:25:35 +01:00
Cuteivist 2e6af7aa51
feat(@desktop/settings): Integrate token advanced settings with backend (#13487) 2024-02-19 13:09:07 +01:00
Noelia 01095e0208 feat(ProfileShowcase): Add foldable sections in profile showcase tabs
- Modified `ProfileShowcasePanel` with 2 foldable sections.
-  Modified api of `ProfileShowcaseCommunitiesPanel` with the new base component.
- Modified api of `ProfileShowcaseAccountsPanel` with the new base component.
- Modified api of `ProfileShowcaseAssetsPanel`  and `ProfileShowcaseCollectiblesPanel` with the new base component.
- Added needed `storybook` support.

Closes of #13504
2024-02-19 11:13:23 +01:00
Noelia 9c3159ecd1 feat(ProfileSettings): Base layout updated
Removed unnecessary `ColumnLayout` and adjusted sizing of component inside.
2024-02-19 11:13:23 +01:00
Noelia d5134fe864 feat(shared/controls): Moved foldable header and generic list view from wallet to shared
Renamed `ManageTokensListViewBase` to `EmptyShapeRectangleFooterListView` and moved `FoldableHeader` to shared/controls.

Updated related `ManageXXPanel` components.
2024-02-19 11:13:23 +01:00
Noelia 32feaff6d7 fix(ManageTokensView): Renamed tokens panel to assets panel
Rename.
2024-02-19 11:13:23 +01:00
Lukáš Tinkl 2fa65968c0 fix(Profile flow): Send a contact request (CR)
- make `SendContactRequestModal.qml` use the common dialog, use the
contact details if we already have it
- make some minimal changes to the "Send ID verification" flow since it
shares the same dialog
- simplify the `CommonContactDialog.qml` footer/buttons handling
- adjust the menu item texts
- emit toasts when the action is performed
- display a tooltip over the compressed elided key

Fixes #13518
2024-02-16 16:47:45 +01:00
Alex Jbanca 610a9dc115 feat(ProfileShowcase): Update display name validator error messages 2024-02-16 14:10:14 +02:00
Lukáš Tinkl 275d4fb349 fix(Profile flow): Adding/changing/removing a nickname
- introduce a shared `CommonContactDialog.qml` component, to be used in
all profile/contact related flows
- make `NicknamePopup.qml` use the common dialog
- adjust the menu item text and add a new "Remove nickname" item
- remove unused `DisplayNamePopup.qml`
- emit toasts when the nickname changes

Fixes #13513
2024-02-16 10:52:58 +01:00
Alex Jbanca 4b1b779bee fix: App crash while switching accounts
App is crashing when mapFromSourceRoles is called with 0 m_rolesMappingFromSource length
2024-02-16 10:55:12 +02:00
Dario Gabriel Lipicar 1860aa8240 fix(wallet): implement sort collectibles by date
Fixes #13550
2024-02-15 14:09:04 -03:00
Anthony Laibe 40e00c0602 fix(@wallet): Sepolia toggle 2024-02-15 11:53:22 +01:00
Sale Djenic dbd7937d8b feat(savedaddresses): add save receiver address to the context menu in tx details view
This commit handles saved addresses changes and reflect them to the history view
and tx details view. In this context it handles the same way changes coming from sync
devices.

Also fix the issue when switching network mode.

Closes: #13095
2024-02-15 10:07:48 +01:00
Noelia 2259f92ed3 storybook(ActivityNotification): Community token received page
Added support to `ActivityNotificationCommunityTokenReceived` component.

Closes #13362
2024-02-14 15:10:20 +01:00
Alex Jbanca 8a69f3bc63
fix(SeedPhrase): Fixing seed phrase validation (#13496)
* fix(SeedPhrase): Fixing seed phrase validation

1. Validate each word after the editing is finished
2. Fixing the seed phrase suggestions where the suggestions box was hidden behind other ui elements
3. Propagate editingFinished signal in StatusBaseInput, StatusInput, StatusSeedPhraseInput
4. Fixing undefined `mnemonicIndex` errors

* fix: Refactoring of SeedPhraseInputView

Remove duplicated code and use EnterSeedPhrase component

+ Added storybook page

* fix(Onboarding): Fixing seed phrase validation on windows

The seed phrase validation fails on windows due to the dictionary line endings

* chore(squish): Update e2e tests to the new enter seed phrase panel construction

* fix: Load english dictionary from local file using StringUtils
2024-02-14 15:50:14 +02:00
Lukáš Tinkl 46e256673c feat(profile): Place user image/identicon onto the QR code
- fix the QR code to generate a URL with the link to the profile instead
of just the user key
- reuse the `UserImage` component and place it on top of the existing QR
code
- put a white rectangle behind the QR code image and white ring around
the user image

Fixes #13482
2024-02-14 13:37:06 +01:00
Noelia 98f9edb545 fix(ManageTokens): Advanced tab UI pixel perfect fixes
- Fixed spacing between `Token lists` title and list items.
- Fixed spacing between list items and `add more` box.
- Fixed highlight item when hovering `View` button.

Closes  #13395
2024-02-14 13:21:08 +01:00
Sale Djenic 3e3452c8db fix(savedaddresses): saved addresses are not in sync between devices
Closes: #9567
2024-02-14 12:19:34 +01:00
Noelia 1de573ada7 feat(ProfileShowcase): Collectibles panel navigation button
- Created new reusable component to navigate to accounts tab form collectibles / assets tab.
- Added needed support in `storybook` to cover the new use case.

Closes #13340
2024-02-14 10:28:56 +01:00
Anastasiya Semenkevich 34d72e7cf1 chore: object name for image cropper 2024-02-13 22:18:39 +03:00
Noelia a55998cf8a fix(SettingsDirtyToastMessage): Save changes always disabled
It fixes issue with save changes button introduced in commit edf7e82.
2024-02-13 17:51:20 +03:00
Lukáš Tinkl 0f1fc3b241 fix(profile/qr) add Copy/Download menu for QR code
add a regular image context menu with:
- "Copy image" -> copy the image to clipboard
- "Download image" -> downloads the image in the user specified folder

Fixes #13479
2024-02-13 15:04:27 +01:00
Anastasiya Semenkevich 520b658c09 chore: add object name for EditCroppedImage item 2024-02-13 16:24:46 +03:00
Michal Iskierko 46c69cf0a8 fix(@desktop/permissions): Hide permissions list in sharing addresses dialog if only base permissions are set
Fix #12884
2024-02-13 12:09:26 +01:00
Noelia edf7e82932 feat(ProfileShowcase): Save changes tooltip when disabled
- Replaced current `StatusButton` type to `DisabledTootipButton` to allow tooltip displayed when disabled in dirty toast message.
- Added needed conditions in `MyProfileView` where the tooltip when the save changes is disabled.

Closes #13334
2024-02-13 10:56:50 +01:00
Anthony Laibe a1c2d9a4b2 feat(@wallet): add restart required for changes
fixes #13380
2024-02-13 09:34:06 +01:00
Jonathan Rainville d41affabb9 fix(discord_import): fix community not cleaned up when it fails
Fixes #12724

The actual issue wasn't reproducible, even if I removed the guards against duplicate names.
But I did find that the community wasn't cleaned up correctly, so I fixed it in this PR. It should limit the confusion and possible issues that could arise.
2024-02-12 16:43:16 -05:00
Lukáš Tinkl f7781525ff fix: timestamp shows yesterday for a message received 3 days ago
- introduce one global update timer, to be used in various components
for date/time sensitive updates (StatusSharedUpdateTimer)
- this timer runs only when the app is/becomes active
- use the timer's `triggered()` signal to update the timestamp label
when needed; ie. if it's to display a relative timestamp and it's
currently visible

Fixes #11460
2024-02-12 15:30:52 +01:00
Noelia 463cce03ac feat(ShowcaseDelegate): Added community badge
- Added community badge in `ShowcaseDelegate`.
- Added `storybook` support.

Closes #13336
2024-02-12 14:45:14 +01:00
Noelia 9d4f1f6aa7 feat(ProfileShowcase): Assets panel navigation button
- Added new button to navigate to accounts tab form assets tab.
- Added needed support in storybook to cover the new use case.

Closes #13337
2024-02-12 14:44:47 +01:00
Khushboo Mehta 8c939ad3a3 fix(@desktop/wallet): Replace existing model used in Community / Permissions and do the needed cleanups
fixes #12513
2024-02-12 14:26:13 +01:00
Lukáš Tinkl 4b24497899 fix(profile): add online status badge to profile picture
- adds the green/gray dot (aka online indicator) to Profile dialog and
context menu (via ProfileHeader and UserImage components)
- add the respective combobox to storybook too

Fixes #13480
2024-02-12 12:36:20 +01:00
Lukáš Tinkl cf847e14fa fix(profile key): use the same 3,6 elided key everywhere
according to latest designs, the elided compressed key should be
diplayed with 3 leading and 6 trailing characters, just like we already
do in `Utils.getElidedCompressedPk(pubkey)`
2024-02-12 12:36:20 +01:00
Michał Cieślak ee3e1febb6 fix(StatusModalFooter): Prevent footer's buttons overflow
Closes: #11449
2024-02-09 13:41:39 +01:00
Michał Cieślak 6aee04e33e fix(StatusDialogFooter): Prevent footer's buttons overflow 2024-02-09 13:41:39 +01:00
Alexandra Betouni 480985ca4e
[Settings]: Added change password view (#13284)
* [Settings]: Added change password view

Closes #10037

Adding configuration options to PasswordView

* feat(ChangePassword): Integrate ConfirmChangePasswordModal

1. Integrate with backend
2. Clean unused components

* feat: Add support to restart application

1. Adding restart app support in DOtherSide
2. Integrating nimqml
3. Expose in qml in Utils

* chore: Move changeDatabasePassword call to threadpool

* chore(squish): Fix failing tests due to settings index changes

---------

Co-authored-by: Alex Jbanca <alexjb@status.im>
2024-02-09 13:31:37 +02:00
Igor Sirotin d29e5406de
fix: display name width calculation (#13446) 2024-02-09 10:58:02 +00:00
Lukáš Tinkl 319b5dd23e feat(profile dialog): General UI updates
- create new `ShareProfileDialog` with QR code + links
- align the context menu items with latest Figma designs
- add `isBlocked` to contact icons
- adjust SB to show more options and showcase models

Fixes #13416
Fixes #13417
2024-02-09 11:41:55 +01:00
Valentina1133 0378b12b7d
chore: object names for profile tab buttons added (#13469) 2024-02-09 11:05:14 +07:00
Alexandra Betouni 5811285de6 [Communities]: renamed create community button
Closes #8481
2024-02-08 19:16:22 +02:00
Ivan Belyakov 1ac52f5d38 feat: Add RPC statistics screen to settings' advanced view
Closes #13264
2024-02-08 17:10:53 +01:00
Lukáš Tinkl b38138cc71 fix(AppMain): display a badge for Settings icon with incoming CR
Fixes #9779
2024-02-08 16:49:27 +01:00
Alexandra Betouni 588ad6d70b [Profile] Aligned display name max length with mobile
Closes #13456
2024-02-08 16:52:00 +02:00
Alexandra Betouni a714e8b2d1 [Communities]: Fixed community key text area scrolling
Closes #12620
2024-02-08 16:17:59 +02:00
Dario Gabriel Lipicar 8b7efa3122 feat(wallet): simplify loading items mechanism for collectibles model
Fixes #11802
2024-02-08 11:08:21 -03:00
Alex Jbanca 74bcdbe2c3 fix(WritableProxyModel): Insert in a single step to avoid providing undefined roles to ListViews 2024-02-07 19:54:47 +02:00
Alex Jbanca 87d3dcb113 fix(ChannelPermissions): Fixing duplicate permission detection and save button state
The duplicate permission detection was not working because the channel selection cannot be dirty when the channel selector is disabled.
2024-02-07 19:54:47 +02:00
Alex Jbanca 0b856737b1 chore(ChannelPermissions): Remove HidePermissionPanel component 2024-02-07 19:54:47 +02:00
Alex Jbanca cf82772aed feat(ChannelPermissions): Add permissions section in create/edit channel popup
Changes:
1. Make PermissionsView/EditPermissionsView configurable to support channel permissions config
2. Adding channel permissions support in the create/edit channel popup
3. Connect the channel permissions to backend
4. Cleaning unneeded emojiPopup
2024-02-07 19:54:47 +02:00