Commit Graph

1140 Commits

Author SHA1 Message Date
Noelia d35c0bd3d1 feat(ProfileShowcase): Align UI save flow according to backend response
- Added loading state in dirty toast message.
- Added store connections in `MyProfileView` and save loading logic.
- Added toasts notifications.

Closes #13950

a
2024-03-20 09:31:34 +01:00
Noelia 1d15398ea7 fix(ProfileSectionStore): Only instanciated once
- Removed `ProfileSectionStore` instance from `CurrenciesStore`. Only needed some certain accesses to the `profileSectionModule`.
- Added strict type in `CommunitiesView`.
2024-03-20 09:31:34 +01:00
Stefan 0958860bc9 fix(qml): fix etherscan links for all networks
Also refactor code for reusability and readability.

Closes: #13986
2024-03-19 15:14:40 +01:00
Alex Jbanca 3b57ece338 fix(ProfileShowcase|): Change stroke position from the outside to inside 2024-03-19 15:07:46 +02:00
Stefan 1b77695e01 feat(settings) add notification to biometrics enable
Closes #13896
2024-03-19 13:20:05 +01:00
Stefan db6e24e4c3 fix(settings) fix toggle button for change password screen
Updates #13898
2024-03-19 13:20:05 +01:00
Stefan 69312aed29 feat(settings) blur background when re-encrypting due to password change
Closes: #13992
2024-03-19 13:18:56 +01:00
Lukáš Tinkl 4b36054d6a fix(WalletView): apply to wallet doesn't apply the order
- we _always_ want to save the changes, it's the toasts that we don't
want to see when looking at the Advanced tab

Fixes #14016
2024-03-19 10:35:18 +01:00
Stefan 79fa3795ca fix(settings) fix popup spacing for change password modal
The extra space was not needed given that modal has a padding of 16
already

Closes: #13894
2024-03-15 17:56:00 +01:00
Stefan 086180b47a chore(settings) align password screen with design
Changes required:

- Fixed text colors
- Fixed text expressions
- Added dividers
- Added labels

