aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-09-09util.h: move qAsConst out of QMatrixClientKitsune Ral
It's borrowed from Qt; namespacing basically forced client writers to put "using namespace QMatrixClient" before using qAsConst.
2018-09-09room.h: Unify doc-commentsKitsune Ral
Doxygen/Qt style is preferred from now on.
2018-09-09Avatar: don't paint on null images; optimise initial placeholder generationKitsune Ral
2018-09-09CleanupKitsune Ral
2018-09-02Switch tag order from strings to floats, as The Spec preachesKitsune Ral
The Spec wasn't entirely consistent on this until recently but floats actually are used in the wild, rather than strings.
2018-08-30Add signal for read receipt.Black Hat
2018-08-30Remove unused check.Black Hat
2018-08-30SyncJob: Add account_data to left roomsKitsune Ral
Closes #240.
2018-08-29Merge branch 'master' of https://github.com/QMatrixClient/libqmatrixclientJosip Delic
2018-08-29Use GetTurnServerJob for csapiJosip Delic
2018-08-29Use QMultiHash.Black Hat
2018-08-29Use local QHash.Black Hat
2018-08-25Set state eventJosip Delic
2018-08-25Update make it compileJosip Delic
2018-08-25Update to the recent CS API (watch out for breakage)Kitsune Ral
Breaking changes: * guest_can_join is no more a thing - neither in Connection::createRoom, nor even in CreateRoomJob (it turned out that Synapse didn't really process this flag); * LoginJob has changed its list of arguments. If you use Connection to do logins (and you really should), you shouldn't be affected. * GetPublicRoomsJob now returns PublicRoomsResponse instead of providing all the response parts within the job Watch other changes in the diff.
2018-08-25Update marius voip to new libqtmcJosip Delic
2018-08-20Room::displaynameChanged() should pass the old name tooKitsune Ral
Also: general cleanup.
2018-08-20Settings: get<>(); pass arguments more efficientlyKitsune Ral
Settings::get() and SettingsGroup::get() allow concise and efficient type-specific interface to value(); instead of wrapping your defaultValue into a QVariant, just pass it to get() instead of value().
2018-08-13Room::tagsChanged(): elaborate additions/removals along with the signalKitsune Ral
2018-08-13accountdataevents.h: Drop useless(?) static declarations for tag namesKitsune Ral
2018-08-13ConnectionsGuard: Fix clazy warningKitsune Ral
2018-08-12Revert JoinState::Any introductionKitsune Ral
Wasn't used in the code in the end.
2018-08-12Fix FTBFS (in a hacky way, needs a proper fix)Kitsune Ral
2018-08-12Fix building with older Qt versionsKitsune Ral
2018-08-11Reverse direct chats mapKitsune Ral
Speeds up lookup of user(s) in a direct chat room. Also: "The other one's" avatar is used to set the avatar of direct chats only, not any room with 2 participants.
2018-08-11Connection::doInDirectChat: don't remove invite/left rooms from direct chatsKitsune Ral
Deletion of Invite rooms was a clear bug; as for left rooms, it makes sense to keep them in direct chat maps because they may be re-joined later on.
2018-08-11JoinStates: add JoinState::Any to match any stateKitsune Ral
2018-08-11Connection: don't crash on invalid user ids coming from the serverKitsune Ral
Closes #230.
2018-08-11Connection::*DirectChat(): add overloads accepting User*Kitsune Ral
2018-08-11Connection: drop extraneous Q_INVOKABLEKitsune Ral
Slots are Q_INVOKABLE by definition.
2018-08-06Room: addedMessages passes timeline indicesKitsune Ral
2018-08-06RoomMemberEvent: a set of is*() facility methodsKitsune Ral
2018-08-05Room: add redaction events to the timelineKitsune Ral
Not that it felt right but Riot does it and so should we. Closes #220.
2018-08-05Room: rework processing redactionsKitsune Ral
Redaction events are now processed before, not after/along with normal events. This complicates logistics a bit but makes sure to-be-redacted events get redacted even before the client is notified about new arrivals. Also, redaction events are unconditionally out of the timeline for the moment (the non-starter KEEP_REDACTIONS_IN_TIMELINE macro is gone). This reinstates #196 for now, which will be addressed separately.
2018-08-05eventCast: add an assertionKitsune Ral
2018-08-05qmc-example: fixed indentationKitsune Ral
2018-08-04Room: avoid overloading postMessage, as QML is bad at resolving overloaded slotsKitsune Ral
Closes #227.
2018-08-03Room: improve logging, add an assertionKitsune Ral
2018-08-03RoomEvent: fix wrong JSON key to pick/store transaction idKitsune Ral
2018-08-03Room::Private::doSendEvent: more logsKitsune Ral
2018-08-03Fix qmc-example buildingKitsune Ral
2018-08-03Room::retryMessage and Room::discardMessageKitsune Ral
2018-08-03Refactor event itemsKitsune Ral
* TimelineItem and a newly introduced PendingEventItem are now inheriting from the common EventItemBase class * PendingEventItem has its own status and annotation, serving to track transition of the item through pending states
2018-08-03Connection::sendMessage: mark as tentativeKitsune Ral
...and therefore deprecated for use in clients _yet_.
2018-08-01Event: use Q_DISABLE_COPYKitsune Ral
2018-07-31Room::readMarkerMoved: pass 'from' and 'to' ids with the signalKitsune Ral
2018-07-31RoomEvent: don't store transactionId separatelyKitsune Ral
It's present on the vast minority of events so better be embedded into JSON instead.
2018-07-29csapi: define PushRule more accuratelyKitsune Ral
It's not always a JSON object; it's either a SetTweakAction object or a string. (Unfortunately, QVariant isn't a template type and there's no easy way to put Q_DECLARE_METATYPE(SetTweakAction) in a Mustache template, so adding one is left as an exercise to the user now.)
2018-07-28csapi/third_party_lookup.*: Properly pass a variadic (aka exploded) parametersKitsune Ral
Most of the actual change was in the API definition files (thanks to @anoadragon453), plus a converter from a QJsonObject map to the URL query string.
2018-07-28Room: validate tags before sending them to the serverKitsune Ral
See https://github.com/matrix-org/matrix-doc/pull/1457 for the background.