diff options
| author | Alexander Tkachev | 2019-07-27 22:44:15 +0700 |
|---|---|---|
| committer | Matan Bareket | 2019-07-30 14:51:41 -0400 |
| commit | f6a17e679f4fac2fda21dc7f64565a0dc4a10ca1 (patch) | |
| tree | 115b53d284e100ae04914ac90c1a4823ef95fb4f /backends/cloud/googledrive | |
| parent | 85431c39bf191725910703f699fe95da595f6adf (diff) | |
| download | scummvm-rg350-f6a17e679f4fac2fda21dc7f64565a0dc4a10ca1.tar.gz scummvm-rg350-f6a17e679f4fac2fda21dc7f64565a0dc4a10ca1.tar.bz2 scummvm-rg350-f6a17e679f4fac2fda21dc7f64565a0dc4a10ca1.zip | |
CLOUD: Ask user to manually enable Storage
For more security, newly connected Storage only gets username/used space
information and is disabled until user manually presses the button.
Diffstat (limited to 'backends/cloud/googledrive')
| -rw-r--r-- | backends/cloud/googledrive/googledrivestorage.cpp | 8 | ||||
| -rw-r--r-- | backends/cloud/googledrive/googledrivestorage.h | 2 |
2 files changed, 6 insertions, 4 deletions
diff --git a/backends/cloud/googledrive/googledrivestorage.cpp b/backends/cloud/googledrive/googledrivestorage.cpp index a6e17e6ad3..2049d808c4 100644 --- a/backends/cloud/googledrive/googledrivestorage.cpp +++ b/backends/cloud/googledrive/googledrivestorage.cpp @@ -43,8 +43,8 @@ namespace GoogleDrive { #define GOOGLEDRIVE_API_FILES "https://www.googleapis.com/drive/v3/files" #define GOOGLEDRIVE_API_ABOUT "https://www.googleapis.com/drive/v3/about?fields=storageQuota,user" -GoogleDriveStorage::GoogleDriveStorage(Common::String token, Common::String refreshToken): - IdStorage(token, refreshToken) {} +GoogleDriveStorage::GoogleDriveStorage(Common::String token, Common::String refreshToken, bool enabled): + IdStorage(token, refreshToken, enabled) {} GoogleDriveStorage::GoogleDriveStorage(Common::String code, Networking::ErrorCallback cb) { getAccessToken(code, cb); @@ -63,6 +63,7 @@ bool GoogleDriveStorage::canReuseRefreshToken() { return true; } void GoogleDriveStorage::saveConfig(Common::String keyPrefix) { ConfMan.set(keyPrefix + "access_token", _token, ConfMan.kCloudDomain); ConfMan.set(keyPrefix + "refresh_token", _refreshToken, ConfMan.kCloudDomain); + saveIsEnabledFlag(keyPrefix); } Common::String GoogleDriveStorage::name() const { @@ -228,12 +229,13 @@ GoogleDriveStorage *GoogleDriveStorage::loadFromConfig(Common::String keyPrefix) Common::String accessToken = ConfMan.get(keyPrefix + "access_token", ConfMan.kCloudDomain); Common::String refreshToken = ConfMan.get(keyPrefix + "refresh_token", ConfMan.kCloudDomain); - return new GoogleDriveStorage(accessToken, refreshToken); + return new GoogleDriveStorage(accessToken, refreshToken, loadIsEnabledFlag(keyPrefix)); } void GoogleDriveStorage::removeFromConfig(Common::String keyPrefix) { ConfMan.removeKey(keyPrefix + "access_token", ConfMan.kCloudDomain); ConfMan.removeKey(keyPrefix + "refresh_token", ConfMan.kCloudDomain); + removeIsEnabledFlag(keyPrefix); } Common::String GoogleDriveStorage::getRootDirectoryId() { diff --git a/backends/cloud/googledrive/googledrivestorage.h b/backends/cloud/googledrive/googledrivestorage.h index db47e7cd3c..792c30a99f 100644 --- a/backends/cloud/googledrive/googledrivestorage.h +++ b/backends/cloud/googledrive/googledrivestorage.h @@ -31,7 +31,7 @@ namespace GoogleDrive { class GoogleDriveStorage: public Id::IdStorage { /** This private constructor is called from loadFromConfig(). */ - GoogleDriveStorage(Common::String token, Common::String refreshToken); + GoogleDriveStorage(Common::String token, Common::String refreshToken, bool enabled); /** Constructs StorageInfo based on JSON response from cloud. */ void infoInnerCallback(StorageInfoCallback outerCallback, Networking::JsonResponse json); |
