aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2018-05-03GTAD: Use QMatrixClient::Event-derived classes in generated jobs + Mustache ↵Kitsune Ral
cleanup This should make generated jobs buildable across the whole CS API (sync.yaml is disabled as the manual implementation is still considerably better).
2018-05-01Merge branch 'master' into kitsune-gtadKitsune Ral
2018-05-01jobs/generated: use std::move in baseURL; type updates from the API filesKitsune Ral
The type updates are a matter of pending PR to matrix-doc yet.
2018-05-01gtad.yaml: Use EventPtr for Notifications.Event; add variant type to the mapKitsune Ral
Variants are not yet supported but just in case, let's have the line, it's very obvious.
2018-05-01GetNotificationsJob: don't alias EventPtr with EventKitsune Ral
It's useless and misleading.
2018-05-01jobs/generated: use std::move in baseURL; type updates from the API filesKitsune Ral
The type updates are a matter of pending PR to matrix-doc yet.
2018-05-01Event and Room: further abstract event pointersKitsune Ral
So that eventual switch from std::unique_ptr to some other pointer (as a case - QSharedPointer) would be as painless as possible.
2018-05-01Room: endorse std::moveKitsune Ral
That is, add "using std::move" and strip std:: from actual usages.
2018-05-01converters.h: Support std::vector<>Kitsune Ral
2018-05-01User::processEvent: add constKitsune Ral
2018-05-01RedactionEvent: make the constructor explicitKitsune Ral
2018-05-01Event: cleanupKitsune Ral
2018-05-01Integrate converters with EventPtr partiallyKitsune Ral
So that events can be created from JSON in the same way as all other types.
2018-05-01Mustache: more C++ tidying and empty lines removalKitsune Ral
2018-05-01ConnectionsGuard: one more fix about defaultsKitsune Ral
2018-05-01jobs/generated: GetNotificationsJobKitsune Ral
2018-04-30ConnectionsGuard: one more fix about defaultsKitsune Ral
2018-04-30jobs/generated: GetNotificationsJobKitsune Ral
2018-04-30jobs/generated: cleanup C++Kitsune Ral
2018-04-30ConnectionsGuard: suppress the copying assignment operatorKitsune Ral
It accidentally leaked through using QPointer::operator=
2018-04-30gtad.yaml: Migrate to GTAD 0.5 config formatKitsune Ral
2018-04-30jobs/generated: cleanup C++Kitsune Ral
2018-04-30Mustache templates: cleanup C++Kitsune Ral
2018-04-30ConnectionsGuard: suppress the copying assignment operatorKitsune Ral
It accidentally leaked through using QPointer::operator=
2018-04-29Merge branch 'master' into kitsune-gtadKitsune Ral
2018-04-27Use bridge names as the first line of disambiguationKitsune Ral
If can get away without showing MXIDs we should do it.
2018-04-27Cache bridge names along with user namesKitsune Ral
Otherwise the bridge is forgotten after restart. This bumps the cache version.
2018-04-27Fix broken User::displayName() logicKitsune Ral
Also, add an assert to Connection::user() to make sure it doesn't create users with invalid ids. Closes #201.
2018-04-27User::rawName(); bonus, bring order to doc commentsKitsune Ral
This new function allows to get the username along with its bridge (basically, undoing the change applied by processEvent for cases when it is undesirable).
2018-04-27User::processEvent: fix bridge postfix not being strippedKitsune Ral
Closes #197.
2018-04-25BaseJob::doCheckReply: catch non-HTTP errors tooKitsune Ral
2018-04-25BaseJob: rewrite error detection using genuine HTTP codesKitsune Ral
Qt Network error codes don't represent well some cases. Closes #200.
2018-04-25Avatar: don't allow null callbacks to be registeredKitsune Ral
2018-04-22Avatar: clear the list of callbacks after completion + general code cleanupKitsune Ral
2018-04-22Code reformattingKitsune Ral
2018-04-16ConnectionsGuard<> template to automatically disconnect subscribersKitsune Ral
Case in point is a room list model (so far in Quaternion, but planned for inclusion to the lib) that stores lists of connections and rooms; upon dropping, e.g., a room from the list the model should disconnect from the room's signals.
2018-04-14jobs/generated: Overload toJson() instead of operator QJsonObject()/QJsonValue()Kitsune Ral
It slightly reduces the header interface and shortcuts the actual call chain (not that it had any performance implications, just easier reasoning).
2018-04-14Mustache templates: Overload toJson() instead of operator ↵Kitsune Ral
QJsonObject()/QJsonValue() It slightly reduces the header interface and shortcuts the actual call chain (not that it had any performance implications, just easier reasoning).
2018-04-14Mustache: {{#producesNonJson?}} -> {{#producesNotJson?}}Kitsune Ral
According to the most recent changes in GTAD.
2018-04-13Support Qt 5.4Kitsune Ral
That is until ubports move to xenial.
2018-04-13converters.h: Support QVariantMap and QVariantHashKitsune Ral
2018-04-13Merge branch 'master' into kitsune-gtadKitsune Ral
2018-04-05Unofficially relax Qt requirement to 5.5.1Kitsune Ral
This is to support uMatriks that still has to compile on xenial codebase.
2018-04-03DirectChatEvent: be careful with range-for over temporariesKitsune Ral
...because temporaries returned by temporaries tend to disappear before you enter the loop body (see the bottom of http://en.cppreference.com/w/cpp/language/range-for#Explanation).
2018-04-03More fixes from static analysisKitsune Ral
2018-04-02BaseJob: set the status upon headers arrivalKitsune Ral
So that DownloadFileJob could figure if it should save the incoming payload to the file or it's the JSON details about the error.
2018-04-02Fixes according to results of static analysisKitsune Ral
Many thanks to clang-tidy and clazy authors for the tools, and to Qt Creator developers for making them easily available in the IDE.
2018-04-02Be more cautious with rvaluesKitsune Ral
Clang on FreeBSD doesn't seem to be playing nice in Release configuration. See the comment in the committed code.
2018-04-02lookup()/dispatch() removed; unique_ptr_cast() and qAsConst() introducedKitsune Ral
qAsConst() is a copy-paste from Qt code and is only supplied by QMatrixClient if Qt is below 5.7. unique_ptr_cast<> is similar to static_cast<> of pointers but deals with unique_ptr's, passing ownership to the newly made pointer.
2018-04-02Room/Connection: accountData()/accountDataChanged()Kitsune Ral
Generic account data are at least readable now (you can get, say, pushers from the library without it even being aware of what a pusher is).