Closes #13893
2024-03-15 17:52:59 +01:00
MishkaRogachev b37f0f0fd8 feat: emit signals on saving profile identity 2024-03-15 10:22:55 +01:00
MishkaRogachev 8a5164db68 feat: emit signals on saving profile showcase preferences
Close #13968
2024-03-15 10:22:55 +01:00
Alex Jbanca 3a3c3204fa
fix(ProfileShowcase): Add live preview support in the profile view (#13972)
* fix(ProfileShowcase): Add live preview support in the profile view

* Update ui/imports/shared/views/profile/ProfileShowcaseView.qml

Co-authored-by: Lukáš Tinkl <lukast@status.im>

---------

Co-authored-by: Lukáš Tinkl <lukast@status.im>
2024-03-14 19:31:38 +02:00
Lukáš Tinkl e5567d06f4 fix(Profile showcase): Update showcase visibility button UI
- correct width and radius
- correct padding
- remove border
- use a regular `StatusButton` instead of `DisabledTooltipButton` +
`StatusRoundButton`
- add the missing dropdown indicator

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
Alex Jbanca 24d6c6d273 feat(profileShowcase): Sync collectibles context menu with account visibility 2024-03-13 17:51:23 +02:00
Noelia 66c51ed777 feat(ProfileShowcase): Add network prefixes and filter watch only accounts
- Added network prefixes in profile showcase accounts delegate and included them in the searcher.
- Added filter to just display own accounts in profile showcase accounts tab.

Closes #13899
2024-03-13 14:37:03 +01:00
Mikhail Rogachev 611d70a3b2
feat: Save profile identity in one json (#13937) 2024-03-13 10:46:40 +01:00
Alex Jbanca 7f78c03e6a feat(ProfileShowcase): Remove unnecessary roles renamings from profile showcase models 2024-03-13 10:02:30 +02:00
Mikhail Rogachev b77d6ab76f fix: Switch profile showcase to the right models (#13924) 2024-03-13 10:02:30 +02: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
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
Lukáš Tinkl 96c7795153 fix(Settings): simplify the handling of the leftMargin
- reuse the existing `Constants.settingsSection.leftMargin` without the
required property
2024-03-11 12:44:16 +01:00
Anthony Laibe 115610fcf6 feat(@wallet): unknown token 2024-03-11 11:29:32 +01:00
Mikhail Rogachev 74dfd181c3
feat: Add new simplified model for profile showcase preferences (#13708)
* feat: Add new simplified model for profile showcase preferences

Close #13688

* feat: Add new api for saving profile showcase preferences

* feat(ProfileShowase): Save action with the new backend

- Created JSON file according to new backend structure when saving.
- Updated `dirty state` to sync writable and movable models when position is changed to have a better internal models sync.
- Reenabled identity fields save.

Closes #13799

* feat(ProfileShowcase): Showcase limit values integration with backend

Updated showcase limits with values coming from backend.

---------

Co-authored-by: Noelia <noelia@status.im>
2024-03-08 21:11:48 +01:00
Lukáš Tinkl 29c61d8135 fix: Hide fleet selection from settings
- introduce `ENABLE_FLEET_SELECTION` desktop config entry to control the
Fleet selection UI availability
- UI can be enabled with envvar `STATUS_RUNTIME_ENABLE_FLEET_SELECTION=1`

Fixes #13848
2024-03-08 13:29:28 +01:00
Noelia a9b5d8fcf7 feat(ProfileShowcase): Add search input in all tabs
- Added searcher input in header.
- Added 2 filter proxies for hidden and inshowcase models depending on search text.
- Added filter expression per showcase tab (accounts, collectibles and communities).
- Added specific placeholder when search empty.
- Added specific logic when search active.
- Added search validation.

Closes #13508
2024-03-08 10:43:07 +01:00
Noelia b92974ffff feat(ProfileShowcase): Display counter in `In showcase` section header and elements limit
- Added counter in showcase header.
- Added placeholder when limit reached and section expanded.
- Added placeholder when limit reached and section collapsed.
- Added green animation when section collapsed and element added.
- Disabled showcase delegate context menu when limit reached.
- Dynamic tooltip offset center added.
- Added model changes tracker to track the in showcase count.

Closes #13507
2024-03-07 16:10:46 +01:00
Alex Jbanca 4d6082e806 feat(ProfileShowcase): Updates based on comments 2024-03-06 14:49:54 +02:00
Alex Jbanca e304d9b76b feat(ProfileShowcase): Implement workaround for the inline components not working
This commit will fix the linux and windows builds by removing the usage of public inline components

TODO: revert this commit once all platforms are migrated to qt 5.15.8+
2024-03-06 14:49:54 +02:00
Alex Jbanca 4a4a5d5c4b feat(ProfileShowcase): Adding the MovableModel to the ProfileShowcaseModels to intercept the SFPM events
This is needed for the DND.
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 fbcd90ef3b feat(ProfileShowcase): Update ProfileShowcaseModels to support nim models
1. Adapt and unify model rolenames
2. Add support for dirty state
3. Add reset
2024-03-06 14:49:54 +02:00
Alex Jbanca 5a3bca9a51 feat(ProfileShowcase): Remove assets tab from settings and profile dialog
The assets tab will be implemented later on. It's not needed for this milestone
2024-03-06 14:49:54 +02:00
Noelia 954b25a54c feat(SettingsContentBase): Dirty bubble horizontally centered correctly
Manual calculation of bubble postion to be correctly centered due to the usage of `SettingsContentBase` as a centralPanel component that already has a default left margin value.
2024-03-05 17:54:10 +01:00
Noelia d12641264a feat(SettingsContentBase): Save changes bubble overlaid by default
- Added `autoscrollWhenDirty` property to be able to configure the settings content base as autoscroll mode when dirty toast appears. Otherwise, the toast will be shown overlaid on top of the view content.
- Updated profile view to setup autoscroll on `Identity` tab. Rest of app cases are setup with the overlay mode.

Closes #13517
2024-03-05 17:54:10 +01:00
Anastasiya Semenkevich f3bf194187 chore: add object name for settings left panel 2024-03-05 10:41:39 +03: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
Sale Djenic e44774dd88 fix(wallet): move to keycard option should not be available for private key imported key pairs
Closes #13796
2024-03-04 10:26:23 +01:00
Sale Djenic 65c553b9e8 fix(wallet): warning that key pair requires import disappears after adding new acc on paired device
Fixes: #13795
2024-03-04 10:26:08 +01:00
Lukáš Tinkl fda1d37c5b feat(Profile flow): ID verification flows (incoming/outgoing)
- Send/request ID verification
- Reply to incoming ID request
- Review ID verification reply
- adjust SB and add shortcuts to trigger the various states of the ID
verification flows

Fixes #13709
Fixes #13745
Fixes #13747
2024-03-04 09:56:30 +01: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
Mikhail Rogachev 6ac2f92200
feat: add `markAsTrusted` endpoint (#13751)
Close #13716
2024-02-28 16:50:40 +03:00
Valentina Novgorodtceva 6de7032d65 chore: object name for build showcase button added and fixed small typo 2024-02-27 16:14:02 +03: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
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
Anthony Laibe aed61b68b1 feat(@wallet): sepolia default 2024-02-23 11:52:40 +01:00