aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-02-27jobs/generated: SendMessageJob (might or might not preempt non-generated ↵Kitsune Ral
SendEventJob)
2018-02-27jobs/generated: GetPushersJob, PostPusherJobKitsune Ral
2018-02-27jobs/generated: GetJoinedRoomsJobKitsune Ral
2018-02-27jobs/generated: SetAccountDataJob, SetAccountDataPerRoomJobKitsune Ral
2018-02-27Merge branch 'master' into kitsune-gtadKitsune Ral
2018-02-27Travis CI: Fix a typoKitsune Ral
2018-02-27Room: Save tags in the cache; isFavourite() and isLowPriority()Kitsune Ral
2018-02-26qmc-example: Temporarily comment out the code that uses uncommitted featuresKitsune Ral
2018-02-26TagEvent: drop unneeded methods; add a license block to the .cpp fileKitsune Ral
Those methods are more appropriate for Room.
2018-02-26qmc-example: Optionally send a test message; don't dump incoming messages to ↵Kitsune Ral
cout The room alias is the third parameter (after user and password).
2018-02-26Travis CI: Skip valgrind on OSX; send a message to a test room on every runKitsune Ral
2018-02-26Deal with memory more carefullyKitsune Ral
Plugs some memory leaks reported by Valgrind.
2018-02-26Fix on the previous fix (sorry for the mess)Kitsune Ral
2018-02-26Fix (not working for quite a long time) CI on OSXKitsune Ral
2018-02-26Travis CI: an attempt to introduce automatic testingKitsune Ral
Adding valgrind to the mix.
2018-02-26qmc-example: Single-shot sync instead of continuous; room tags; code cleanupKitsune Ral
Single-shot sync is now used because with that qmc-example can be used as a crude auto-testing tool.
2018-02-26Merge branch 'kitsune-account-data'Kitsune Ral
2018-02-26Room and Connection: support room tagsKitsune Ral
Closes #134.
2018-02-26TagEvent: m.tag events parsingKitsune Ral
Using them in rooms and connection comes in the next commit.
2018-02-26SyncJob: parse events from global account data tooKitsune Ral
Closes #123 (room account data were parsed even before). No specific event classes for account data yet, though.
2018-02-26Room: show 1-on-1 invitations in a better wayKitsune Ral
Previously it was just an "Empty room" name, now it's "Invitation from %1".
2018-02-25ReceiptEvent: code cleanupKitsune Ral
2018-02-24Merge branch 'kitsune-room-specific-userinfo'Kitsune Ral
2018-02-24User: store avatars on the heap; use two containers to store ↵Kitsune Ral
avatars-to-rooms mapping Because they are uncopiable, unlike pointers to them; and a combination of QHash of avatars and a QMultiHash of rooms is much more convenient than a std::vector<std::pair<...>>.
2018-02-24User/Room: signal that a user/member is about to change the nameKitsune Ral
Enables to address QMatrixClient/Quaternion#284. Also fixes a gibberish condition in Room::Private::renameMember() that led to improper warnings and a too early return.
2018-02-24Support per-room user traitsKitsune Ral
User::Private stores two new maps (for display names and avatars respectively) and is able to retrieve and store names/avatars on a per-room basis. The "most used" trait is stored separately and room lists are not kept for it (because most people have a single name and a single avatar across all or most rooms). TODO: The avatar container should be replaced with something less clumsy; the current code doesn't even compile with MSVC. A "handle" copyable structure that would hold the Avatar is one of options. Closes #141.
2018-02-24Don't copy event content in accessorsKitsune Ral
2018-02-23Room: user() and memberJoinState(); code cleanupKitsune Ral
Room::user() came instead of Room::Private::member() and memberJoinState() came instead of Private::hasMember.
2018-02-23Avatar: provide common logic for uploading; don't store ConnectionKitsune Ral
Although the setting part of the work is class(User or Room)-specific, the uploading part is common, so Avatar provides it now. Also: there's no need to store Connection, as it's only used in get() and upload() - just pass it as the parameter to the methods.
2018-02-23RoomMemberEvent: make it sendableKitsune Ral
To do that, both RoomMemberEvent and MemberEventContent got respective constructors. Also: the fallback value for unknown _received_ membership types is now Undefined; it's not allowed in member events for sending (will fail on assertion now) because the server requires membership to be explicitly set.
2018-02-23BaseJob: In case of 4xx errors, fill the status with the message from the ↵Kitsune Ral
response
2018-02-20BaseJob: added Abandoned statusKitsune Ral
For a very brief period between calling BaseJob::abandon() and deletion of the job object.
2018-02-19Fix a typo in the previous commitKitsune Ral
A symptom that you suffered from it is you don't see any usernames whatsoever, and after restarting room names are also gone (to fix that, delete cache files).
2018-02-07RoomEvent/RoomMemberEvent: do not store what can be calculated on the flyKitsune Ral
Basically, segments of originalJsonObject() are used as-you-go instead of parsing them upon event creation.
2018-02-07MediaThumbnailJob::parseReply: Do not ignore underlying errorsKitsune Ral
2018-02-05Merge pull request #170 from QMatrixClient/kitsune-expose-download-urlsKitsune Ral
Expose download URLs
2018-02-03Merge branch 'kitsune-expose-download-urls' into kitsune-gtadKitsune Ral
2018-02-03Room: urlToDownload() and urlToThumbnail()Kitsune Ral
Closes #168.
2018-02-03thumbnailInfo() for event content classes and RoomMessageEvent: hasThumbnailKitsune Ral
2018-02-03DownloadFileJob, MediaThumbnailJob: augment generated makeRequestUrl() methodsKitsune Ral
2018-02-03jobs/generated: Generate job-specific makeRequestUrl() methodsKitsune Ral
2018-02-03BaseJob::makeRequestUrlKitsune Ral
A static method that constructs a request URL for this job and the passed set of parameters.
2018-02-03GTAD: Generate job-specific makeRequestUrl() methodsKitsune Ral
2018-02-03BaseJob::makeRequestUrlKitsune Ral
A static method that constructs a request URL for this job and the passed set of parameters.
2018-02-03Merge branch 'master' into kitsune-gtadKitsune Ral
2018-02-02Add CII Best Practices badge to the flair sectionKitsune Ral
2018-02-01On Windows, make sure the downloaded file has a proper extensionKitsune Ral
Closes #287.
2018-02-01Log transferred bytes in PROFILER categoryKitsune Ral
2018-02-01Room::fileNameToDownload: get a sensible initial name for the file pickerKitsune Ral
Works (at least, should work) with both Qt Widgets and QML.
2018-02-01Merge pull request #167 from Quiark/masterKitsune Ral
Move forgetRoom over to slots #166