Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-07-31 | Initial support for edited messages (receive only) | Kitsune Ral | |
2019-07-08 | Room: Set roomId and sender on pending events | Kitsune Ral | |
Also: refactoring to streamline state events submission. | |||
2019-07-06 | Merge branch 'master' into e2ee-enc-mng | Kitsune Ral | |
2019-07-06 | Be stricter on usage of stateKey | Kitsune Ral | |
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. | |||
2019-07-06 | Convenience: StateKeyKey, StateKeyKeyL, basicStateEventJson() | Kitsune Ral | |
2019-07-06 | Room::setLocalAliases: now actually working (with a caveat) | Kitsune Ral | |
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. | |||
2019-07-04 | Add full EncryptionEvent to room logic. Issue #95 | Alexey Andreyev | |
2019-07-03 | Room/Connection: make room aliases work properly | Kitsune Ral | |
Closes #301. | |||
2019-06-02 | lib/room.*: Spelling fixes in comments | Kitsune Ral | |
[ci skip] | |||
2019-05-04 | Room::allHistoryLoaded | Kitsune Ral | |
2019-04-06 | Room::processStateEvent: be more careful with signals handling at user renames | Kitsune Ral | |
2019-04-06 | Clean up on clang-tidy/clazy analysis | Kitsune Ral | |
2019-04-03 | Room::postFile: initiate uploading the file even before adding a pending event | Kitsune Ral | |
This is to make sure a pending event with file transfer already placed. | |||
2019-03-31 | Room: track invited users; polish the room naming algorithm | Kitsune Ral | |
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. | |||
2019-03-31 | Room::updateData(): recalculate room name only when state changes occur | Kitsune Ral | |
2019-03-31 | Room::refreshDisplayName() - for debugging purposes only | Kitsune Ral | |
Clients should not need to call this method explicitly. | |||
2019-03-30 | Room::processStateEvent, User: take the previous membership state from ↵ | Kitsune Ral | |
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. | |||
2019-03-30 | Room::processRedaction(): avoid accidental creation of entries in ↵ | Kitsune Ral | |
currentState; cleanup | |||
2019-03-26 | Room::switchVersion(): refuse to switch a version if a tombstone is already ↵ | Kitsune Ral | |
there Closes #306. | |||
2019-03-26 | Room::canSwitchVersions(): return false on tombstoned rooms | Kitsune Ral | |
A softer take on #306. | |||
2019-03-23 | Room::downloadFile(): Tighten URL validations | Kitsune Ral | |
Check the URL before passing over to Connection::downloadFile(), not only the file name. | |||
2019-03-14 | Fix read receipts and redactions on v3 rooms | Kitsune Ral | |
Previously slashes in eventIds (that come plenty in v3 due to base64 encoding) were not properly encoded - they are now. | |||
2019-03-13 | Room: make notificationCount, highlightCount Q_PROPERTYs | Kitsune Ral | |
Closes #299. Due to restrictions for the NOTIFY signal notificationCountChanged and highlightCountChanged no more carry Room* as a parameter, breaking back-compatibility. | |||
2019-03-10 | Room::checkVersion(): be tolerant to already upgraded rooms | Kitsune Ral | |
2019-02-26 | Room::avatarObject | Kitsune Ral | |
Closes #268. | |||
2019-02-26 | Room: avoid dangling pointers, even if not dereferenced | Kitsune Ral | |
Closes #288; fixes one more case similar to #286. Also: disconnect file transfer signals correctly in Room::postFile. | |||
2019-02-26 | Room::addNewMessageEvents: fix possible use of an invalid iterator | Kitsune Ral | |
Closes #286. | |||
2019-02-25 | Have a build-wide macro for compilers that don't handle init-lists right | Kitsune Ral | |
WORKAROUND_EXTENDED_INITIALIZER_LIST -> BROKEN_INITIALIZER_LISTS is available from util.h now. | |||
2019-02-25 | Room::postHtmlMessage: default message type to m.text | Kitsune Ral | |
postHtmlText becomes just a synonym for 2-arg postHtmlMessage (hopefully at least this doesn't confuse QML that is generally terrible at resolving overloads). | |||
2019-02-25 | makeRedacted: update the list of preserved parts | Kitsune Ral | |
Closes #256. | |||
2019-02-22 | Room::setAliases, Connection: roomByAlias, updateRoomAliases | Kitsune Ral | |
2019-02-19 | Room::downloadFile: construct the temporary filename more carefully | Kitsune Ral | |
Closes #279. | |||
2019-02-18 | Room: fix building with MSVC | Kitsune Ral | |
2019-02-17 | Room: add isUnstable(); unstableVersion() -> stabilityUpdated() | Kitsune Ral | |
2019-02-17 | Room: emit room, not id in upgraded(); add upgradeFailed() | Kitsune Ral | |
2019-02-16 | Room::version(): Fallback an empty version to "1" | Kitsune Ral | |
2019-02-16 | Room::canSwitchVersions() | Kitsune Ral | |
2019-02-16 | Room::checkVersion(): check power levels | Kitsune Ral | |
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. | |||
2019-02-16 | Room::switchVersion() | Kitsune Ral | |
Closes #236. | |||
2019-02-15 | Use Changes enum properly | Kitsune Ral | |
Don't use distinct items for each type of event; only for repeated/ combinable ones. | |||
2019-02-15 | Room::checkVersion() and Room::unstableVersion() | Kitsune Ral | |
Initial (sans power levels checking) implementation of the check that room should be upgraded. Closes most of #236. | |||
2019-02-15 | Room::upgraded() | Kitsune Ral | |
A signal emitted when the room receives a tombstone event from the server. | |||
2019-02-15 | Disallow sending events to rooms that have been upgraded | Kitsune Ral | |
This concludes the mandatory part of #235. | |||
2019-02-15 | Room: version(), predecessorId(), successorId() | Kitsune Ral | |
Use RoomCreateEvent and RoomTombstoneEvent in the backend, covering most of #235. | |||
2019-02-15 | Add a FIXME upon the recent failure under Valgrind | Kitsune Ral | |
2019-02-15 | Room::baseStateLoaded | Kitsune Ral | |
Mirroring Connection::loadedRoomState but for each single room (will be used as a NOTIFY signal for one-time-set events). | |||
2019-01-13 | Connection: fix/workaround glitches on joining/leaving | Kitsune Ral | |
Closes #273, in particular. | |||
2019-01-13 | Room::Room: initialise display name | Kitsune Ral | |
So that the room has at least some display name before any events come to it. | |||
2019-01-13 | Fix Omittables accidentally becoming non-omitted when compared with ↵ | Kitsune Ral | |
non-Omittable values | |||
2019-01-05 | Room: findPendingEvent; fixes for postFile() | Kitsune Ral | |