aboutsummaryrefslogtreecommitdiff
path: root/backends/module.mk
AgeCommit message (Collapse)Author
2016-09-18CLOUD: Change the cloud icon to be updated by the main threadBastien Bouclet
The cloud manager registers itself as an event source as a mean to be polled periodically by the GUI or engine code. The periodical polling is used to update the OSD icon indicating background sync activity. Also move the cloud icon from ConnectionManager to CloudManager, allowing to decouple icon handling from network connections updates.
2016-09-10CLOUD: Move openUrl to OSystemThierry Crozat
2016-08-24CLOUD: Fix backends/module.mkAlexander Tkachev
MinGW failed to compile with the latest fix. Checked this fix with create_project for MSVC, MinGW's make, make under kubuntu and while building Android apk.
2016-08-24CLOUD: Fix makefilePeter Bozsó
2016-08-24CLOUD: Add Networking::Connection::isLimited()Alexander Tkachev
`false` everywhere by default, but works on Android (`true` if not Wi-Fi).
2016-08-24CLOUD: Move Dropbox to API v2Alexander Tkachev
We had a few places where their deprecated API v1 was used.
2016-08-24CLOUD: Add "/filesAJAX" sketchAlexander Tkachev
It works already, but still requires some polishing.
2016-08-24CLOUD: Add ListAjaxHandlerAlexander Tkachev
"/list" now returns JSON with directory information. Would be used in AJAX-based Files Manager.
2016-08-24CLOUD: Add URL opening for OS XPeter Bozsó
2016-08-24CLOUD: Add openurl-android.cppAlexander Tkachev
2016-08-24CLOUD: Fix module.mk for openurl-default.oAlexander Tkachev
It's now added to all the backends manually.
2016-08-24CLOUD: Add openUrl() for POSIXAlexander Tkachev
2016-08-24CLOUD: Add Networking::Browser::openUrl() sketchAlexander Tkachev
Only Windows' shellExecute() now.
2016-08-24CLOUD: Update GoogleDriveStorageAlexander Tkachev
It now derives from IdStorage, so lots of GoogleDrive*Request classes are removed and replaced with generic IdStorage*Request ones.
2016-08-24CLOUD: Add BoxUploadRequestAlexander Tkachev
2016-08-24CLOUD: Add IdDownloadRequest and IdStreamFileRequestAlexander Tkachev
Used for downloading files in Box.
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: Cleanup in HandlersAlexander Tkachev
Simplified some stuff here and there by using HandlerUtils static methods.
2016-08-24CLOUD: Add UploadFileClientHandlerAlexander Tkachev
Now Client reads the first headers block, then LocalWebserver decides which Handler to use. In case of "/upload", UploadFileHandler is used. But now it only knows the "path" parameter. If that's valid, actual UploadFileClientHandler is created, which reads the contents of the request and, when finds there an "upload_file" field, starts saving it in the directory specified by "path". With that we don't need temp files approach from Reader class.
2016-08-24CLOUD: Add UploadFileHandlerAlexander Tkachev
2016-08-24CLOUD: Fix minor Reader-related bugsAlexander Tkachev
2016-08-24CLOUD: Add "/download" handlerAlexander Tkachev
Now one can download files from the device through browser!
2016-08-24CLOUD: Move "/create" to separate HandlerAlexander Tkachev
It does redirect to "/files" on success, so user doesn't even see the strange "/create" URL at all. This commit is for keeping these handlers small, not making one (FilesPageHandler in this case) do everything.
2016-08-24CLOUD: Refactor LocalWebserverAlexander Tkachev
Its handlers are now more compact. This commit moves Handler classes in handlers\ directory. ResourceHandler ignores "hidden" files in the archive, and these are used as markup templates in IndexPageHandler and FilesPageHandler.
2016-08-24CLOUD: Replace USE_CLOUD with USE_LIBCURLAlexander Tkachev
In most cases that's the right one to check. USE_CLOUD is defined when either USE_LIBCURL or USE_SDL_NET are, which means if there is no curl, USE_CLOUD still could be defined and linking errors would appear.
2016-08-24CLOUD: Add IndexPageHandlerAlexander Tkachev
This commit also adds LocalWebserver's stopOnIdle(). That means server is not stopped immediately, but only when all clients are served.
2016-08-24CLOUD: Add GetClientHandlerAlexander Tkachev
That ClientHandler is made for responding GET requests. It calculates stream's length, it allows to specify response code and headers, it can be used to transfer any ReadStream.
2016-08-24CLOUD: Add Networking::ClientAlexander Tkachev
Keeps current client's state
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: Get rid of CloudConfigHelper, use kCloudDomain where approriatePeter Bozsó
2016-08-24CLOUD: Add CloudConfigHelper to module.mkAlexander Tkachev
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: 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 CloudIconAlexander Tkachev
To achieve smoother animation, ConnectionManager's timer now is 20 times more frequent. I'm encountering some strange libcurl.dll segfault problem when I close the application while some Requests are active. It's not CloudIcon-related, so it's more likely related to this 20 FPS timer. This problem shows up only in Visual Studio for me.
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.
2016-08-24CLOUD: Make CloudManager singletonAlexander Tkachev
It's needed to ::destroy() it in main().
2016-08-24CLOUD: Add OneDriveCreateDirectoryRequestAlexander Tkachev
2016-08-24CLOUD: Add DropboxCreateDirectoryRequestAlexander Tkachev
Also add CloudManager::testFeature(), because syncSaves() now works fine and I don't want to break it again and again with my testing requests.
2016-08-24CLOUD: Add OneDriveUploadRequestAlexander Tkachev
Doesn't support server's requested ranges yet. Commit also adds some PUT-related code in NetworkReadStream and CurlRequest.
2016-08-24CLOUD: Refactor RequestAlexander Tkachev
Added ErrorResponse and ErrorCallback. Each Request now has an ErrorCallback, which should be called instead of usual callback in case of failure.
2016-08-24CLOUD: Add DropboxUploadRequestAlexander Tkachev
2016-08-24CLOUD: Add SavesSyncRequest sketchAlexander Tkachev
Never tested it, actually. It requires Storage to implement upload() method and me to find some way to get saves' ReadStream. The saveTimestamps() and loadTimestamps() part should be tested, other parts should work fine.