Fixes: #3473.
Sometimes when blocking users and changes channels, blocked user messages would still appear.
This PR fixes the issue by toggling a `hide` property on messages from a contact when that contact is blocked or unblocked. Previously, the messages were only removed from the view when the contact was blocked, but when the view was reloaded, that state was not tracked correctly.
In case clicked channel:
- exists in a community -> the app will switch you to it
- doesn't exist in a community, but exists in the public chat list -> the app
will switch to `Chat` section and also to the appropriate channel there
- doesn't exist in a community and doesn't exist in the public chat list -> the app
will switch to `Chat` section and join new channel
Fixes: #3489
When StatusQ switched to using `DelegateModel` in `StatusChatList` to enable drag and drop,
we lost the API `itemAt` which was previously exposed via the `Repeater` that was aliased as
`chatListItems`.
StatusQ now exposes `statusChatListItems` additionally so we can still access `model.itemAt`
which is used in this commit.
The only reason this is done here though, is because we need to update the profile picture of
contacts when we get a contact changed signal. Ideally, we handle contact changes including the
profile picture entirely in the backend and have it then just rerender the screen (instead of
using a `Connection`).
Fixes#3328
Closes#3410.
Re-enables open membership communities, with necessary changes in the Inivitation Bubble for one-on-one chats.
fix: add/edit communities components not appearing
On add/edit community popup load, some components below the thumbnail image picker were not appearing until the app window was resized. Removing the height of the ScrollView fixed the issue (on mac).
NOTE: this may require windows and linux users to test.
Closes#3307.
WalletV2 view can be toggled between normal wallet view and the SavedAddresses view.
Users can load, add, edit, and delete saved addresses.
Favouriting a saved address is out of scope, as is sending to a saved addresses, drilling down in to a saved address, and supporting multiple networks.
Updates components that utilised the StatusMinLengthValidator component to support the changes made to StatusQ.
### Notes
1. Depends on status-go PR https://github.com/status-im/status-go/pull/2356
2. Depends on StatusQ PR https://github.com/status-im/StatusQ/pull/394.
# Conflicts:
# src/app/wallet/v2/view.nim
# ui/app/AppLayouts/WalletV2/WalletV2Layout.qml
Network ID is not being displayed when adding a custom network
* Also replaced ModalPopup with StatusModal and other design
related updates (eg top margins etc) in NewCustomNetworkModal.qml
Closes#3456
This feature works for MacOs only, for now.
On login, whether new or already created user may select between options:
"Store" - store password to the Keychain
"Not now" - don't store it now, but ask next time again
"Never" - don't store them ever and don't ask again
Selected preference may be changed later in:
`ProfileSettings > Privacy and security > Store pass to Keychain`
On the next app run, if `Store` was selected, a user will be asked to confirm
his identity using Touch Id in order to log in the app. If any error happens
he will be able to login using password.
Fixes: #2675
From now on we are able to access local settings (settings and global settings)
on the nim side, not only through the qml.
This change is required as part of the feature issue-2675.
The string stored in the translation had been doubled-up, so when a validation error occurred, the doubled-up string appeared.
The fix removes the currently in use translation.
* The userlist toggle made persistent between restarts
* Members is enabled by default for communities
* Public channels changed title to "last seen"
instead of "Members"
Closes#3502
Also changed icon from wallet to cancel, to indicate
that the feature is incomplete
Closes#3431
fix(desktop/wallet2) Updated wallet2 warning text
Also changed icon from wallet to cancel, to indicate
that the feature is incomplete
Closes#3431
update wallet v2 description
There was a breaking change introduced 8d32c1d933
which caused reference errors in various modals.
This commit fixes the modal to create and edit community channels
by ensuring we're accessing `contentItem` and also only setting
channel data when editing a channel.
Closes#3390
fixed to display online status only if is the current user and
if they have been active in the last 7 minutes. Respective color
is shown depending on if they are in "do not disturb" mode or they
have been active more than 5 minutes ago
Closes#3282
Avoid computation when it is not needed for the suggestion filter
This is quite visible when the member list contains 1000s of members.
It is the case when you load historical message (1 month)
This commit enables users to enter fully qualified ENS names manually
and marking them as mentions, which are then later being replaced with
pubkeys.
The changes do not prevent users from entering ENS names that don't exist.
There's also a fix that ensure prepended "@" signs are removed from the
items selected in the suggestions box.
Closes#3149
Removed all computation of suggestion from qml
Reuse user list in order to populate the suggestion box
As a side effect, the suggestion are not serialized from qml to
nim
Remove InputArea which seems not used anymore
fixes#3251
- Being able to react in timeline chat
- Once there is a reaction, being able to remove them or add new
- Height of the message taking in consideration if there is reaction or
not
Removed background color assignment as by default it is set to white if unassigned. This fixes the issue of strange grey background in dark mode with white components from websites with transparent background
fixes#3209
As requested by design popup search added for the left side, click on a search
field (above channels list).
Refers to the changes requested by the issue-2934
Fixes: #2934
Adapted the bookmark list to a grid view to accomodate items when the list gets long.
Max column size is 7 and in case screen cannot show 7 columns it will flow to the next row.
Also added ideinticon for a website with no icon
Fixed the issue of DApps launching on all new tabs.
fixes#2009
Added code so that in the backup seed phrase modal all actions can be performed with the enter key.
Also added logic for default focus on the confirm button in the ConfirmationDialog.
fixes#2359
App is responsive to the OS theme change event.
Now we're following system set theme when the app is started.
Corresponding part on the side on nimqml is added.
Corresponding part on the side on dotherside is added.
On the side of dother side we had kind of a memory leak, cause objects added to
the filter were not deleted ever. When the app is closing, it just removes
filters, but doesn't delete them.
I faced a logical issue, that we were sending qmlengine pointer to the
installEventFilter method, instead object which may or may not rely on the
qqmlengine instance, that is fixed also.
Fixes: #1725
The transfer ownership popup triggered by the backup community baner button
was behaving weirdly because the banner from where it originates lives inside
a loader that is deactivated once the popup was opened.
Moving the logic that deactivates the loader into the onClosed handler of the
popup solves this issue.
Thanks to @pinebit for getting to the bottom of this!
Fixes#2997
Counting mentions for community seems was not developed yet. That's added here in this commit, but
instead of using "mentionsCount" we introduced on the side of nim, I found that we're receiving
"unviewedMentionsCount", but only for new messages. I used it for this fix.
Counting mentions and requests per community added.
Fixes: #2972
Updated offset of the notification tooltip arrow based on if the members list is visible. The arrow should be in center when member list is visible else it should be right aligned as there is no place on the window
fixes#3102
Updated from PopupMenu to StatusPopMenu. Removed buttons not in design.
Also added left and right button functionalXity on memeber list
fixes#2956, #3162
Feature added. Firstly we check if the searched message is already displayed and if yes simply jump
to it, if not then we are loading new 20 messages in the past using cursor and check if the
searched message's id is among those received messages. We do that in a loop till we find the
message we are searching for.
Fixes: #3005
Searching messages by some term for a specific channel is added on the side of status-go and an
appropriate part on the side of nim is developed accordingly.
Fixes: #2912
Current code adapted to handle future changes on message search (like searching message in multiple
channels).
Memory leak which was happening in qml assigning (copying) MessageItem to qml variable messageItem
(where that qml variable messageItem was never deleted) is fixed.
Fixes: #2912
Searching messages by some term for a specific channel is added on the side of status-go and an
appropriate part on the side of nim is developed accordingly.
Fixes: #2912
Current code adapted to handle future changes on message search (like searching message in multiple
channels).
Memory leak which was happening in qml assigning (copying) MessageItem to qml variable messageItem
(where that qml variable messageItem was never deleted) is fixed.
Fixes: #2912
Click on "Notification settings" in activity center takes user to profile tab, but not to the
notification section there, but to the last selected section. That is fixed now. Also marking
selected section within profile section is fixed now.
Fixes: #3049
This broke during the modal refactoring because we're no longer relying
on `chatsModel.contextChannel`.
Passing the channel item to the popup ensures it's properly hydrated again.
Closes#3050
This also updates StatusQ as the underlying StatusListItem component wasn't able
to handle multi-line subtitles very well. Also it didn't support tertiaryTitle, which
is needed in this UI.
As described in #3015, when editing channels that belong to a category of a community,
after saving them, they'll get kicked out of the category.
This is because we haven't passed the category id along the API that performs the
save operation.
This commit ensures we have access to a category chats' `categoryId` and send it
over to `editCommunityChat` RPC API provided by status-go
Fixes#3015
There are a few issues with the popup's content when there are many channels in a community:
1. Channel items belonging to other categories would still take space in the list
1. Due to the longer list of channels, the delete button wouldn't be fully visible (scrolling down
helps here)
2. Scrolling down is hard because the `ListView` in use is `interactive`
3. Even when `interactive` is set to false, one would scroll the name input out of the viewport.
To solve these, this commit rearchitects the popup's content such that:
1. The name input is always static and in place
2. The scrollview starts with the channel list and ends with the channel list
3. The delete button is positioned below the scrollview
4. The scrollview has a max height of 300 so that the popup doesn't grow too big
5. Invisible channel items won't have a height anymore
The result is that the middle section of the popup becomes scrollable in case there's many
channel items, while both, the name input and the delete button stay in the viewport.
Fixes#3013
This was lost during the refactor to use StatusQ components because it wasn't
clear to me that community channel descriptions should be rendered there.
Fixes#2982
Fixes#2434. Modals that were affected by this issue were
- RegisterENSModal (for registeing an ens username)
- SetPubKeyModal (for changing the contact code of an already owned ens)
- StatusStickerPackPurchaseModal (for acquiring a sticker pack)
When right-clicking a community from the navbar and selecting "View community", Status Desktop
opens `CommunityMembersPopup` which looks like it was either never really finished or more of an
intermediate solution until a proper community profile popup was created.
That's why this commit replaces it with a `CommunityProfilePopup` instead.
In fact, this lead to changes in `CommunityProfilePopup` where the `activeCommunity` dependency
is entirely removed, which allows us to use this popup in various places given that it's hydrated
with proper data.
Because we're no longer relying on `activeCommunity` inside that popup, all of its children and
connected popups needed that same refactor as well, hence this PR introduces a few more changes.
Closes#2890
This replaces the modal popup with `StatusModal` in the `CreateCommunityPopup`
and also ensures that it adheres to the design.
There are still things to be refactored in here, primarily form control components.
Those will be tackled in future commits once they have been built in StatusQ
Closes#2882
There was a change in StatusQ that introduced dividers for modal footers
and headers, so we don't need to put them in the content manually anymore.
This commit removes the no longer needed ones.
Toast message is added when user access an existing community using community's private key. Toast
message with message that importing community is in progress is displayed while community is being
imported and once it is imported toast is closed and new one, which will be closed in 4 seconds,
with message that community is imported is displayed.
Fixes: #2467