aboutsummaryrefslogtreecommitdiff
path: root/lib/connection.cpp
AgeCommit message (Collapse)Author
2019-07-09Merge branch 'master' into use-clang-formatKitsune Ral
2019-07-09Move serverPart() to the public APIKitsune Ral
Also: Connection::resolveServer() now only accepts MXIDs, not domains.
2019-07-08E2EE: add new account generation logicAlexey Andreyev
2019-07-06Merge branch 'master' into e2ee-enc-mngKitsune Ral
2019-07-06Connection::serverPart: replace auto with QString because of QStringBuilderKitsune Ral
See https://github.com/KDE/clazy/blob/master/docs/checks/README-auto-unexpected-qstringbuilder.md Closes #613.
2019-07-05Clean up .well-known logicBlack Hat
2019-07-04Connection.cpp: Add .well-known parsing in resolveServer()Black Hat
2019-07-04Add EncryptionManager class. Add AccountSettings::encryptionAccountPickle logic.Alexey Andreyev
2019-07-04Connection::token() is no moreKitsune Ral
Use Connection::accessToken() instead.
2019-07-03Room/Connection: make room aliases work properlyKitsune Ral
Closes #301.
2019-07-01Handle M_UNKNOWN as The Spec says; factor out BaseJob::parseError()Kitsune Ral
2019-06-24Merge branch 'master' into clang-formatKitsune Ral
# Conflicts: # CMakeLists.txt # lib/avatar.cpp # lib/connection.cpp # lib/connection.h # lib/connectiondata.cpp # lib/csapi/account-data.cpp # lib/csapi/account-data.h # lib/csapi/capabilities.cpp # lib/csapi/capabilities.h # lib/csapi/content-repo.cpp # lib/csapi/create_room.cpp # lib/csapi/filter.cpp # lib/csapi/joining.cpp # lib/csapi/keys.cpp # lib/csapi/list_joined_rooms.cpp # lib/csapi/notifications.cpp # lib/csapi/openid.cpp # lib/csapi/presence.cpp # lib/csapi/pushrules.cpp # lib/csapi/registration.cpp # lib/csapi/room_upgrades.cpp # lib/csapi/room_upgrades.h # lib/csapi/search.cpp # lib/csapi/users.cpp # lib/csapi/versions.cpp # lib/csapi/whoami.cpp # lib/csapi/{{base}}.cpp.mustache # lib/events/accountdataevents.h # lib/events/eventcontent.h # lib/events/roommemberevent.cpp # lib/events/stateevent.cpp # lib/jobs/basejob.cpp # lib/jobs/basejob.h # lib/networkaccessmanager.cpp # lib/networksettings.cpp # lib/room.cpp # lib/room.h # lib/settings.cpp # lib/settings.h # lib/syncdata.cpp # lib/user.cpp # lib/user.h # lib/util.cpp
2019-06-11Comment change as requestedVille Ranki
Co-Authored-By: Kitsune Ral <Kitsune-Ral@users.sf.net>
2019-06-11Remove unnecessary error checks in lib/connection.cppVille Ranki
Co-Authored-By: Kitsune Ral <Kitsune-Ral@users.sf.net>
2019-05-31Ignore some errors on leaving rooms, add new error enum. Fixes #307Ville Ranki
2019-05-20Connection: Fix a race condition in direct chats handling upon initial syncKitsune Ral
Closes #323.
2019-05-19Improve wording in a commentKitsune Ral
2019-05-19Connection: use QScopedPointer instead of unique_ptrKitsune Ral
While theoretically less robust (no equivalent of make_unique), QScopedPointer is navigable in Qt Creator debug views, unlike unique_ptr. Of course this will eventually be fixed; but given that inability to create an owning pointer object means sure abnormal termination of our code shortly afterwards, having make_unique in this particular case doesn't help in any way at all; so unique_ptr has zero advantages over QScopedPointer in this setting.
2019-05-18Connection::onSyncSuccess(): fix using after move()Kitsune Ral
Also rewrite the account data piece with visit().
2019-05-03Connection::stateCacheDirKitsune Ral
Same as stateCachePath but returns QDir.
2019-04-24Connection::logout: ignore ContentAccessErrorKitsune Ral
Closes #316.
2019-04-06Clean up on clang-tidy/clazy analysisKitsune Ral
2019-03-30Connection: make sure to mark rooms supposed to be direct chats as suchKitsune Ral
Closes #305. Relies on correct tracking of Invite membership from the previous commit.
2019-03-27Connection::domain()Kitsune Ral
2019-03-10Room::checkVersion(): be tolerant to already upgraded roomsKitsune Ral
2019-03-02style: apply .clang-format to all .cpp and .h filesMarc Deop
2019-02-27Connection::stopSync: undo the sync loopKitsune Ral
2019-02-22Room::setAliases, Connection: roomByAlias, updateRoomAliasesKitsune Ral
2019-02-17Connection: loadingCapabilities(); sort availableRoomVersionsKitsune Ral
2019-02-15Room::checkVersion() and Room::unstableVersion()Kitsune Ral
Initial (sans power levels checking) implementation of the check that room should be upgraded. Closes most of #236.
2019-02-15Connection: load supported room versionsKitsune Ral
A part of #236.
2019-02-15Merge branch 'master' into kitsune-room-versionsKitsune Ral
2019-02-11Connection::createRoom: support passing a room versionKitsune Ral
On the path to address #233.
2019-02-10Connection: move syncLoopTimeout to Connection::PrivateAlexey Andreyev
Signed-off-by: Alexey Andreyev <aa13q@ya.ru>
2019-02-05Connection: simplified sync loop logic without delaysAlexey Andreyev
Signed-off-by: Alexey Andreyev <aa13q@ya.ru>
2019-02-03Connection: separated sync loop logic with delay controlAlexey Andreyev
Signed-off-by: Alexey Andreyev <aa13q@ya.ru>
2019-01-30Connection: infinite sync loop logic by defaultAlexey Andreyev
2019-01-13Connection: fix/workaround glitches on joining/leavingKitsune Ral
Closes #273, in particular.
2019-01-13Connection::provideRoom: allow omitting join stateKitsune Ral
2019-01-05Connection::upload*: autodetect content type if not suppliedKitsune Ral
2018-12-13Connection: initialize lazyLoading member variableKitsune Ral
2018-12-11Expose Connection::nextBatchToken()Kitsune Ral
2018-12-08Room summariesKitsune Ral
2018-12-08Connection: support members lazy-loadingKitsune 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-08Connection: Avoid Omittable<>::operator boolKitsune Ral
It was accidentally (and incorrectly) used in tags sorting code; will be dropped from Omittable<> in a later commit.
2018-11-23Room/Connection: don't save the just loaded room cacheKitsune Ral
2018-11-23Connection::saveState: use null instead of an empty object for a roomKitsune Ral
placeholder Otherwise placeholder objects are confused with normal room JSON objects when loading from the cache. Closes #257 (again).
2018-11-22Connection: Log when a room state cache is writtenKitsune Ral
2018-11-22Save state cache per-roomKitsune Ral
Closes #257.
2018-11-20Make SyncData more self-contained and prepare for cache splittingKitsune Ral
SyncData now resides in its own pair of files and is capable to load either from file or from JSON. There is also (yet untested) capability to load rooms from files if a file name stands is the value for a given room id. This allows to store the master cache file separately from cache files for each room, massively easing the problem of bulky accounts that can overflow the poor capacity of Qt's JSON engine.