Turns out we've been accidentally resetting the channel's `position`
property to `0` by not sending it over to status-lib's underlying
`editCommunityChat` API.
This fixes it by using a newer version of status-lib which supports
the `position` paramter in `editCommunityChat` and then sending that
value along from the edit channel popup.
Fixes#3672
This refactors the timeline module to follow the stores/views/panel/popups
architecture. It extracts all usages of *Model context variables with
store instance equivalents and replaces API calls on such model instances
with store proxy APIs.
Closes#3713
This was originally reported in https://github.com/status-im/StatusQ/issues/427, however it turns out
that the underlying component already handles this case correctly.
The reason the channel name is not vertically centered inside Status Desktop,
is because the returned value of `XSS.filterXss()` for the `subTitle` is never an empty string.
Trimming the return value fixes this.
Avoid to reveal which alias own which settings. The only settings
pre-login available is the storeToKeychain
Ideally we should also encrypt the profile settings
This was a reference error as there's no `errors` object on `StatusValidator`.
When accessing errors exposed by `StatusInput` we need to dot into the component
reference.
Position view at chosen message when coming
from either search or notifications was not
working properly, especially when coming from
another channel (eg from desktop to test).
Added timer to delay positioning action until
the messages model is almost fully loaded so
that the view knows all indexes
Depends on #3562Closes#3592, #3683
Introduced Style.svg() Style.png() Style.emoji() and
Style.icon() in Style.qml. Those should be used to
set the source in Images instead of using relative
paths. Usage:
Image {
source: Style.svg("check)
....
Also moved all Singletons inside a new "utils"
folder and made it a QML module, to use
import utils 1.0 instead of relative paths
Closes#3678
Added animation to highlight selected message
from search popup. Currenly when a message is clicked
from the search results, the user is navigated to
that message but it's not clear where is the
message in the screen
Closes#3562
Moved the statusChatInput to the repeater in stackview so that each conversation has its own separate textInput area which maintains its own state
fixes#1351
formattedPlainTextFilter was not reset when suggestion
box was closed causing the insertMention function to be
called again even thought there was no mention in the
chat input
Closes#3535
Fixes#3606.
The “retry” link for failed messages was not aligned correctly in the light theme. This was due to setting the `verticalCenter` as well as `anchors.top` in some situations. `verticalCenter` has been removed in favour of setting the top and bottom anchors.
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