Commit Graph

6376 Commits

Author SHA1 Message Date
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
Alex Jbanca 56d67f5ba2 chore(Permissions): Adding utility function getUniqueChannelPermission 2024-02-07 19:54:47 +02:00
Alex Jbanca bf90d1bbc0 chore: Do not show the user actions if the user doesn't have the necessary permissions in the channel 2024-02-07 19:54:47 +02:00
Alex Jbanca 055d8e8322 chore(permissions): Improve performance by using the `Fast` expressions and add necessary models and APIs in the PermissionsStore
Changes:
1. Adding the `Fast` expressions where needed
2. Break the channel permissions into categories in PermissionsStore
3. Remove unused/unneeded code
2024-02-07 19:54:47 +02:00
Alex Jbanca 35c1475403 chore: Adding new component ChannelPermissionsModelEditor
The purpose of this component is to hold the dirty permissions edited my the user.

This is a functional component used to create/edit/delete permissions. The edited permissions are detached from the backend.
2024-02-07 19:54:47 +02:00
Alex Jbanca fc81568fe9 fix(StatusQ): StatusMessageQuickActions width should be 0 when there is no button 2024-02-07 19:54:47 +02:00
Alex Jbanca ac569b8ba5 chore(StatusQ): Add new component StatusIconSwitch
Component holding a switch and a title/subtitle using the app style
2024-02-07 19:54:47 +02:00
Alex Jbanca 9d4bc9466e chore(WritableProxyModel): Adding possibility to get the model changes 2024-02-07 19:54:47 +02:00
Alexandra Betouni d2030de867 [TransferOwnershipPopup]: Added getUidForData function
Closes #13288
2024-02-07 17:30:41 +02:00
Lukáš Tinkl 3eff96bfc8 feat(profile): Implement side-by-side preview
- restored dirty tracking for Identity; showcase is handled by the NIM
backend atm
- StatusSectionLayout: make the right panel width configurable and clean
the docu

Fixes #13331
2024-02-07 14:29:59 +01:00
Igor Sirotin 69d4c8824b
chore: show "Fetch messages" chat context menu action when in debug mode (#13445) 2024-02-07 12:38:46 +00:00
Lukáš Tinkl 3ebd4509bb feat(profile): Break profile settings page into tabs
- Each section of the current profile settings view is moved into the
corresponding tab
- The Preview tab becomes the Preview button
- Password button becomes a separate page: PR: [Settings]: Added change
password view #13284 (I kept the Change password button for now until
this is merged)

- Also creates the new Web (Social links) tab as a result

Fixes #13330
Fixes #13406
2024-02-07 10:39:18 +01:00
Michał Cieślak 3859c5c76e chore(StatusQ/MovableModel): fix index creation in data() method 2024-02-07 10:33:45 +01:00
Michał Cieślak ca90636384 fix(ManageHiddenPanel): Disable displace Transition to fix positioning on unhiding
When removing the top-most item from the list, animation was ending with
improper delegates' positioning. No workaround found, transition
disabled.

Closes: #13392
2024-02-07 10:33:21 +01:00
Jonathan Rainville 7b302c07ef feat(chat): preserve 1-1 chat history when closing it + rename copy
Fixes #12754
2024-02-06 12:30:57 -05:00
Jonathan Rainville db49c5995f chore(ChatContextMenuView): clean up unused leaveGroup signal 2024-02-06 12:30:57 -05:00
Anthony Laibe 0916d1db2c feat(@wallet): 5 chars min account keypair name
fixes #13384
2024-02-06 14:14:42 +01:00
Lukáš Tinkl 9b85a302fc fix(showcase): unbreak drag and drop reordering
- unify the signature of the method to `move(from, to, count)` so that
both ListModel and NIM have it the same
- realize the move operation using the proper `begin/endMoveRows`
instead of doing a full model reset
- simplify signaling `dataChanged()` for all model roles (nimqml now
follows the C++ impl)

Fixes #13329
2024-02-06 10:09:56 +01:00
Godfrain Jacques ae16bd8b67
fix(settings): It's not possible to switch the log level (#13309)
* chore: bump status-go

Closes #13139

* fix(settings): It's not possible to switch the log level

Previously it was not possible to change the state of the Debug toggle.
This is because the code forced the setting the default value, ignoring
the database setup, hence always setting the DEBUG as LogLevel.

