Annotating functions explicitly with `{.raises: [Exception].}` prevents
Nim from performing compile-time exception checking and is almost never
desired - it does have a tendency to spread through the codebase
however, similar to sub-par const correctness in C++.
The reason these annotations might have seemed necessary can be traced
to missing exception specifiers in the go imports bumped in this PR.
See
https://status-im.github.io/nim-style-guide/interop.c.html#functions-and-types
for background on Nim-go interop and
https://status-im.github.io/nim-style-guide/errors.exceptions.html for
more information on how exception tracking can be leveraged to find
missing error handling at compile-time.
This change has no runtime effect - it merely makes compile-time error
messages more informative or avoids them entirely.
* prevent animation if loading not started
* prevent scrolling to verification/contact request messages
* fix ac click behaviour
* remove CURSOR_VALUE_IGNORE. cleanup logs
- 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
Switch the activity filter to use the new session-based API that
deliver incremental updates to the current filter.
Drop the old quick win listening for individual change events and
use the unified API instead.
The new transactions (on-top) trigger the old "new transactions" buttons
that trigger reset of the current filter and the top new transacitons
highlighted.
Highlight mixed changes (not new on top) as they come in
Highlight new changes on filter reset
Closes#12120
Fixes#13779
The problem was that the permission update some times takes time to get propagated and get back, or even the control node is offline, so the TM would not be able to post, because the backend would detect that there is a permission and that we don't have the key for it.
The solution is to block the UI when a permission update is pending, since we can't post correctly while it is not processed by he control node.
If we don't we regularly get weird Git failures on Windows like:
```
fatal: Unable to find current revision in submodule path 'vendor/qzxing/tests/resources'
fatal: Failed to recurse into submodule path 'vendor/qzxing'
```
Or
```
stderr: fatal: Unable to create '.../.git/index.lock': File exists.
```
Which are very annoying and require manual workspace purge by infra team.
Many of you will get annoyed with resulting slower checkouts
on subsequent builds, but that's a price I'm willing to pay.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
* 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>
- 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
- 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
- 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
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+
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
when ENS name is resolved. Resolve ENS name before used in SendModal.
UI tweaks:
- red stroke on address input in case of error
- smaller tick for validation address input
- added validation spinner to address input, removed from the button
- handled tab key to move focus between inputs
- 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