aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-09-09preamble.mustache now only mentions that the file is generatedKitsune Ral
2017-09-09Kicking, inviting, exposing rooms in Invite stateKitsune Ral
Kicking and inviting use generated job classes. Rooms in Invite state are stored separately in the hash from those in Join/Leave state because The Spec says so. For clients, this means that the same room may appear twice in the rooms map if it's been left and then the user was again invited to it. The code in Quaternion that properly processes this will arrive shortly.
2017-09-09First files made by api-generatorKitsune Ral
Actual usage will some with the next commit.
2017-09-09apigen.yaml: cleanupKitsune Ral
Commented out parts that aren't used yet; moved the whole 'env:' section down below (because it's used by Printer rather than Analyzer or Translator).
2017-09-08Prepend basePath to produce endpoint paths correctlyKitsune Ral
2017-09-08Better toJson for container objectsKitsune Ral
The previous version couldn't deal with containers of objects that have no implicit conversion to QJsonValue. The current one can.
2017-09-08Connection: Room and User factories are std::functions nowKitsune Ral
Instead of createUser() and createRoom() virtual functions, use std::function<> to store predefined lambdas that would create respective descendants from User and Room, respectively. No more need QuaternionConnection just for the sake of creating a QuaternionRoom.
2017-09-07Actually use the types map in apigen.yamlKitsune Ral
2017-09-05Merge branch 'master' into kitsune-apigenKitsune Ral
2017-09-05Room: memberCount(); slight optimization and reformattingKitsune Ral
2017-09-04Use QMatrixClient's fork of matrix-doc in the meantimeKitsune Ral
Because only the fork contains operationId's yet.
2017-09-04Generate job files on every Travis buildKitsune Ral
2017-09-04Travis CI: build in containers, use newer compilersKitsune Ral
api-generator only builds on newer compilers (GCC 5, Clang 3.8). Qt version is unchanged.
2017-09-03Try to introduce api-generator to Travis CIKitsune Ral
2017-09-03CMakeLists: add_custom_target(update-api), aux_source_directory to load ↵Kitsune Ral
files list - cmake --target update-api can be used to update the api files - aux_source_directory() is used to enumerate generated files instead of apifiles.txt (we wouldn't be able to rerun CMake on the changed files list anyway).
2017-09-02Merge pull request #81 from delijati/masterKitsune Ral
Add Connection::leftRoom signal #80
2017-09-01Add Connection::leftRoom signalJosip Delic
2017-09-01Added (so far unused) preprocessing section to apigen.yamlKitsune Ral
2017-09-01Added files to (eventually) generate *Job classes automaticallyKitsune Ral
KitsuneRal/api-generator project is a place where all the heavy lifting will (eventually) be implemented. This commit marks a point when the generated files at least compile (whether they work is not tested yet). Return values are so far entirely ignored.
2017-09-01BaseJob::Data: expose constructors from QJsonObjectKitsune Ral
We had a stupid situation when this class has less features when compiled with newer Qt because we explicitly added a constructor from std::initializer_list for older Qt versions but did not reuse the same constructor from QJsonObject for newer versions.
2017-08-28Better documentationKitsune Ral
Thanks to CII Best Practices Badge project for the hints and for the original CONTRIBUTING.md
2017-08-28Use -pedantic with compilers that support itKitsune Ral
2017-08-19BaseJob::Data: Small update to better match Qt APIKitsune Ral
Also: Query and Data constructors from initialization_list<> are no more explicit, as clang-tidy recommends.
2017-08-19Room::localUser() facility methodKitsune Ral
2017-08-08Vector has been renamed to Riot long agoKitsune Ral
2017-07-22SendEventJob: Fixed empty transaction id'sKitsune Ral
2017-07-19Restore compatibility with CMake versions below 3.3Kitsune Ral
2017-07-19Make sure -Wall is used regardless of the parent project settingsKitsune Ral
2017-07-18Merge pull request #77 from Quiark/masterKitsune Ral
Room event timestamp can also be undefined
2017-07-18Room event timestamp can also be undefinedRoman Plášil
2017-07-16Fixed too strict validations in (Room)EventKitsune Ral
2017-07-15Merge pull request #72 from QMatrixClient/kitsune-send-eventsKitsune Ral
Events creation and sending
2017-06-29Fixed building with Qt version=5.4; moved away a macro unused in headersKitsune Ral
2017-06-27Enable sending RoomMessageEventsKitsune Ral
1. PostMessageJob is now SendEventJob, which reflects two things: first, it's a PUT instead of a POST (POST for /send is not supported by the latest spec anyway), so that we could enable tracking transaction ids for local echo in the near future; second, it's no more just about messages, the job can support sending any room events (topic changes etc.). 2. Room::postMessage() now uses the new RoomMessageEvent API to send m.room.message events.
2017-06-22RoomMessageEvent: Simplify constructors, use QString msgType internallyKitsune Ral
QString msgType allows non-standard types (we don't want to restrict clients to types from the spec)
2017-06-22MessageEventContent: generalise mimeTypeKitsune Ral
mimeType is relevant to most of the content types, and at the same time getting a MIME type in a generic way is handy for clients to uniformly detect whether they can display the content and what renderer to use for it.
2017-06-22Enable creation of RoomMessageEventsKitsune Ral
RoomMessageEvent and MessageContentEvent::* classes have been massively overhauled to enable creation of m.room.message events locally instead of from JSON.
2017-06-22Enable creation and usage of Event and RoomEvent objects locally, including QMLKitsune Ral
This includes RoomEvent gaining transactionId property and addId() method so that it could gain ids when being/having been sent.
2017-06-22BaseJob::* facility classes: better constructionKitsune Ral
Use std::initializer_list instead of QList<> because we actually want to construct from initializer lists; and only enable Data(std::initializer_list) for older Qt's that don't have the same on the level of QJsonObject.
2017-06-22Connection is now able to generate transaction idsKitsune Ral
The generation algorithm doesn't support several Quaternions using the same accessToken, as of yet.
2017-06-13Removed RoomMessageEvent::userId in favor of RoomEvent::senderIdKitsune Ral
2017-06-07Merge pull request #69 from Quiark/pull-bridged-fieldKitsune Ral
Split bridge name into a separate field in user model
2017-06-07Adjust whitespaceRoman Plášil
2017-06-07Split user's bridge (IRC, Gitter) into a separate field in user model objectRoman Plášil
2017-06-07Merge pull request #68 from Quiark/pull-mark-invokableKitsune Ral
Make markAllMessagesAsRead() Q_INVOKABLE
2017-06-07Make markAllMessagesAsRead() Q_INVOKABLERoman Plášil
2017-06-02Merge pull request #66 from Quiark/reorgKitsune Ral
Expose userlist to QML
2017-06-02Add Room::memberNames() for nick completion in QMLRoman Plášil
2017-06-02Clean upRoman Plášil
2017-06-02Fix qmake compilationRoman Plášil