aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-01-05jobs/generated: Convert numbers to string in a way that actually worksKitsune Ral
Plus a bit of fooling around with linebreaks.
2018-01-05BaseJob: Provide a simplified constructorKitsune Ral
2018-01-05jobs/generated: Make default values propagate properlyKitsune Ral
Thanks to the latest GTAD. initializeDefaultValue is a partial that in turn inserts a type-specific {{>initializer}} if there is a non-trivial default value.
2018-01-05CMakeLists.txt: Exclude more API files from generationKitsune Ral
All of these new exclusions have parameters named 'signed', 'unsigned' and 'default' which are C++ reserverd words. GTAD does not give a proper workaround for these yet (see #24) so exclude them for now.
2018-01-05Avatar: Use Connection::getThumbnail instead of callApi<>Kitsune Ral
2018-01-05jobs/generated: Use BaseJob::addExpectedContentType()Kitsune Ral
2018-01-05{{base}}.cpp.mustache: Fix addExpectedContentType() invocation codeKitsune Ral
2018-01-04gtad.yaml: CleanupKitsune Ral
2018-01-04Updated generated jobsKitsune Ral
Just one file, the rest are the same.
2018-01-04Disable generation of jobs that stand in the wayKitsune Ral
We have a better SyncJob and SetRoomStateJob yet.
2018-01-04gtad.yaml: Update to the most recent GTADKitsune Ral
Use _scopeRenderer (instead of _typeRenderer) and _literalQuote.
2018-01-03Fully support content-repo APIKitsune Ral
That includes dealing with headers and raw (non-JSON) responses.
2018-01-03Support request and response headersKitsune Ral
Enable specifying headers in the request and checking/using headers in the response.
2018-01-03jobs/generated: Polish formatting; other minor cleanupKitsune Ral
2017-12-31Merge branch 'master' into kitsune-gtadKitsune Ral
2017-12-30BaseJob: do not suppress SSL errorsKitsune Ral
It is the application's responsibility to properly display the error and get confirmation from the user about it.
2017-12-30QMatrixClient::NetworkAccessManager (singleton Qt NAM that remembers ignored ↵Kitsune Ral
SSL errors) Closes #145.
2017-12-29Don't use generic lambdas in initialisersKitsune Ral
This seems to upset MSVC.
2017-12-29Fix building with Microsoft's standard libraryKitsune Ral
2017-12-29Allow to customize and connect to the used QNetworkAccessManager from clientsKitsune Ral
We don't really want to let the world know that we use the only instance of NAM; instead, we provide a point of customisation to whatever NAM is created in ConnectionData, in the form of a static customizeNetworkAccess() method that gets a function to run on a/the created NAM. This function can do additional configuration on NAM (such as setting a proxy factory, network configuration, or caching) and/or connect to its signals, such as sslErrors() and proxyAuthenticationRequired(). Closes #143.
2017-12-29Use std::unique_ptr instead of bare pointers; cleanup stale declarationsKitsune Ral
2017-12-28NetworkSettings: add setupApplicationProxy() accessible from QML; proxyPort ↵Kitsune Ral
is quint16 now setupApplicationProxy(), so that clients in QML could apply changes in proxy settings without going down to C++. quint16, because this is a type actually used by QNetworkProxy.
2017-12-28Switch from QPixmap to QImage; add convenience avatar() overloads to Room ↵Kitsune Ral
and User The switch is necessary because MediaThumbnailJob is supposed to return something that can be worked on in non-GUI threads (as is the case of QML image providers), and QPixmap is not supposed for usage out of the main thread.
2017-12-27Introduce StateEventBase - a non-template base for StateEvent<>Kitsune Ral
This will hold common logic for all state events, including the newly introduced repeatsState() that returns true when prev_content repeats content. This will be used to address QMatrixClient/Quaternion#245.
2017-12-27StateEvent<>: Look for prev_content in unsigned, not top-levelKitsune Ral
2017-12-26NetworkSettings: store proxy configurationKitsune Ral
No credentials, just type, host, and port.
2017-12-26Settings: factored out common declarations/definitions to macrosKitsune Ral
It cannot be made in templates because property and methods names are involved.
2017-12-25CMakeLists: Add -W to the mixKitsune Ral
2017-12-25qmake: Use QMAKE_CXX_FLAGS_WARN_ON rather than QMAKE_CXX_FLAGSKitsune Ral
Because the damn thing puts QMAKE_CXX_FLAGS before what's put by CONFIG, and CONFIG injects -W -Wall that cancels -Wno-unused-parameter.
2017-12-25Connection: change the attempt number propagated from BaseJobKitsune Ral
2017-12-25BaseJob: further minor code cleanupKitsune Ral
2017-12-25qmake: Use the compiler specified in the environment; revert to CONFIG += c++14Kitsune Ral
qmake doesn't follow standard CC and CXX environment variables and its CONFIG produces CXX_FLAGS added after QMAKE_CXX_FLAGS. Big thank you to The Qt Company :-|
2017-12-25qmake: Use -std=C++14, not -std=gnu++1y substituted for CONFIG += c++14Kitsune Ral
2017-12-25Polished warnings configurationKitsune Ral
The whole thing should go without or almost without warnings with GCC and with Clang (MSVC is another story and I don't care about it much).
2017-12-25Room: Remove C++14 code from the header fileKitsune Ral
This will provide some backwards-compatibility to clients that are not ready to move _their_ code to C++14 (at least, it will allow them to not add C++14 requirement to their makefiles as of yet).
2017-12-25BaseJob: consolidate job timeout configurationKitsune Ral
This prepares the backend to enable timeouts/retry intervals configurable from clients.
2017-12-25Connection: Be more accurate with lambda capturesKitsune Ral
2017-12-25Fix CIKitsune Ral
Old GCC was still invoked; qmake-based builds weren't switched to C++14.
2017-12-25Now really switching to the new toolchain: C++14, GCC/Clang 5, Qt 5.6Kitsune Ral
Also a bit of code tightening with some C++14 (but not only) things.
2017-12-25Merge branch 'master' into kitsune-gtadKitsune Ral
2017-12-25ReceiptEvent: use QVector instead of std::vectorKitsune Ral
Because we should practice what we preach in CONTRIBUTING.md.
2017-12-25CONTRIBUTING.md refreshed and slightly extendedKitsune Ral
2017-12-25Use pimpl for AvatarsKitsune Ral
2017-12-25Code cleanupKitsune Ral
2017-12-25Qt 5.6 or newer is required from now onKitsune Ral
2017-12-21Connection::logout: supply receiver to connect(job,...)Kitsune Ral
2017-12-20Connection::accessToken - return QByteArray instead of QStringKitsune Ral
Because that's what it really is.
2017-12-20Clean away legacy settings when possibleKitsune Ral
Otherwise they stick around when deleting actual settings (e.g. at logout).
2017-12-19Don't use LoginJob::homeServer() anymoreKitsune Ral
Because the respective parameter in /login result is deprecated. Closes #137.
2017-12-16Connection: proactively create a Room object upon joining a roomKitsune Ral
So that clients could start using this object without waiting for the next sync.