Closes #13139
2024-02-05 09:11:27 -08:00
Lukáš Tinkl d537807fbd fix: [Community Settings] Tokens page is not scrollable...
... from within the gridView

Set the ListView/GridView `interactive: false` to unbreak touchpad
scrolling; those views are unrolled anyway

Fixes #11959
2024-02-05 13:09:48 +01:00
Lukáš Tinkl 9db48a986a fix(token mgmt): finish the controller refactoring
- reduce the duplication by moving the controllers (1 per type) to the
toplevel stores
- make sure the internal properties stay in sync between save/load now
that we have just 1 common controller
- fix navigating to the Hidden section from the toast
- finish impl of hiding the token from FirstTokenReceivedPopup
2024-02-02 23:48:10 +01:00
Noelia 3cbfe1cf54 feat(TokensManagement): Hide asset / collectible popup
Moved `ConfirmationDialog` popups related to hide individual assets or collectibles to `Popups`.

Part of #13293
2024-02-02 23:48:10 +01:00
Lukáš Tinkl 12bbaee43f fix: refactor the token mgmt controller and models placement
put the respective controller instances into WalletAssetsStore and
CollectiblesStore, so that they can be accessed from other places, like
the SendModal or some popups

Iterates #13293
2024-02-02 23:48:10 +01:00
Ivan Belyakov c791173c81 fix(wallet): disable "Send" button at all places when no network
connection

Closes: #13326
2024-02-02 14:46:40 +01:00
Anthony Laibe 1634109971 feat(@wallet): token list global updated at
fixes #13269
2024-02-02 12:01:17 +01:00
Lukáš Tinkl fa75cf7b9b fix: Incorrect margins when collection group name is long
- set width for the text so that the ellision works correctly

