Commit Graph

1614 Commits

Author SHA1 Message Date
Lukáš Tinkl d0658feb26 feat: disable language/translations selection
- make it conditionally available for testing via
Settings/Advanced/Enable translations
- display a tooltip and infobox explaining the current and future
situation
- upon app start, force the language to "en" if the translations are not
enabled; and suggest app restart when they get disabled

Fixes #14527
2024-04-30 13:25:01 +02:00
Alex Jbanca 85066fccc8 fix: Hide members count from community cards when the community is encrypted and the community info is not available 2024-04-30 14:03:38 +03:00
Lukáš Tinkl 0c8231a6b6 fix: can't join an encrypted community
- fix the corner case and allow the user to join a community without an
explicitely stated "Member" permission
- enable/disable the Share/Join/Save buttons when the permission to join
check is ongoing, or when the permission check failed
- display tooltips over the disabled buttons explaining why it's disabled
- always display the eligibility button floating on top of the
(scrollable) contents

Fixes #14473
Fixes #14299
2024-04-26 10:50:26 +02:00
Michał Cieślak e8a78e21b8 StatusQ(SubmodelProxyModel): Submodel type fixed
There was inconsistency in qvariant type of submodels depending if it
was initial call for a given row (creating proxy) or further calls
(returning cached object). It led to subtle issues in views - view was
reporting type errors and failing assigning submodels properly when used
with submodel proxy with already initialized and cached proxy submodels.

Closes: #14507
2024-04-24 11:24:13 +02:00
Lukáš Tinkl bbd0e71fd6 chore(StoryBook): add Colors page
- gives an overview of all the `Theme.palette.foo` colors
- the color name/code can be copied to clipboard
- light/dark variant supported via storybook's "Dark mode" switch
- integrated search (both the color name and value)
2024-04-23 17:11:49 +02:00
Jonathan Rainville 1da3c26da1 feat(edit): enable editing the message in an image message
Fixes #13255

It seems like all our code already supported it, we just blocked it in QML just in case 🤷
2024-04-19 10:12:13 -04:00
Michał Cieślak 173a02f1fc feat(StatusQ/SubmodelProxyModel): persistent submodels proxies
So far submodel's proxies were created on the fly, on every data(...)
call. Now, once created the proxy is persistent and reused whenever
needed.

Closes: #14389
2024-04-18 14:44:10 +02:00
Lukáš Tinkl 5b242c6dd8 fix: do not display the thousands separator when editing
- teach `userInputLocale` about `Locale.OmitGroupSeparator` option which
discards the said thousands separator
- some more fixes to other inputs to do the same, and align what the
validators do
- StatusAmountInput: discard illegal characters, and reuse the same
locale for the validator
- StatusAmountInputPage: make it possible to select a different locale

