aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-08-24GUI: Add getOSDFormat() and make OSD 32 bppAlexander Tkachev
2016-08-24CLOUD: Fix ConnectionManager a littleAlexander Tkachev
I didn't like how FINISHED Requests were waiting until the next interateRequests() call to be removed when we could easily remove those after they changed their state in their handle().
2016-08-24CLOUD: Fix CloudIcon to use clearOSD()Alexander Tkachev
Now only icon is shown.
2016-08-24GUI: Add clearOSD() methodAlexander Tkachev
So one can erase everything from OSD and then blit something on it.
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-24GUI: Add copyRectToOSD()Alexander Tkachev
I was lazy to implement that in OpenGLGraphicsManager and I'm not sure it's implemented correctly in SurfaceSdlGraphicsManager, but it works for me.
2016-08-24CLOUD: Fix SavesSyncRequestAlexander Tkachev
Now it would finish with error if spawned Request is nullptr.
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: Document ConnectionManager's onDeleteCallbackAlexander Tkachev
2016-08-24GUI: Fix widget clippingEugene Sandulenko
2016-08-24GUI: Added animation classesEugene Sandulenko
2016-08-24GUI: Added transparency to PicWidgetsEugene Sandulenko
2016-08-24GUI: Implemented test point method to GuiObjectEugene Sandulenko
2016-08-24GUI: Added support for alphabitmaps in picbuttonsEugene Sandulenko
2016-08-24GUI: Switched GUI to draw on TransparentSurfaceEugene Sandulenko
2016-08-24GUI: Added empty dialog backgroundEugene Sandulenko
2016-08-24GUI: Implemented centering of dialog backgroundEugene Sandulenko
2016-08-24GUI: Added possibility to specify scale mode for AlphaBitmapsEugene Sandulenko
2016-08-24GUI: Plug NinePatch bitmaps into parserEugene Sandulenko
2016-08-24GUI: Implemented more modes to autoscaleEugene Sandulenko
2016-08-24GUI: Implemented alphabitmap autoscaleEugene Sandulenko
2016-08-24GUI: Implemented possibility to use alphabitmaps in GraphicsWidgetEugene Sandulenko
2016-08-24GUI: Added new alphabitmap image typeEugene Sandulenko
2016-08-24GUI: Added possibility to specify several state images for PicButtonWidgetEugene Sandulenko
2016-08-24GUI: Added support for PNG imagesEugene Sandulenko
2016-08-24GUI: Add mode to skip drawing of button for PicButtonEugene Sandulenko
2016-08-24CLOUD: Add mutexes in StorageAlexander Tkachev
2016-08-24CLOUD: Make CloudManager singletonAlexander Tkachev
It's needed to ::destroy() it in main().
2016-08-24CLOUD: Fix ConnectionManager's destructorAlexander Tkachev
It now terminates active Requests.
2016-08-24CLOUD: Implement Storage's isWorking()Alexander Tkachev
It now keeps track of how many Requests are running. To achieve that, we had to pass a callback to ConnectionManager, so each Request has a callback paired with it. If that's one of Storage's Requests, it has a callback, which would decrease a counter. When Storage adds a Request, it also increases a counter and passes that callback. Callback is called by ConnMan when Request is deleted. isWorking() returns true if there is at least one Request running.
2016-08-24CLOUD: Shorten Cloud APIAlexander Tkachev
touch() and isSyncing() are not needed. remove() is not needed too, but it could be used in the future.
2016-08-24CLOUD: Fix SavesSyncRequest to create saves folderAlexander Tkachev
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: Move download methods into StorageAlexander Tkachev
DownloadRequest and FolderDownloadRequest are using other Storage's methods. Thus, download() and downloadFolder() could be implemented in base Storage class.
2016-08-24CLOUD: Use uint64 in StorageInfoAlexander Tkachev
There was a warning regarding 25 GB constant. By the way, I'm not sure how to print uint64 (%llu is available in C99 only, and gcc produces a warning about that).
2016-08-24CLOUD: Make syncSaves() common for all StoragesAlexander Tkachev
As it uses SavesSyncRequest and this request is using Storage's upload(), download() and listDirectory(), there is no need to make storage-dependent version of that request and so method could be implemented in base Storage.
2016-08-24CLOUD: Add OneDrive::info()Alexander Tkachev
Unfortunately, OneDrive doesn't share quota information anymore because of some reason. I had to get as much information as I could.
2016-08-24CLOUD: Make SavesSyncRequest work with OneDriveAlexander Tkachev
It actually works fine, but small Storage::savesDirectoryPath() was added, because Dropbox's directories must start with a slash, and OneDrive's directories must not. Saves sync tested and it works fine with OneDrive.
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: Fix OneDriveTokenRefresherAlexander Tkachev
It was calling finish(), causing stack overflow. Some minor changes are added also.
2016-08-24CLOUD: Make SavesSyncRequest workAlexander Tkachev
It now actually read the "timestamps" file, loads and saves files as it should, ignores Dropbox's "not_found" error.
2016-08-24COMMON: Add SaveFileManager::openRawFile()Alexander Tkachev
It's needed for the cloud saves upload/sync feature.
2016-08-24CLOUD: Add ListDirectoryStatus structAlexander Tkachev
It contains flags to indicate whether Request was interrupted or failed, so dependent Requests may see that list is incomplete.
2016-08-24CLOUD: Make DropboxUploadRequest use "/upload" tooAlexander Tkachev
If file could be uploaded in one API call, no need to create a session (which requires at least two calls: to start and then to finish it).
2016-08-24CLOUD: Add UploadStatus structAlexander Tkachev
It contains not just "success" flag, but also "file" struct, so the caller can find out some information about uploaded file - like timestamp.
2016-08-24CLOUD: Add DropboxUploadRequestAlexander Tkachev
2016-08-24COMMON: Fix JSON to understand integers correctlyAlexander 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.