Age | Commit message (Collapse) | Author |
|
Port away from implicit 'this' captures in lambdas
|
|
Port away from deprecated upfront percent encoding
|
|
Deprecated with C++20
|
|
|
|
Makes the Room::P::toJson() code more readable.
|
|
|
|
It didn't like using QT_IGNORE_DEPRECATIONS inside a statement.
|
|
|
|
|
|
|
|
A handy macro that introduces an enumerator with a respective
Q_DECL_DEPRECATED_X recommending the substitution.
|
|
These usually don't affect the room outlooks in the room list in any
way; so can be merged into OtherChange instead.
Also: OtherChanges synonym has been added, implying that there might
be more than one change behind a single "Other" flag.
|
|
|
|
DISABLE_MOVE is no more; instead, the library provides Q_DISABLE_MOVE
(and also Q_DISABLE_COPY_MOVE while at it) for Qt pre-5.13 that don't
have it yet. Same for QT_IGNORE_DEPRECATIONS - it only arrived in 5.15
but all the building pieces existed prior so libQuotient has it
regardless of the Qt version used for building.
|
|
It is useful to be able to get all of the state events that have
occured in a room, instead of needing to use Room::getCurrentState,
which filters based on the event type and state key.
|
|
Keep the reply when replacing an event
|
|
|
|
Checking whether any login flows are available is a good enough measure
of the homeserver actual workability. Closes #515.
|
|
|
|
After switching over to get_filename_component(PROGRAM) paths with
~ (home directory) were no more resolved. They are again.
|
|
add_feature_info() treats unset variable as "no change" rather than
"false", which may lead to a confusing build configuration report when
GTAD_PATH and/or MATRIX_DOC_PATH and/or CLANG_FORMAT have been there
before but were removed since.
|
|
See also https://bugreports.qt.io/browse/QTBUG-82295.
|
|
Just for completeness, not really needed anywhere yet.
|
|
Closes #514.
|
|
|
|
This fixes the `q->readMarker() != historyEdge()` assertion failure
occuring in recalculateUnreadCount() when new events from sync arrive
to a room with no read marker and all history loaded.
|
|
|
|
|
|
|
|
...such as stuck login or failure to join the room. Closes #496.
|
|
|
|
- BaseJob::prepareError() slightly updated to get the current status
instead of checking the returned value outside in gotReply()
- BaseJob::gotReply() no more reports on 429 Too Many Requests twice
(the first time with dubious "Too Many Requests: Unknown error")
|
|
|
|
|
|
|
|
This is meant to spare clients from having to percent-encode
room aliases, v3 event ids etc. that happen to hit the endpoint path.
It is unfair to expect clients to do that since they are not supposed
to care about the shape of CS API, which parameter should be encoded
in which way. The trick (together with the slightly updated GTAD
configuration) is to percent-encode parts that happen to be QStrings
and not `const char[]`'s while passing all constant parts as plain
C character literals. This also allows to make it more certain that
the path is correctly encoded by passing and storing QByteArray's
wherever the path is already encoded, and only use QStrings (next to
const char arrays) before that.
Since the change alters the API contract (even if that contract was
crappy), some crude detection of percent-encoded stuff on input is
inserted; if input is already percent-encoded, a warning is put to
the logs, alerting developers about the change.
|
|
|
|
Qt 6 has Qt::SingleShotConnection; connectSingleShot remains just for
the sake of compatibility across Qt 5 and Qt 6. If you target Qt 6 only,
feel free to use the Qt facility directly.
|
|
libQuotient 0.7 really requires Qt 5.12, nothing earlier will work.
|
|
This has always been merely a workaround to enable
connectUntil/connectSingleShot and was never intended to be used
elsewhere, let alone in clients.
|
|
|
|
|
|
|
|
It was too permissive on characters before the identifier and also
allowed the domain name to start on dash, which should not occur.
Closes #512.
|
|
|
|
Fixes #510.
|
|
|
|
|
|
|
|
Add room types to RoomCreateEvent
|