Age | Commit message (Collapse) | Author |
|
|
|
* struct EventRelation; class ReactionEvent; Room::relatedEvents()
* Reaction events are processed in both history and sync batches
* Redacting a reaction removes it from the list of related events
* QMCTest::sendReaction()
|
|
|
|
|
|
|
|
Also: refactoring to streamline state events submission.
|
|
|
|
A few places in the library dealt with state events without any notion
of state_key inside events, including StateEvent[Base] and relevant
functions in Room. A number of workarounds have been made; e.g.,
Room::setMemberState() accepted userId as a separate parameter, ignoring
the state key inside the RoomMemberEvent already passed to it, and
Room::setLocalAliases() had a bug in the initial version where the
function still tried to pass aliases in an event with an empty state
key. This commit fixes this shortcoming: StateEventBase now gets
stateKey as one more parameter, Room::Private::getCurrentState()
respects stateKey and returns properly constructed stub events, and
Room::setMemberState() gives way to a more generic Room::setState() that
works uniformly with whatever state event you pass to it.
|
|
|
|
The caveat is that the library doesn't support .well-known yet, therefore will work not fully correctly (in particular - won't correctly set aliases) with servers that have serverpart different from the homeserver hostname used to connect to it.
|
|
|
|
Closes #301.
|
|
# Conflicts:
# CMakeLists.txt
# lib/avatar.cpp
# lib/connection.cpp
# lib/connection.h
# lib/connectiondata.cpp
# lib/csapi/account-data.cpp
# lib/csapi/account-data.h
# lib/csapi/capabilities.cpp
# lib/csapi/capabilities.h
# lib/csapi/content-repo.cpp
# lib/csapi/create_room.cpp
# lib/csapi/filter.cpp
# lib/csapi/joining.cpp
# lib/csapi/keys.cpp
# lib/csapi/list_joined_rooms.cpp
# lib/csapi/notifications.cpp
# lib/csapi/openid.cpp
# lib/csapi/presence.cpp
# lib/csapi/pushrules.cpp
# lib/csapi/registration.cpp
# lib/csapi/room_upgrades.cpp
# lib/csapi/room_upgrades.h
# lib/csapi/search.cpp
# lib/csapi/users.cpp
# lib/csapi/versions.cpp
# lib/csapi/whoami.cpp
# lib/csapi/{{base}}.cpp.mustache
# lib/events/accountdataevents.h
# lib/events/eventcontent.h
# lib/events/roommemberevent.cpp
# lib/events/stateevent.cpp
# lib/jobs/basejob.cpp
# lib/jobs/basejob.h
# lib/networkaccessmanager.cpp
# lib/networksettings.cpp
# lib/room.cpp
# lib/room.h
# lib/settings.cpp
# lib/settings.h
# lib/syncdata.cpp
# lib/user.cpp
# lib/user.h
# lib/util.cpp
|
|
[ci skip]
|
|
|
|
|
|
|
|
This is to make sure a pending event with file transfer already placed.
|
|
It's no more entirely along the spec lines but gives better results with
or without lazy-loading, across a wide range of cases. Closes #310.
|
|
|
|
Clients should not need to call this method explicitly.
|
|
oldStateEvent
memberJoinState() just happens to return the not-yet-updated state,
making its use around state changes very sensitive to moving things
around. The event's own prevContent is unsigned, therefore untrusted.
|
|
currentState; cleanup
|
|
there
Closes #306.
|
|
A softer take on #306.
|
|
Check the URL before passing over to Connection::downloadFile(), not only the file name.
|
|
Previously slashes in eventIds (that come plenty in v3 due to base64 encoding) were not properly encoded - they are now.
|
|
Closes #299. Due to restrictions for the NOTIFY signal notificationCountChanged and highlightCountChanged no more carry Room* as a parameter, breaking back-compatibility.
|
|
|
|
|
|
Closes #268.
|
|
Closes #288; fixes one more case similar to #286.
Also: disconnect file transfer signals correctly in Room::postFile.
|
|
Closes #286.
|
|
WORKAROUND_EXTENDED_INITIALIZER_LIST -> BROKEN_INITIALIZER_LISTS is
available from util.h now.
|
|
postHtmlText becomes just a synonym for 2-arg postHtmlMessage (hopefully
at least this doesn't confuse QML that is generally terrible at
resolving overloads).
|
|
Closes #256.
|
|
|
|
Closes #279.
|
|
|
|
|
|
|
|
|
|
|
|
This is a flimsy implementation without proper RoomPowerLevelEvent
definition, just to enable upgrades without causing noise to each and
every user of a room on an unstable version.
|
|
Closes #236.
|
|
Don't use distinct items for each type of event; only for repeated/
combinable ones.
|
|
Initial (sans power levels checking) implementation of the check that
room should be upgraded. Closes most of #236.
|
|
A signal emitted when the room receives a tombstone event from the
server.
|
|
This concludes the mandatory part of #235.
|
|
Use RoomCreateEvent and RoomTombstoneEvent in the backend, covering most
of #235.
|