aboutsummaryrefslogtreecommitdiff
path: root/backends/cloud
AgeCommit message (Collapse)Author
2016-08-24CLOUD: Add IdCreateDirectoryRequestAlexander Tkachev
Box gets createDirectoryWithParentId(), so now creating directories works there.
2016-08-24CLOUD: Add IdStorageAlexander Tkachev
This is a special base class for Storages which are using ids instead of paths in their APIs, like Box or Google Drive. This commit makes Box derived from IdStorage.
2016-08-24CLOUD: Add BoxListDirectoryRequestAlexander Tkachev
And used in it BoxResolveIdRequest. TODO: make some generic ResolveIdRequest and ListDirectoryRequest for id-based storages. It's really similar, I just had to change a few details in GoogleDrive ListDirectory and ResolveId requests.
2016-08-24CLOUD: Add BoxListDirectoryByIdRequestAlexander Tkachev
Similarly to Google Drive, Box uses only ids of files. That means id resolving would be slow.
2016-08-24CLOUD: Add BoxTokenRefresher and BoxStorage::info()Alexander Tkachev
BoxTokenRefresher does refresh if HTTP 401 is returned by the server. To test refresher, BoxStorage::info() was added.
2016-08-24CLOUD: Add BoxStorage sketchAlexander Tkachev
2016-08-24CLOUD: Fix FolderDownloadRequestAlexander Tkachev
Actually, I'm not completely sure, but this fixed the segfault when user closes ScummVM during the download. Even if that's not a fix, these lines must be in this method anyway.
2016-08-24GUI: Upgrade DownloadDialogAlexander Tkachev
It now shows the remote and local directories and a progress bar. Storage now shows OSD messages on download success and failure.
2016-08-24CLOUD: Add FolderDownload-related methods in StorageAlexander Tkachev
CloudManager's shortcuts are added too. The idea is to keep FolderDownload request within Storage, and provide necessary means to access it. The download is started and cancelled through the DownloadDialog.
2016-08-24CLOUD: Fix CloudManager's methodsAlexander Tkachev
Were not returning created Request.
2016-08-24CLOUD: Add CloudManager::downloadFolder()Alexander Tkachev
2016-08-24CLOUD: Make Google Drive sort files listAlexander Tkachev
GoogleDriveListDirectoryByIdRequest now uses "orderBy" field to specify that we want the commonly used "alphabetical, folders first" order. That's mostly needed for RemoteBrowserDialog, because Requests don't care about the order, and this one is more user-friendly.
2016-08-24CLOUD: Fix finishSuccess() warningAlexander Tkachev
2016-08-24CLOUD: Fix some warningsAlexander Tkachev
Mostly on format string
2016-08-24CLOUD: Delete the incomplete file (when downloading)Alexander Tkachev
2016-08-24CLOUD: Update save's timestamp on rewriteAlexander Tkachev
This commit moves save/load timestamps static methods into DefaultSaveFileManager and fixes a few related bugs.
2016-08-24CLOUD: Fix "zero-length format string" warningAlexander Tkachev
2016-08-24CLOUD: Fix "signed/unsigned integers" warningAlexander Tkachev
The "comparison between signed and unsigned integer expressions" one. Note that in UploadRequests size() and pos() are acutally signed, because they could return -1. This commit implies that Requests are working with such Streams which doesn't.
2016-08-24CLOUD: Use correct redirect_urisAlexander Tkachev
Usage of #ifdef there (and in StorageWizardDialog) means that ScummVM doesn't support both local webserver and scummvm.org paths at the same time. It's either built with SDL_net (thus supporting localhost path) or without it (thus using scummvm.org).
2016-08-24CLOUD: Add LocalWebserverAlexander Tkachev
Available as LocalServer singleton. It's being started and stopped by StorageWizardDialog. It doesn't handle clients yet, though.
2016-08-24CLOUD: Fix configuration handling in CloudManagerPeter Bozsó
2016-08-24CLOUD: Get rid of CloudConfigHelper, use kCloudDomain where approriatePeter Bozsó
2016-08-24CLOUD: Do saves sync on Storage connectAlexander Tkachev
2016-08-24CLOUD: Make Storage::savesSync() restartAlexander Tkachev
If Storage::syncSaves() is called when sync is running, another sync would be automatically scheduled in the end of the current one. That could be helpful when we want to specify that we changed something during sync (created new save slot, for example).
2016-08-24CLOUD: Introduce CloudConfigHelperPeter Bozsó
2016-08-24CLOUD: Fix end of namespace comment in CloudManagerPeter Bozsó
2016-08-24CLOUD: Fix include in CloudManagerPeter Bozsó
2016-08-24CLOUD: Introduce kStoragePrefix in CloudManagerPeter Bozsó
2016-08-24CLOUD: Remove unnecessary blank lines in switch statementPeter Bozsó
2016-08-24CLOUD: Make enum StorageIDs' name singularPeter Bozsó
2016-08-24CLOUD: Force handling of all StorageIDs values in ↵Peter Bozsó
CloudManager::getStorageConfigName()
2016-08-24CLOUD: Fix getAccessToken()Alexander Tkachev
KEY and SECRET should now load before getAccessToken() uses them, so it should work now.
2016-08-24Fix DropboxStorage::codeFlowComplete()Peter Bozsó
2016-08-24CLOUD: Fix compilation error in savesyncrequest.hPeter Bozsó
"savessyncrequest.h:35:35: error: use of undeclared identifier 'UINT_MAX'"
2016-08-24GUI: Add EditText in StorageWizardDialogAlexander Tkachev
One can enter the code, press 'Connect' button and get a working Storage!
2016-08-24CLOUD: Add Request::date()Alexander Tkachev
Used in SavesSyncRequest to update Storage's last sync date.
2016-08-24CLOUD: Add ConnMan::urlEncode()Alexander Tkachev
Tried to use it everywhere I should've use it.
2016-08-24COMMON: Add String::asUint64()Alexander Tkachev
Instead of all these atoull() I've added everywhere.
2016-08-24GUI: Add Refresh button in Options Cloud tabAlexander Tkachev
Commit changes CloudManager and Storages so they would automatically refresh the fields when the could.
2016-08-24CLOUD: Update CloudManagerAlexander Tkachev
It now has methods to update Storage's information.
2016-08-24CLOUD: Update CloudManagerAlexander Tkachev
It now supports only one storage of each type. Only one Storage could be loaded to the memory as well. Options' Cloud tab now changes the Storage only when user pressed OK button, giving the ability to look through the Storages without actually changing them.
2016-08-24GUI: Add Cloud tab information labelsAlexander Tkachev
And corresponding stub implementations in CloudManager.
2016-08-24CLOUD: Update CloudManager and StorageAlexander Tkachev
* Storage::name(); * CloudManager::getStorageName(); * CloudManager::getStorageIndex(); * CloudManager::listStorages(); * CloudManager::switchStorage().
2016-08-24CLOUD: Minor GoogleDriveUploadRequest fixAlexander Tkachev
Just checked that out on cloud sync: Google Drive is officially supported!
2016-08-24CLOUD: Add GoogleDriveUploadRequestAlexander Tkachev
Includes NetworkReadStream PATCH method and Headers remembering feature.
2016-08-24CLOUD: Add GoogleDrive download-related requestsAlexander Tkachev
GoogleDriveDownloadRequest, which resolves file id and then downloads it with GoogleDriveStorage::downloadById(). GoogleDriveStreamFileRequest, which resolves file id and then returns file stream with GoogleDriveStorage::streamFileById(). This commit also adds GoogleDriveStorage::streamFileById() itself. A minor GoogleDriveResolveIdRequest fix added. With these one can download files from Google Drive.
2016-08-24CLOUD: Update downloading in StoragesAlexander Tkachev
Id should be used everywhere.
2016-08-24CLOUD: Update Requests to use StorageFile::id()Alexander Tkachev
Only two places to update, as others still require id resolving.
2016-08-24CLOUD: Update GoogleDriveStorage and StorageFileAlexander Tkachev
Because of the Google Drive StorageFile now contains yet another field, `id`. For other storages `id` == `path`, and thus all common Requests (such as SavesSyncRequest, DownloadFolderRequest, etc) must be using id() instead of path(). That way these Requests won't cause id resolving which could be quite slow (when you call it for all files in the folder, for example).
2016-08-24CLOUD: Update GoogleDriveCreateDirectoryRequestAlexander Tkachev
Now it also creates the "base" ScummVM directory if there is no such directory yet. This way SavesSyncRequest works fine when no "ScummVM" or "ScummVM/Saves" folder exist in the Google Drive.