Fixes #14165
2024-04-17 14:04:03 +02:00
Alex Jbanca a045ca36fe feat(ProfileShowcase): Sort and filter collectibles based on token management settings 2024-04-17 13:40:42 +03:00
Godfrain Jacques eccc9b3bd7
fix(category) Implement collapsed categories (#14135)
This PR implements the nim part for enabling having collapsed categories
that persist into the database
This fixes #13944
2024-04-15 11:34:44 -07:00
Stefan 8be1453fd0 fix(token-order): global has settings check that introduced side effects
The "settings exist" done via ManageTokensController::hasSettings() was
using the global store, hence not working user based. Therefore, after
an onboarding the previous user's settings presence was taken into account.
The fix now uses the order data that is loaded externally per user.

Closes #14383
2024-04-15 09:16:34 +02:00
Stefan 228622359d fix: warning while switching between accounts
The is image flag and source was not in sync due to sequential change
of source and isImage. This was causing the following warning:
`Warning: qrc:/StatusQ/Components/StatusRoundedImage.qml:27:5: QML StatusImage: Cannot open: qrc:/StatusQ/Components/help
2024-04-15 09:16:34 +02:00
Cuteivist 7cb59576a1
fix(wallet): Update amount to send decimal handling (#14399) 2024-04-15 07:28:29 +02:00
Stefan d3f037f93b fix(wallet): hidden groups are still loading from user local settings
Removed loading hidden groups from local settings and instead reload
them from the externally loaded settings.
Also move the local saving code from the controller to external,
therefore now it is implemented in storybook

Updates #14365
2024-04-14 10:59:08 +02:00
Michał Cieślak 5d4380e4d9 feat(StatusQ/ConcatModel): Proper handling of source models layout change
Whenever source model emits layoutAboutToBeChanged/layoutChanged,
persisten model are updated appropriately, also scenario when items are
removed is covered.

Closes: #14244
Closes: #14245
2024-04-12 11:05:08 +02:00
Michał Cieślak 598a389c3e feat(StatusQ/TestHelpers): Add method to test model removing items and emiting layoutChanged 2024-04-12 11:05:08 +02:00
Lukáš Tinkl 5d064368cf chore(ui): visually align different combo box instances
- extract common background and indicator subcomponents into
StatusQ.Components.private, and reuse it

Fixes #14121
2024-04-11 21:48:16 +02:00
Lukáš Tinkl 3e051fd79c chore(ModelUtils): small optimization for `get`
- do not call `roleByName` twice
2024-04-11 21:48:16 +02:00
Sale Djenic d4fa715c7e fix(wallet): changes in account order in settings are not applied in wallet
Fixed an issue with dropping a draggable item outside the bounds of the DropArea.

Fixes #13836
2024-04-09 11:27:15 +02:00
Stefan 473e2e273f feat(wallet) connect assets ordering with saving to DB backend
Also refactor the existing code based on the latest understanding.

Closes #13312
2024-04-09 09:34:52 +02:00
Michał Cieślak 0b47e6ff8a feat(StatusQ/LeftJoinModel): Add init check on componentComplete
Earier attempts to initialize proxy may fail bc left/right models
may be not ready when they are set. It may lead to a situation where
the model remains uninitialized and reporint 0 row count.
2024-04-05 14:58:06 +02:00
Michał Cieślak 0c34325841 feat(StatusQ/LeftJoinModel): Add possibility to explicitly define roles to be joined
The new property is added to allow indicating which roles from the right
model should be used. It prevents from unnecessary renamings.

Closes: #14298
2024-04-05 14:58:06 +02:00
Alexandra Betouni 53db09412a feat(ProfileShowcasePopup): Adding interactions in delegates
Closes #13702
2024-04-05 12:31:11 +03:00
Lukáš Tinkl 375de59cfa chore(SharedAddressesPermissionsPanel): optimize the speed
- don't use the expensive `ExpressionFoo` in SFPM, just use
`AnyOf/AllOf` combinations where possible
- in HoldingsSelectionModel, don't call the `getTokenByKey` twice to
construct the `text`, once is enough
- lastly, rewrite the JS helper `PermissionsHelpers.getTokenByKey` to
C++; this method gets called recursively way too often from many places

In the longterm, we should provide a specific C++ transformation model
for SharedAddressesPermissionsPanel to follow the UI requirements more
closely; that way we'd be able to fix the issues here for good

Fixes #14276
2024-04-04 16:59:26 +02:00
Stefan ee23cce575 fix(SendModal): fix various issues with SendModal
- Fix errors when switching between assets and collectibles tabs
  - Fix by controlling the order of instantiation between model and
    delegates not to mix models and delegates from different sources
- Fix size errors
- Various improvements

Updates: #14212
2024-04-03 16:23:32 +02:00
Michał Cieślak b91cf08066 feat(SharedAddressesAccountSelector): Support for collectibles in account's delegate tags
Closes: #14102
2024-04-02 12:18:36 +02:00
Cuteivist 7fa3771e4e
feat(wallet): Handle collectibles details unknown community (#14206) 2024-04-02 10:23:20 +02:00
Alexandra Betouni 4af2a97358 [ProfileShowcase] Updated delegates as per design + added web tab
Closes #13421
Closes #13606
2024-04-02 10:21:13 +03:00
Cuteivist 6dec612f5c
feat(wallet): Handled failed to load collectible image state (#14229) 2024-03-30 06:00:00 +01:00
Lukáš Tinkl b191caaec6 feat: Add missing eligible to join tag in CommunityMembershipSetupDialog
- implement the eligibility check in C++, returning the highest possible
role the user would be allowed to join under
- enable/disable the "Share" button based on the above permissions check
- remove all the locally placed components, access teh popup only via
Global/Popups
- calculate the `accessType` internally based on the permissions present
- update the eligibility as the async check for permissions is finished
- fix the permissions panel background color
- partially revert the share/finish/cancel buttons behavior; it must be
one button due to StatusStackModal limitations
- fix some other minor UI issues or differences to current Figma designs
- adjust SB, add the possibility to play around with different
permission models

Fixes #14100
2024-03-29 16:11:59 +01:00
Sale Djenic 9b8401b641 fix(communities): keycard authentication marked automatically as authenticated
Closes #14174
2024-03-28 07:38:42 +01:00
Stefan 26542970ee feat(wallet) save/load collectibles user handled state in DB
Add a separation layer for save/load/clear to ManageTokensModel
so that we can save/load from external sources.
The separate layer is composed of JSON as protocol, a set of signals
and slots for interface. The implementation forwards data to current
QSettings for storybook and nim controllers for the app.

Updates #13313, #13312
2024-03-27 20:26:15 +01:00
Stefan a09defbef7 feat(wallet) skip picking flags in the random emoji picker function
Also add a test to validate the knowledge of the emoji picker function
about flags position

Closes #13715
2024-03-20 11:56:03 +01:00
Valentina1133 a48b2532ae
chore: object names for activity center elements added (#14029) 2024-03-20 17:22:57 +07:00
Lukáš Tinkl 2d729668ba fix: Separate single/grouped sort position
- keep track of the grouped item kind (community vs. collection)
- when the "arrange by" mode is active, use it for sorting the tokens in
the main wallet view
- change the behavior to always sort by the number of tokens inside the
group when entering the grouped (arrange by...) mode + add tests
- expose the `backgroundColor` for token groups
- remove unused code dealing with handling of community IDs

Fixes #13276
2024-03-19 14:18:55 +01:00
Michał Iskierko 9ed38bddb7
13291 hide channels (#13876)
* feat(@desktop/communities): Hide channels if the user is not permitted to view and hideIfPermissionsNotMet is set

Extend chats model with channel permissions info and hideIfPermissionsNotMet.
Visibility of chat item is based on: member roles, channel permissions, hideIfPermissionsNotMet.
If all channels from category are hidden, category item is also hidden.
If all chats in community are hidden, infomration label is displayed.

Issue #13291

* chore(@desktop): Upgrade status-go

Issue #13291
2024-03-18 13:33:07 -04:00
Lukáš Tinkl 2487963323 fix(StatusMenuItem): use the correct checkmark icon
- has to be the tiny version
- cleanup `assetSettings` assignment, it was redefining (shadowing) the
original properties, therefore creating new ones

Fixes #13941
2024-03-14 18:00:27 +01:00
Lukáš Tinkl d25cefcc2e fix(StatusBaseButton): adapt to handle actions when it is disabled
- add an `interactive` property as a drop-in replacement for `enabled`;
the UI looks "disabled" but can still display e.g. a tooltip or some
loading animation
- add the ability to display a tooltip
- remove DisabledTooltipButton and replace it with a regular
`Status(Flat)Button`, using the above new features
- update storybook with the new `interactive` switch

Fixes #10185
2024-03-14 18:00:27 +01:00
Igor Sirotin ad7f39f91c
fix: category item style (#13975) 2024-03-14 15:46:28 +00:00
Alex Jbanca 3b17134451 fix(StatusTextMessage): Allow user to copy parts of a message containing URLs
The root cause of this issue is that the `TextEdit.text` was replaced on hover to add specific styling for the hovered state. As a result the selection was dropped.

To fix this I've moved the highlighted hyperlink style to the StatusSyntaxHighlighter.
2024-03-14 12:21:52 +02:00
Khushboo Mehta 2f0343f0e9 feat(@desktop/wallet): Main Collectible Detail View enhancements
fixes #13804
2024-03-13 11:46:49 +01:00
Alex Jbanca 4ef30a91a3 feat(ProfileShowcase): Create dirty state component for the web tab and integrate the UI 2024-03-13 10:02:30 +02:00
Lukáš Tinkl 666ba77051 fix[onboarding] Broken links to "Terms" and "Privacy"
- display the locally bundled privacy/terms of use texts in a popup
- add support for reading text files with both relative and absolute
files or URLs, useful for having the same file path in both storybook
and the app

Fixes #13877
2024-03-11 20:30:59 +01:00
Alex Jbanca e7a1f5e831 feat(ProfileShowcase): Sync dirty state with the source model
Whenever the source model becomes identical to the showcase dirty model, the dirty flag is removed
2024-03-11 20:58:55 +02:00
Alex Jbanca 204bfb30b6 feat(WritableProxyModel): Add syncedRemoval flag to allow source to remove edited rows 2024-03-11 20:58:55 +02:00
Dario Gabriel Lipicar af84d788ff feat(@desktop/wallet): display balance in collectibles view
Closes #12940
2024-03-11 09:10:01 -03:00
Andrey Bocharnikov 058b08d3c9
fix(ProfileShowcase): Fix blinking when hovering over an address (#13865)
#13681
2024-03-08 19:21:08 +04:00
Alex Jbanca 07ac4eb8a6 fix(StatusQ): Don't emit layoutChanged on source model reset in MovableModel
+ Update tests
2024-03-07 22:07:49 +02:00
Valentina1133 3e1a4f55cb
chore: object name added for status switch (#13871) 2024-03-07 15:05:39 +07:00
Alex Jbanca 4d6082e806 feat(ProfileShowcase): Updates based on comments 2024-03-06 14:49:54 +02:00
Alex Jbanca c916bfa84e feat(ProfileShowcase): Fixing MovableModel signal handling after the sync state changes
1. Fixing duplicate connections on source model
2. Update connections and indexes when the internal data gets reset
2024-03-06 14:49:54 +02:00
Alex Jbanca 07484cb15c feat(ProfileShowcase): Simplify ProfileShowcasePanel API and connect to the new models
1. Fix `EmptyShapeRectangleFooterListView` visibility and positioning after ListView items are animated out of view
2. Update `ShowcaseDelegate` to remove modelObject dependency. The UI properties needed will be received from parent
3. Update `ProfileShowcasePanel` to remove the previous logic involving rows move and visibility change. There is no need now for two specialised delegate components (one for in showcase and one for hidden). The delegate is still configured outside of this component because the model rolenames need to be mapped to the delegate properties. The common delegate logic is implemented in the `ProfileShowcasePanel` and only the model mapping is needed from parent component.
3. Update all `ProfileShowcase*Panel` to impement the new API
4. Remove all `*ShowcaseDelegate`. The delegate is simple enough to be configured at once in the Panel
2024-03-06 14:49:54 +02:00
Alex Jbanca 49aa747fdf feat(ChannelPermissions): Show confirmation dialog before closing the channel edit popup 2024-03-06 14:40:23 +02:00
Lukáš Tinkl b623c8fb2b fix(chat input): should be disabled if user is not able to post
- extend `isUserAllowedToSendMessage` to also cover
`Constants.chatType.communityChat`
- let `admin` always satisfy the permissions
- hide the add emoji/reaction button instead of disabling it when the
permissions are not met
- adjust the error msg to better reflect the reality (tokens vs.
permissions)

Fixes #13777
2024-03-05 18:13:29 +01:00
Noelia babedf4272 feat(ProfileShowcase) Web tab visual updates according to new design
- Updated `AddSocialLinkModal` according to new design.
- Modified main social links items according to new design.
- Updated edit modal according to new design.
- Some text validation updates.

Closes #13511
2024-03-04 10:54:12 +01:00
Valentina1133 919cd8a7a7
chore: object name for add item button added (#13824) 2024-03-04 16:48:21 +07: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
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
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
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
Khushboo Mehta 085bf762a5 feat(@desktop/wallet): Update token details view
closes #12373
2024-02-23 13:03:28 +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
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
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
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 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 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
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
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 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
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
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 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
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
Michał Cieślak 3859c5c76e chore(StatusQ/MovableModel): fix index creation in data() method 2024-02-07 10:33:45 +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
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
Alex Jbanca a55dcf299e performance: Improve the wallet loading time
+ small bug fixes
2024-02-01 16:46:40 +02: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 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
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
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 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