From 99c2418d1a270c4496b21d6d6c8035b6ef73e8a1 Mon Sep 17 00:00:00 2001 From: Alexander Tkachev Date: Thu, 18 Jul 2019 23:10:49 +0700 Subject: GUI: Rewrite Cloud tab - StorageWizardDialog is removed, along with bmps it was using; - EditTextWidget now accepts custom font in constructor; - ScrollContainer scrollbar now jumps to top when content height changes so it's "overscrolled"; - IndexPageHandler now does not awaits for `code` GET-parameter, as local webserver is no longer used to connect Storages; - CloudManager and all corresponding Storages are updated to support disconnecting and to notify about successful connection. --- backends/cloud/googledrive/googledrivestorage.cpp | 9 +++++++-- backends/cloud/googledrive/googledrivestorage.h | 7 ++++++- 2 files changed, 13 insertions(+), 3 deletions(-) (limited to 'backends/cloud/googledrive') diff --git a/backends/cloud/googledrive/googledrivestorage.cpp b/backends/cloud/googledrive/googledrivestorage.cpp index 67d157748a..a6e17e6ad3 100644 --- a/backends/cloud/googledrive/googledrivestorage.cpp +++ b/backends/cloud/googledrive/googledrivestorage.cpp @@ -46,8 +46,8 @@ namespace GoogleDrive { GoogleDriveStorage::GoogleDriveStorage(Common::String token, Common::String refreshToken): IdStorage(token, refreshToken) {} -GoogleDriveStorage::GoogleDriveStorage(Common::String code) { - getAccessToken(code); +GoogleDriveStorage::GoogleDriveStorage(Common::String code, Networking::ErrorCallback cb) { + getAccessToken(code, cb); } GoogleDriveStorage::~GoogleDriveStorage() {} @@ -231,6 +231,11 @@ GoogleDriveStorage *GoogleDriveStorage::loadFromConfig(Common::String keyPrefix) return new GoogleDriveStorage(accessToken, refreshToken); } +void GoogleDriveStorage::removeFromConfig(Common::String keyPrefix) { + ConfMan.removeKey(keyPrefix + "access_token", ConfMan.kCloudDomain); + ConfMan.removeKey(keyPrefix + "refresh_token", ConfMan.kCloudDomain); +} + Common::String GoogleDriveStorage::getRootDirectoryId() { return "root"; } diff --git a/backends/cloud/googledrive/googledrivestorage.h b/backends/cloud/googledrive/googledrivestorage.h index 21e027c4a7..db47e7cd3c 100644 --- a/backends/cloud/googledrive/googledrivestorage.h +++ b/backends/cloud/googledrive/googledrivestorage.h @@ -58,7 +58,7 @@ protected: public: /** This constructor uses OAuth code flow to get tokens. */ - GoogleDriveStorage(Common::String code); + GoogleDriveStorage(Common::String code, Networking::ErrorCallback cb); virtual ~GoogleDriveStorage(); /** @@ -106,6 +106,11 @@ public: */ static GoogleDriveStorage *loadFromConfig(Common::String keyPrefix); + /** + * Remove all GoogleDriveStorage-related data from config. + */ + static void removeFromConfig(Common::String keyPrefix); + virtual Common::String getRootDirectoryId(); Common::String accessToken() const { return _token; } -- cgit v1.2.3