- the new C++ EmojiModel provides a simple wrapper around the existing
JSON to facilitate a faster access and to be able to search/filter in
QML using SFPM
- no more nested GridViews inside Repeaters
- get rid of emoji manipulation and search/filter using JavaScript
- included the C++ script to generate the emojiList.js
Additionally there is hook on ClipboardUtils added
to detect if copied string is a wallet address and call addressWasShown.
Earlier that call was done internally on nim side.
Closes: #16196
- mention the "Privacy Policy" document in the text explaining "Help us
improve Status", make a link to it and display it in a separate popup
- add a standalone header button to the settings page, doing the same
- extend storybook page with the "placement" param
Fixes#16157
WalletConnect cannot operate on shared cookies in between accounts. This commit will split the cookies and cache in different folders with the user public key as folder name.
- manage the lifetime of the Custom tab button dynamically; setting the
tab button to `visible: false` doesn't unfortunately remove it from the
tab bar
Fixes#16052
- 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
- display additional beta information as a tooltip
- don't overlap the Beta badge with the unread msg indicator
- some minor cleanups & fixes
Fixes#15795Fixes#15929
- partially reuse the already available Global/Popups methods to hide
assets (which also emit proper notifications); those are needed as
anotehr shared modal from Popups uses it too (may come from outside of
Wallet)
- some warnings cleanup in the controller
Fixes#15777
Add a new NetworkChecker QObject to StatusQ to be used in checking
internet connection status. This is used by the WebEngineLoader
to only allow loading of web pages when there is an active internet
to cover for a corner case on MacOS where the internet connection is
not reestablished if the WebEngineView was loaded without an active
internet connection.
Closes: #15598, #15806
Adding local setting: metrics_popup_seen
Small refactoring: showing popup from main.qml
Showing popup: 1. on welcome screen, 2. in Settings/Privacy page and 3. after login when the popup has not been shown yet
Issue #15628
Add new settings page for metrics management - Privacy and security
Add popup to enable/disable metrics on Onboarding and Privacy screens
Add MetricsStore in QML
Issue #15490
Reverts changes introduced by 6eeb91 the connector integration
that were loading the SDK asynchronously. Not sure why it isn't working
though.
Closes: #15694
fix#15179 that triggers connection request from client
- Setup the initial architecture for connecting Status-go and UI
screens
- Implement the request Connection popup for Accept or Rejecting
connection
Updating the SendModal to receive an accountAddress to preselect the account instead of the account item model
to squash: Fix account selection. by address
Fixes#15614
* feat(StatusQ): add StatusExperimentalTag component and page
* chore(beta): add beta tag to ENS
* chore(beta): add beta tag to Activity tab
* chore(beta): add beta tag to wallet settings
* chore(beta): add beta tag to Notification Center
Fixes#15526
Fixes the import popup showing the wrong state. That was because a param was removed from the function, but not from the call to that function, so `true` was passed in `invitationPending` when it shouldn't have.
I also added a call to `spectateCommunity` before the community intro popup so that the community spectated beforee sending the request
- remove old popup and related components/adaptors
- simplify the API of the Sign/Approve modals to take pre-formatted
amounts as strings
- correct login/auth icon
- SB: make it possible to open the new secondary modals
- SB: fix the `fetchSuggestedRoutes` response handling, pass around the
`uuid` and inject it to the mocked suggested routes
- adjust SB pages and tests
Fixes#15443
* fix(statusProfileNavBarTabButton): Fixed backgound color and ring for StatusNavBarTabButton that's displayed at left bottom of the main window.
Fixed signal typo in CommunityTokensStore.
Closes#15479.
* fix(CommunityTokenStore): fixed signal handler name on qml side.
* feat(icon): show a red dot when we have unread notifications
* feat(windows-icon): update windows icon to have a white border
Fixes#14788Fixes#14855
Adds a red dot on the tray icon if there is an unread message in an unmuted channel or in the activity center
- Component name changed to be more precise with what it represents.
- Removed `RootStore` dependency from `Helpers.qml`.
- Removed unnecessary method `lookupAddressObject` from `RootStore`.
- Updated `SendModal` property bindings related to recipient.
- Some activity controller interaction details moved to transactions store instead of being directly in `SendModal`.
- Type enum living in `RecipientSelectorPanel` is moved to `Helpers`. Since it doesn't depends on the specific component and it's used in other global places.
Part of #15208
... and remove particular code for send modal
- derive the footer from the standard `StatusDialogFooter` to reduce
code duplication (drop shadow, divider, margins, etc)
- rename the default button text
- expose the icon name and make it used the correct login/auth type icon
- some minor fixes and cleanups
Fixes#15212
Changes:
1. Align dialog with Figma design
2. Add new components for round image with badge and connection status tag
3. Add tests
4. Dapps service will now receive wallet `RootStore` as input and reuse existing models with account balance and other necessary info for account selection and chain selection
5. Minor updates in stores
6. Minor updates in WC toast messages to display app domain instead of app url
The new account selector expects a generic account model. It will display all the account data if provided, including preferred chains, balance or asset balance. Otherwise it will display only the available data.
The account selector can receive an initial selection based on account address and will provide the current selected address and the current selected model item.
- Unify the account selector between communities and wallet
- Update the account selector to work with addresses instead of model indexes
- Adapt all components using the account selector or the account selection
- Move/reuse qml components involved in the account selector UI
- Remove nim logic used to handle index based account selection.
- Adding storybook page
Trigger authentication with identity of the request
Track the authentication using the identity and allow only once
Add tests for the new functionality
Minor improvements around the code
Closes#15018
* 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>
- new panel created: `SwapInputPanel`
- some cleanups to the needed stores
- created a SB page demonstrating the use of 2 panels and the
`SwapExchangeButton`
- created QML tests
Fixes#14781
Things done here:
Integrate basic functionality for wallet connect in status-go
Update the list of dapps from the SDK
Retrieve the persistence dapps list from the backend as a fallback
if there is no connection and SDK can't be initialized
Provide a basic simple view of dapps in the wallet connect popup
Closes: #14557
Spent too much time figuring out the puzzle of
service->module->view->QML just to call a
status-go function.
Keeping this attempt for later while moving to a
simplified Controller/Provider approach. I will
come back to the abstraction when we add tests
to use it.
Updates: #14615
- Some NIM's models define additional (not part of the
QAbstractModelItem API) method rowData to allow access to model's data
on UI side
- The same job can be done relying fully on public QAbstractModelItem
API using ModelUtils utility. It gives full transparency if we need
nim's model or other like ListModel replacement in tests/storybook
- propagate `tokensStore` to unbreak the Browser's wallet menu
Fixes#14805
Implement the initial Pairing user workflow and disconnect option for
the first session.
Also
- rename pairing modal accordingly (`PairWCModal.qml`) to make room for the proper
`ConnectDAppModal.qml`
- basic tests for service helpers
- update storybook to reflect the new user workflows
Closes#14607
- introduce a new boolean property `checkingPermissionToJoinInProgress`
and use it to enable/disable the Join (share addresses) button when
joining a community
- we don't have to wait for both join and channels permissions check to
finish, as the former is much faster
- renamed `joinPermissionsCheckSuccessful` to
`joinPermissionsCheckCompletedWithoutErrors` to avoid confusion
Fixes#14680
Other changes
- start Wallet Connect SDK using web engine after wallet is ready
- source WC project ID from the constants in nim
- close list when opening the `ConnectDappModal`
- remove the old POC modal instantiation
- rename ConnectDappPopup to Modal for consistency
- move specific dapps related user settings to their place in the component
- add DAppsStore to be used for dapps abstraction
Updates #14556
- 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#14473Fixes#14299
- the `ownershipDeclined` method was being called on an unexisting store
and the signala params were not being passed around
- some related SB page additions/cleanups
fix(UserListPanel): hide the verification icon for yourself
fixes#13619
* split function for reseting trust status and verification+trust status
* rename function to removeTrustVerificationStatus
- 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
* Feat: New showcase models for a contact
* feat(ProfileShowcase): Integrate the new profile showcase backend
* fix(Storybook): Fix ProfileShowcaseModelsPage
* fix: fetch only requested profile showcase data
Support PR for https://github.com/status-im/status-go/pull/4982
* feat: Load and validate profile showcase for a contact in two steps
* fix: fetching criteria for profile showcase collectibles
* fix: review fixes
---------
Co-authored-by: Alex Jbanca <alexjb@status.im>
This commit:
- improves selection of addresses to reveal
- keeps the selection state for the popup lifetime
- brings higher granularity in terms of signed requests by keypairs
- meets new requirements from the latest related Figma
- merges edit shared addresses feature and request to join community features
into a single component, cause the flow is logically the same, with the only
difference that when editing revealed addresses we don't show the community
intro screen
Fixes at least points 3 and 4 from #13988
- Added loading state in dirty toast message.
- Added store connections in `MyProfileView` and save loading logic.
- Added toasts notifications.
Closes#13950
a
* prevent animation if loading not started
* prevent scrolling to verification/contact request messages
* fix ac click behaviour
* remove CURSOR_VALUE_IGNORE. cleanup logs
- 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
- 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
- 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
- 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