remove the dialog that asks users if they would like to open a link in
Status Desktop's browser and always open them in the user's external
browser
Fixes#8568
Fixes#8401
Threads in Nim are very bad and when the app closes, the thread doesn't close until it is done. That means that the 20 minute timer needs to finish before it can be closed.
This adds support for receiving copied images from the clipboard
and pasting it into the chat input.
After pasting, chat input will recognize the image and render a preview
similar to how it would do it when selecting images via the file dialog.
**Also important to note**:
At the time of this PR, it seems that desktop only supports sending
jpegs to status-go. I'm not sure if this was deliberately done this way
because the protocol says it supports jpg, png, webp and gif.
Because of this, pasting for example pngs will work, however
transparency will be lost (which is also most likely the cause of #8820)
This PR operates on that assumption. So while it adds support for
copy/pasting images, it does not address the lack of file type support.
Closes#3395
We were ignoring the `removedChats` in the messenger response and
therefore never processed deleted community chats in the client.
This commit adds `removedChats` to `handleCommunityUpdates()` and
ensures that the community channel's ID is used when emitting a signal
to the app.
This needs: https://github.com/status-im/status-go/pull/2973Closes#8000
Enabling the community archive protocol could fail when another app is
using the same port that is specified as torrent client port.
This would cause the app to crash.
With these changes we:
1. No longer crash the app but output an error in the logs
2. We popup a dialog telling the user that the specified pord is in use
Closes#7328
Adds a networks proxy model to be used with the original source model
for visualization and independent selection of isEnabled (as isActive) for a custom
purpose.
Use the proxy in the receive modal dialog for selection of networks
to be included in the address. This way the view follows the original
model but allows independent selection of networks.
Closes: #8180
Quick integration of fetching balance in the current chart view.
The proper implementation requires refactoring the QML views to separate
price chart, that depends only on the token and chain, from balance that
depends on token, chain and address.
Closes: #7662
Also
- added debugging test for `checkRecentHistory` from the attempt to
use transactions to restore balance
- small improvements that might clarify better the issues reported about
running under linux issues (didn't test them)
- fix issues found while reviewing the code.
- add support for custom infura token to be used in development
Updates #7662
Since tertiary action for the keycard popup module is always used to cancel/invalidate
the current flow, it's renamed now to cancel action (avoids confusion this way and it
seems more intuitive. It doesn't set any state. It should be defined if it's possible to cancel
the flow from the current state.
Previously we had only a single command which may be triggered for any state and
it was triggered before the state was set as an active state. Now we are able to set
custom command which may be triggered either before or after the state is set.
Changes:
- old `executeBackCommand` is now `executePreBackStateCommand`
- old `executePrimaryCommand` is now `executePrePrimaryStateCommand`
- old `executeSecondaryCommand` is now `executePreSecondaryStateCommand`
- old `executeTertiaryCommand` is now `executePreTertiaryStateCommand`
- added `executePostBackStateCommand` command
- added `executePostPrimaryStateCommand` command
- added `executePostSecondaryStateCommand` command
- added `executePostTertiaryStateCommand` command
Alright this was very painful to figure out.
Because desktop didn't know about the notification type for
`ContactVerification`, the signal processing for incoming contact
verifications would fail.
At the same time, the new message content type was missing a type
variant for content verification as well, which would cause the app to
crash at runtime for both, sender and receiver of verification requests.
Fixes#8205
Fixes#7791
Adds the retractContactRequest status-go api call. Calling it when removing a contact makes sure to send a signal to that other user so they can understand that we are no longer mutual contacts or don't have a request anymore
There's a bug in determining pending incoming contact requests where we
don't honor already rejected ones.
Simply checking if a contact in question `hasAddedUs` isn't enough
because that only tells us if the contact has sent us a request in the
past. It doesn't tell is whether the request was rejected already.
As a result, rejected contact requests keep popping up in the UI after
restarting the app. See #8156 for more information.
This commit introduces a `ContactRequestState` enum in Status Desktop,
similar to how it exists in status-go. Using this as `requestState`
on `ContactDto`, we can easily figure out what's the request state for
any given contact.
Notices that this only makes use of `ContactRequestState` to check for
whether a request was rejected.
We probably want to consider using this for all other states as well
(instead of relying on system tags).
Closes#8156
There was a requested design change where no longer wanted to have
checkboxes to decide which files will be included for a discord import,
but rather have an "X" button that enables users to remove items.
This commit implements this refactor.
In addition, it ensures that the already loaded discord categories and
channels that have been extracted from validation, are kept in sync as
well.
Meaning, if a user removes a file from the file list, the corresponding
channel will be removed as well.
If there's not channel in a given category, the category will be removed
as well.
Closes#8125#8126
If any but the `RpcException` was thrown while handling remote procedures responses
app crash happened. Fixed in this by accepting more general exception objects.
An issue with adding wallet account was happening only for a new user,
the reason for that was incorrectly set keystore path and keystore file couldn't
be found on the statusgo side because of that.
DB password for a Keycard user is now `publicKey` of encryption derivation.
kdf iterations for keycard users are set to 256000 so it's the same as we have
for regular users.
Fixes: #8066
The underlying API was mistakenly removed in status-go, then
reintroduced, but as `getLatestVerficiationRequestFrom`.
This commit fixes the RPC call.
Needs https://github.com/status-im/status-go/pull/2934
Messages are parsed to transform markdown to something that can be
rendered in a formatted way.
When this happens, the parsed text is applied to a message's `text`
property inside desktop.
There was no formatted message support for imported discord messages,
so we were relying purely on `discordMessage.content`.
However, now formatting support is pending in status-go here: https://github.com/status-im/status-go/pull/2933
This means, once this lands, we can simply rely on `messsageItem.text`.
I'm adding this guard here such that this will continue to work without
the feature in status-go, but once the feature in status-go lands,
desktop will automatically adapt.
Closes#8086
- fill the senderId just like other messages
- add some checks in Utils since the "publicKey" (ID) coming Discord
isn't in the format we'd normally expect
Closes#6678
Cleanups in deep links - removing not needed links handlers
Improve `open community` and `open channel` deep links - spectate community if not a member
Fix#7892
New community that appears through community update signal can also
be the community we are already members of, in that case we need
to emit SIGNAL_COMMUNITY_JOINED, so that it appears on the side bar.
Keycard settings view - UI - developed in a way that list of keycards is displayed
if there is at least one keycard set up. If the a keycard is locked or gets locked it
will be correctly marked in red. Selecting keycard from the list, its details may be
seen and additional flows may be run for it (so far only unlock flow is developed).
Fixes: #7025