* refactor(contacts): refactor 5 contact models into one and filter in QML
Fixes#16549
Refactors the 5 types of contact models (all, mutuals, banned, received and sent) into only the `allContacts` and use an Adaptor on the QML side to filter into the needed models.
This cleans the Nim side a lot and makes applying updates to the contacts' model way simpler.
* chore(contacts): remove useless and duplicated contact properties
OptionalName and isSyncing were never used.
DefaultDisplayName was not really used and is actually a duplication of preferredDisplayName, so I replaced the limited usages of DefaultDisplayName by preferredDisplayName
* refactor(contacts): improve updates by not removing and re-adding
We used to update contact items by removing them from the models and re-adding them. This is highly inefficient.
Instead, the proper way is to update only the values that changed.
* user_model: onItemChanged signal removed
* user_model: sorting by online status no longer needed on nim side
* Chat/RootStore: contactsModel property removed
* ContactsStore encapsulation improved
* ContactsStore: contacts model adaptor moved outside store
---------
Co-authored-by: Michał Cieślak <michalcieslak@status.im>
- 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
- 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
* fix(wallet): Renamed KeyPair to key pair throughout the entire app
replaced the keypair occurances with key pair in the entire qml ui files
fixes: #13612
---------
Co-authored-by: belalshehab <belal@status.im>
Co-authored-by: Valentina Novgorodtceva <valentina@status.im>
* chore: switch wakuv2 fleet to waku
See status-im/infra-nim-waku#91 for details
Mostly done automatically. Some parts manually.
* chode: drop eth.staging fleet
Signed-off-by: Jakub Sokołowski <jakub@status.im>
---------
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Co-authored-by: Jakub Sokołowski <jakub@status.im>
- hide the "Current password" label when creating a new password
- fix margins inside the keycard popup
- some minor UI fixups according to Figma
Fixes: #14214Fixes: #14177
- 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
- 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#13709Fixes#13745Fixes#13747
- 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
- 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
Show Qr popup is partially refactored because of the two things:
- to meet new UI requirements (introduced in the new saved addresses design)
- to make usage of that popup more generic, that it can be easily used from different places
- It creates new component `SupportedTokensListsPanel`.
- It updates tokens list tab content with the expected one.
- It creates new component `TokenListPopup`.
- It adds support to new created components in `storybook`.
Closes#12374