When moving our architecture to using GAction, the delete
action was forgotten. This meant that while "Delete Message"
showed in the UI, the button did nothing.
Fixes#515
This guarantees that the (de)serialized structs which
contain URLs in any of their fields will always have
a valid URL string and not just a generic one.
When a user wants to add a phone number or email addess, a verifikation token is sent to them and a dialog is opened to enter it.
Before the commit, after closing the verification dialog, the settings dialog was not refreshed.
Therefore the added <phone number / email adress> would stay in the input
with a spinner spinning next to it until another action was taken.
With this commit, closing the verification dialog refreshes the settings window.
Same situation for email token request verification and phone token request verification:
Before, the user was always shown the error message "Couldn’t add the <email address / phone number.>",
also when the error was due to the fact that the <email / phone> was already in use.
With this commit, that bug is fixed: when the <email / phone> is already in use,
the user is shown the error message "<Email / Phone number> is already in use"
Before, "Medium" was renamed to "lowercase".
With this commit, "Email" and "MsIsdn" are renamed to "email" and "msisdn", respectively.
This commit fixes the bug due to which account settings wouldn't load.
Before, when an error occurred trying to load account settings,
the user would see a spinner until pressing the "go back" button manually.
With this commit, when an error occurs trying to load account settings,
an error dialog opens. Furthermore the "go back" button is activated automatically.
In particular, when the user closes the error dialog,
they find themselves back in the state they came from.
Before, a typing event was sent to the server on every single key release.
A lot of sent typing events were redundant due to the timeout functionality
implemented in the matrix propocol for typing events.
With this commit, this overload of events sent to the server gets avoided by
only sending a new typing event, if the last one was sent more than three seconds ago.
The current Homeserver URL parsing logic unconditionally removes the URL
schema if it's either "http://" or "https://", then prepends
the "https://" schema back immediately after.
While this correctly adds a "https://" schema for an URL without a
schema, it disallows connections to a non-TLS host. Synapse, rightfully
so, disallows non-TLS connections. Connecting to such a host might be
desirable anyway to connect to a logging/debugging reverse proxy such as
mitmproxy or to connect to Pantalaimon, a reverse proxy that enables
client-transparent E2E encryption.
Closes: https://gitlab.gnome.org/GNOME/fractal/issues/520
For new rooms we're not receiving power_levels event, so we need to
assume that the user can write.
This is a quick fix to allow edit new rooms, but it could be better to
request power_levels to the backend when we've no this information so we
can disable the text entry if the user has no permissions to do that,
but without the information we should assume that the user is able to
write because it's the usual case.
Fix https://gitlab.gnome.org/GNOME/fractal/issues/539
Both functions have no mutable variables now and take a ContentType instead
of a bool and the width and height values to indicate whether the media is
a thumbnail (and its size) or the original file.
We were ignoring channel send errors and it could be interesting to have
a log about this not sent messages.
This patch adds a new trait to extend the Result<(), SendError<T>> type
and provide a new method called expect_log, that doesn't panic on error
but logs the message in that case.