Age | Commit message (Collapse) | Author | |
---|---|---|---|
2018-12-13 | Merge branch 'kitsune-omittable-bool' into kitsune-lazy-loading | Kitsune Ral | |
2018-12-13 | Regenerate csapi/ | Kitsune Ral | |
2018-12-13 | gtad.yaml: wrap bool in Omittable<> | Kitsune Ral | |
Case in point: https://github.com/matrix-org/matrix-doc/issues/1750 | |||
2018-12-13 | gtad.yaml: use more compact definitions where possible | Kitsune Ral | |
2018-12-12 | gtad.yaml: use more compact definitions where possible | Kitsune Ral | |
2018-12-12 | csapi/rooms.h: regenerate to update doc-comments | Kitsune Ral | |
2018-12-12 | Room: more doc-comments | Kitsune Ral | |
2018-12-12 | qmc-example: Use lazy-loading; check full-loading upon setDisplayed | Kitsune Ral | |
2018-12-12 | Room::allMembersLoaded(); more doc-comments | Kitsune Ral | |
2018-12-11 | Merge branch 'master' into kitsune-lazy-loading | Kitsune Ral | |
2018-12-11 | Make Room::setDisplayed() trigger loading all members | Kitsune Ral | |
Closes #253. | |||
2018-12-11 | RoomMemberEvent: properly integrate with GetMembersByRoomJob | Kitsune Ral | |
GetMembersByRoomJob was dysfunctional so far, creating "unknown RoomMemberEvents" instead of proper ones. Now that we need it for lazy- loading, it's fixed! | |||
2018-12-11 | Expose Connection::nextBatchToken() | Kitsune Ral | |
2018-12-10 | Room::getPreviousContent: use early return | Kitsune Ral | |
...instead of the entire function body wrapped in an if block. | |||
2018-12-10 | Suppress a function_traits<> test with lambdas on MSVC2015 | Kitsune Ral | |
Assigning a lambda to a static variable causes it to fail with 'auto must always deduce to the same type' error. | |||
2018-12-09 | Room: defer memberListChanged(); track room summary changes | Kitsune Ral | |
This concludes beta-version of lazy-loading support in libQMatrixClient (#253). | |||
2018-12-09 | Room: track more changes; fix cache smashing upon restart | Kitsune Ral | |
Commit fd52459 introduced a regression rendering the cache unusable after a client restart (an empty state overwrites whatever state was in the cache). This commit contains the fix, along with more room change tracking. # Conflicts: # lib/room.h | |||
2018-12-09 | Room: track more changes; fix cache smashing upon restart | Kitsune Ral | |
Commit fd52459 introduced a regression rendering the cache unusable after a client restart (an empty state overwrites whatever state was in the cache). This commit contains the fix, along with more room change tracking. | |||
2018-12-09 | fromJson, fillFromJson: avoid overwriting pods if the JSON value is undefined | Kitsune Ral | |
2018-12-09 | MSC 688: MSC-compliant RoomSummary; update Room::calculateDisplayname() | Kitsune Ral | |
The members of the summary can be omitted in the payload; this change fixes calculation of the roomname from hero names passed in room summary. Also: RoomSummary can be dumped to QDebug now. | |||
2018-12-08 | Omittable<>::merge<> | Kitsune Ral | |
2018-12-08 | Room summaries | Kitsune Ral | |
2018-12-08 | Connection: support members lazy-loading | Kitsune Ral | |
This should cover the Connection-related part of #253. Connection gained lazyLoading/setLazyLoading accessors and the respective Q_PROPERTY. When lazy loading is on, sync() adds lazy_load_members: true to its filter. | |||
2018-12-08 | SyncJob: accept Filter instead of QString for the filter | Kitsune Ral | |
2018-12-08 | EventContent: minor cleanup | Kitsune Ral | |
2018-12-08 | Refactor toJson/fillJson | Kitsune Ral | |
Both now use through a common JsonConverter<> template class with its base definition tuned for structs/QJsonObjects and specialisations for non-object types. This new implementation doesn't work with virtual fillJson functions yet (so EventContent classes still use toJson as a member function) and does not cope quite well with non-constructible objects (you have to specialise JsonConverter<> rather than, more intuitively, JsonObjectConverter<>), but overall is more streamlined compared to the previous implementation. It also fixes one important issue that pushed for a rewrite: the previous implementation was not working with structure hierarchies at all so (in particular) the Filter part of CS API was totally disfunctional. | |||
2018-12-08 | function_traits: more tests, fix function objects/lambdas not working with ↵ | Kitsune Ral | |
some compilers A member function reference is not the same as a member function pointer. | |||
2018-12-08 | Merge branch 'kitsune-tweaks-fixes' | Kitsune Ral | |
2018-12-08 | Omittable: better editability; drop implicit cast to bool | Kitsune Ral | |
2018-12-08 | Omittable: make operator-> and operator* return an empty object if omitted ↵ | Kitsune Ral | |
== true That is, instead of Q_ASSERTing in debug builds (release builds already work that way). The idea is that since the value is default-initialised anyway it can be used as a "blank canvas" to access specific fields inside the value's structure. The next commit will use that. | |||
2018-12-08 | StateEvent<>: make data members private | Kitsune Ral | |
Keeping them protected extends API surface with no reasonable use from it (and for now derived classes don't access StateEvent<> data members directly, anyway). | |||
2018-12-08 | RoomMemberEvent: cleanup | Kitsune Ral | |
Don't make JSON for event content only to parse it again; drop extraneous constructs. | |||
2018-12-08 | Special-case FALLTHROUGH for Clang | Kitsune Ral | |
2018-12-08 | function_traits<>: support any arity; add compile-time tests | Kitsune Ral | |
2018-12-08 | Connection: Avoid Omittable<>::operator bool | Kitsune Ral | |
It was accidentally (and incorrectly) used in tags sorting code; will be dropped from Omittable<> in a later commit. | |||
2018-12-04 | Merge pull request #262 from uhoreg/soname | Kitsune Ral | |
use the API version as the SOVERSION | |||
2018-12-04 | Merge pull request #261 from uhoreg/pkgconfig_path | Kitsune Ral | |
use the configured paths in the pkgconfig file | |||
2018-12-03 | use the API version as the SOVERSION | Hubert Chathi | |
2018-12-03 | use the configured paths in the pkgconfig file | Hubert Chathi | |
2018-11-23 | Update CS API | Kitsune Ral | |
2018-11-23 | Room::setLastReadEvent: save room state when updating own read marker | Kitsune Ral | |
2018-11-23 | Room: track more Changes | Kitsune Ral | |
2018-11-23 | Room/Connection: don't save the just loaded room cache | Kitsune Ral | |
2018-11-23 | Connection::saveState: use null instead of an empty object for a room | Kitsune Ral | |
placeholder Otherwise placeholder objects are confused with normal room JSON objects when loading from the cache. Closes #257 (again). | |||
2018-11-22 | Connection: Log when a room state cache is written | Kitsune Ral | |
2018-11-22 | Fix QString initialisation from QStringBuilder | Kitsune Ral | |
You can't assign a QStringBuilder to auto. | |||
2018-11-22 | Save state cache per-room | Kitsune Ral | |
Closes #257. | |||
2018-11-22 | Room: Change enum, Changes flag set, and changed() signal | Kitsune Ral | |
This allows to batch updates into signals being emitted only once per sync. Also supercedes emitNamesChanged flag used in a few places. | |||
2018-11-22 | Generalise and expose cacheLocation() | Kitsune Ral | |
2018-11-20 | Add syncdata.* to libqmatrixclient.pri | Kitsune Ral | |