aboutsummaryrefslogtreecommitdiff
path: root/backends/cloud/googledrive
AgeCommit message (Collapse)Author
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-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 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.
2016-08-24CLOUD: Make GoogleDriveResolveIdRequest case-insensitiveAlexander Tkachev
2016-08-24CLOUD: Fix GoogleDriveStorage to work with root folderAlexander Tkachev
Now it needs another scope and uses "root" instead of "appDataFolder".
2016-08-24CLOUD: Add GoogleDriveListDirectoryRequestAlexander Tkachev
When listing directories, you get a list of StorageFiles, which path() is actually Google Drive id. Thus, if you list a directory recursively, you won't be able to determine whether all files are within one directory or have some hierarchy. I'd fix that as soon as it would be needed.
2016-08-24CLOUD: Add GoogleDriveCreateDirectoryAlexander Tkachev
Now we can create directories in Google Drive by path, not parent id + directory name!
2016-08-24CLOUD: Add GoogleDriveResolveIdRequestAlexander Tkachev
GoogleDriveResolveIdRequest gets a lowercase path and searches for the specified file's id. To do that it lists path's subdirectories one by one with GoogleDriveListDirectoryByIdRequest. GoogleDriveListDirectoryByIdRequest gets a Google Drive id and lists that directory (not recursively).
2016-08-24CLOUD: Add GoogleDriveStorageAlexander Tkachev
It has its own GoogleDriveTokenRefresher and knows how to do info(). This commit also contains JSON int -> long long int fix and CurlJsonRequest '\n' -> ' ' fix.