Fixes #13396
2024-02-02 11:59:32 +01:00
Alex Jbanca a55dcf299e performance: Improve the wallet loading time
+ small bug fixes
2024-02-01 16:46:40 +02:00
Alex Jbanca a6abdbeeef Revert "fix(RightTabView): revert to using a StackLayout instead of a Loader"
This reverts commit b58612f070.
2024-02-01 16:46:40 +02:00
Ivan Belyakov 49adcd9b59 fix(wallet): fix qml warnings and errors in Wallet 2024-02-01 09:39:00 +01:00
Igor Sirotin c995ff20b0
fix: invalid message header size (#13372) 2024-01-31 20:22:27 +00:00
Khushboo Mehta 7dcc704d29 fix(@desktop/wallet): Prepare send modal to display community assets
fixes #12378
2024-01-31 15:48:35 +01:00
Michał Cieślak 6f25499380 chore(Settings/Tokens management): simplify ManageAssetsPanel and ManageCollectiblesPanel by deriving directly from DoubleFlickableWithFolding 2024-01-31 13:51:00 +01:00
Michał Cieślak 2e29e847ac chore(WalletSettings): Use DoubleFlickable for assets/collectibles tabs in manage tokens
It provides visual alignments to the current design and also
significantly improves performance because ListView components
are not "unrolled" causing instantiation of too many delegates.

Closes: #12703
Closes: #13043
2024-01-31 13:51:00 +01:00
Michał Cieślak 8509dd9c67 chore(DoubleFlickableWithFolding): Inline component moved to separate file
Otherwise it would crash tests under Qt 5.15.2
Additionally Storybook page has been extended by adding footers.
2024-01-31 13:51:00 +01:00
Michał Cieślak 9fe60e650f chore(DoubleFlickableWithFolding): Component api and usage simplified
Now the header don't have to be reparented manually. Everything
is done internally in the component. Additionally the usage
in CollectiblesView is adjusted to the change.
2024-01-31 13:51:00 +01:00
Noelia f2db89573f feat(AC-CommunityTokenReceived): Added UI for community tokens received
- Added UI support for first community token received (asset or collectible).
- Added UI support for any community token received (asset or collectible).
- TODO: Storybook support

Fixes #12515
2024-01-31 11:19:29 +01:00
Michal Iskierko 0a18dda176 feat(@desktop/chat): Displaying new type of chat message - bridge message
Show discord user as a message sender.
Show discord avatar next to user name.
Show "Bridged from Discord" label.
Open adjusted profile context menu.

Issue #13098
2024-01-30 13:06:17 +01:00
Khushboo Mehta ff951f624a fix(@deaktop/wallet): Remove old tokens_service under accounts service and only keep new one.
fixes #13142
2024-01-30 10:56:51 +01:00
Sale Djenic 4405397e18 fix(keycard): keycard details screen's title should follow the keypair's name, not the keycard's names 2024-01-29 15:10:50 +01:00
Sale Djenic bbaafa8954 feat(savedaddresses): display various cards if an address user is trying to save is known
Closes: #13280
2024-01-29 14:56:24 +01:00
Noelia aaa9937124 feat(FirstTokenReceivedPopup): Created new popup `FirstTokenReceived`
- Created new popup component.
- Created related `storybook` page.
- Integration of the popup into the app.

Closes #12366
2024-01-29 12:15:48 +01:00
Godfrain Jacques ab61784816
(fix/desktop) removing custom picture is not reflected on contact's side (#13197)
* chore: bump status-go

* (fix/desktop) removing custom picture is not reflected on contact's side

This PR fixes [9947](#9947) and contains :

- Commit to fix the changing of custom picture and having the change
  reflected on contact's side
- Commit to fix the deleting of picture and having the change reflected
  on contact's side
2024-01-26 07:54:30 -08:00
Lukáš Tinkl 5080499d29 fix: cleanup and fixes after introducing the new assets model 2024-01-26 11:45:24 +01:00
Lukáš Tinkl f2482ab003 fix: fake collections shouldn't be visible in a filtering combo
teach the model about the special cased self-collections containing just
one single collectible item; we need that for the "Arrange by
collection" token mgmt feature but in all other cases it shouldn't be
treated as a collection/group

Fixes #13281
2024-01-26 11:45:24 +01:00
Lukáš Tinkl 3b99bcb29a fix: apply Custom order to main wallet view
also fix navigating into section/subsection

Fixes #13275
2024-01-26 11:45:24 +01:00
Lukáš Tinkl d7e25ea0a7 feat(Manage Tokens): implement "Arrange by collection"
- simplify the delegates (no more nested inner models/ListViews)
- persist the "Arrange by" toggles state (when needed)
- adjust the tests

Fixes #13232
2024-01-26 11:45:24 +01:00
Lukáš Tinkl 57b3b254b8 feat: Create the hidden tab (to host both assets and collectibles)
- add new Hidden tab/section to Settings/Wallet/Manage tokens page and
storybook
- extract the controller(s) to ManageTokensView.qml to share them across
the tabs
- updated the grouped UI delegate
- adjust the tests

Fixes #13201
Fixes #13188
2024-01-26 11:45:24 +01:00
Mikhail Rogachev 2abfe0fa0c
feat(ProfileShowcase): Implement profile showcase collectibles (#13103)
* feat(ProfileShowcase): Show token balences in the profile showcase

* feat: support new tokens & collectible identification

* feat: add collectibles to profile showcase preferences

* feat: dispaly collectibles for a contact

* fix: review fixes & tokens code moved to separated PR
2024-01-25 21:43:36 +04:00
Khushboo Mehta fb4e9a1ed1 fix(@desktop/wallet): Updatebthe new assets models in Token mangement, Activity filters and SharedAddressPanel 2024-01-25 12:45:22 +00:00
Michał Cieślak a4097707a3 feat(Wallet): Collectibles view adjusted to design using DoubleFlickableWithFolding
DoubleFlickableWithFolding provides foldable sections and controls
underlying grid views for both categories preventing from instantiating
too many delegates.

Closes: #13045
2024-01-25 10:05:09 +00:00
Michał Cieślak 5740826025 fix(DoubleFlickableWithFolding): Adjustments regarding folding flags
Additionally Binding restore mode is set to proper value and the
case where header is not set is handled properly.
2024-01-25 10:05:09 +00:00
Sale Djenic 654da3e246 fix(savedaddresses): preferred chains maintained in two places
This commit prevents the user from adding an address to the saved addresses list,
if it was already added to the Wallet section. Also when the user is about to add
an address to the Wallet section, which is already added to the saved addresses
list, the app will ask whether to proceed with that action by removing the related
saved address or cancel the action.

Closes: #13109
2024-01-24 14:40:21 +01:00
Sale Djenic 18303ef49c feat(savedaddresses): implement search saved address logic
Closes: #13091
2024-01-24 14:40:02 +01:00
Alexandra Betouni 7b89fecf31 [ManageTokensView]: Restructured contents in column
Closes #13253
2024-01-24 11:44:05 +02:00
Khushboo Mehta 8da6847d42 fix(@desktop/wallet): Uses the new wallet assets in Profile showcase 2024-01-23 23:27:40 +01:00
Khushboo Mehta 087601e28e feat(@desktop/wallet): Apply flat assets model into SendModal
fixes #13016
2024-01-23 20:26:25 +01:00
Noelia 21a33cabd9 feat(Wallet/Toasts): Updated / added toasts related to community tokens received
- Added new role into ephemeral_notification_model: image.
- Added new view API to display ephemeral notifications with image and action.
- Added support to display asset or collectible image in a toast with different shape (circle or square).
- Default values assigned to the new parameters added in `CommunityTokensStore` meanwhile backend is not ready.
- Created page for `StatusToastMessage` in `storybook`.

Closes #13039
2024-01-23 18:40:28 +01:00
Noelia 09629985f7 feat(statusQ/StatusToastMessage): Added image component
- Added new image component and specific related config parameters.
- Fixed issue when there's no `linkUrl` but `actionRequired`.
2024-01-23 18:40:28 +01:00
Michał Cieślak 2c9015d2f4 chore(StatusQ): statusq.qrc sorted alphabetically 2024-01-23 17:07:02 +00:00
Michał Cieślak cbc15b368e feat(StatusQ): DoubleFlickableWithFolding component providing sticky and foldable headers
It's build on top DoubleFlickable, managing two Flickables in an
effective way. It adds specific behavior of foldable and always visible
section headers.

Closes: feat/issue-13193
2024-01-23 17:07:02 +00:00
Michał Cieślak 62857410e6 feat(StatusQ): DoubleFlickable utility making two Flickables operating line one
The wrapper doesn't "unroll" the managed Flickables. There is no
instantiation of delegats for all model entries up front.
2024-01-23 17:07:02 +00:00
Michał Cieślak e51667911d StatusQ: MovableModel proxy for setting custom order over source model
Proxy decorating source mode with additional method move(from, to, count)
similar to that available in ListModel. The custom order is stored within
a proxy, not altering the original model. May be useful whenever UI needs
to allow user to set custom order. Temporary state can be held in the
proxy, and send to the backend when changes are accepted.

Closes: #12686
2024-01-22 16:36:41 +01:00
Michał Cieślak 22dcf8269f StatusQ: SnapshotModel testing utility 2024-01-22 16:36:41 +01:00
Michał Cieślak 001e90a4c6 StatusQ: ModelSignalsSpy testing utility 2024-01-22 16:36:41 +01:00
Michał Cieślak 8ac6c21782 StatusQ: Add insert overload taking array as input 2024-01-22 16:36:41 +01:00
Sale Djenic 3c209ccbf0 fix(keycard): next button disabled until user reveals seed phrase 2024-01-22 14:35:11 +01:00
Alexandra Betouni 7e3ae8dd7a [Wallet - Token management] Extend transactions UI component
Backend #13241

Closes #12375
2024-01-22 11:49:55 +02:00
Richard Ramos 50e6011bcf chore: remove wakuV1 and status.prod/test fleets 2024-01-19 22:10:46 +03:00
Alex Jbanca 942482fe99 performance(ChannelsSelectionModel): Use LeftJoinModel for ChannelsSelectionModel.qml
Motivation:
ChannelsSelectionModel.qml is freezing the app when used with a live channel that's being edited because on each channel change the selection model is re-created.

The fix for this is to use the LeftJoinModel to unify the channels selection (a light model containing only keys) and the full channels model containing the channels data. On top of this, the SortFilterProxyModel is added to decorate the model with the roles expected in the UI. Another improvement is by replacing the ExpressionRole with the FastExpressionRole.
2024-01-19 15:07:19 +02:00
Dario Gabriel Lipicar 29f1bee218 feat(@desktop/wallet): implement allCollectibles module
Fixes #13235
2024-01-18 13:57:04 -03:00