Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[feature/fileprovider] File Provider support (#67)
* - Move to feature/sync version of ios-sdk * - Replaced CoreManager and BookmarkManager with OCCoreManager and OCBookmarkManager - Upgraded bookmark deletion (and deletion of its vault) to being guarded as scheduled offline operation by OCCoreManager - Upgraded source base to take advantage of new instance properties for shared instances - Added file provider and file provider UI targets (WIP) * - add NSFileProviderItem protocol compliance to OCItem - remove template FileProviderItem * - First implementation of the file provider (WIP) - FileProviderInterfaceManager to manage the file provider from the app - For starters, the File Provider supports - browsing - thumbnails - Adapted project settings for keychain access group, app group, etc. - Made OCBookmark.shortName an actual read-only property - Updated app and file provider extension to take advantage of the latest ios-sdk improvements * - Update SDK * - Basic delete support (handling MC issues TBD) * - Add UIAlertController+OCConnectionIssue to turn multiple choice issues into alerts * - Add AsyncSequentialQueue class * - Update SDK - Add proof-of-concept "duplicate" and "rename" actions * - Fileprovider now supports - deletion - renaming - reparenting (moving) - creating directories - SDK-level bugfixes - for when the fileID of an item changed (update in metaData database was missing) - for the lack of a runloop on the extension main thread * - Make use of downloading capabilities in the app to allow viewing files (proof-of-concept) - Extend File Provider with ability to download requested files (non-functional atm, as the File Provider doesn't call the respective method) * - Update PocketSVG to latest - Adapt to ios-sdk API changes - Add code to recover background URL sessions - Add Mock build configuration and MockingAliases (which already turned out to be an approach that won't work, but saved here for playing/reference) * - File Provider can now download and open files - Removed Mock build configuration (no longer needed) * - Update ios-sdk to gain critical File Provider related changes * - Merge fixes to new API / formatting / broken project file * - Remove superfluous MockingAliases.swift file * - Download progress is now shown - Usernames are prepended before computed bookmark names (i.e. "admin @ demo.owncloud.org") in the bookmark list - ProgressSummarizer now removes completed progress objects and accurately computes progress - Support for OCCoreManager.postFileProviderNotifications - SDK updates - fixed warning * - Switching to ios-sdk/feature/filemgmt * Restructured file provider to take advantage of OCQuery's multi-level updates and supporting future offline capabilities * - Refactor FileProviderEnumerator to support multiple observers in every category * - Update SDK * - Fixed issue where new domains in the file provider would not be displayed - or only after a long delay - by moving the respective code to the main thread - Taking advantage of new OCCore functionality to signal changes * - Fix bugs and add missing code paths in FileProvider * - Reload bookmarks when first encountering an unknown bookmark (covers the case where the FileProvider runs while new bookmarks get added in the app) * - Update SDK, gaining automatic support for checking for updates on the server * - Background fetch and background URL session routing from app to SDk * - Update to latest SDK * - Fixed a deadlock in FileProvider - Added isDownloading, isDownloaded and contentModificationDate information to NSFileProviderItem support * - Adding certificate management to settings - Adding ThemeCertificateViewController, a version of OCCertificateViewController leveraging the themeing system - Update the app to use ThemeCertificateViewController instead of OCCertificateViewController - StaticTableViewController bugfix: now no longer crashes if a view controller, that has already been shown, is updated while not visible - Indentation fixes * - Add TextViewController to easily display text and attributed text - Add Acknowledgements to settings that compiles and shows the license texts provided through license extensions - Add build step to copy PocketSVG license into the resources folder - Add license extension to supply the PocketSVG license - Rename build steps to be more descriptive - Fix typos * - Updated SDK * - Update to latest SDK - display icon in ClientItemCell's at 50% transparent if an item is a placeholder * Added the Provisioning Profiles of the Document Provider on the Fastfile for AdHoc distributionOC * Disabled the automatic code signing * Setted the project as not automatic and setted the right certificates * - FileProvider changes - Modernized to use new OCSyncExec macros for more clarity, finding and fixing timing bugs along the way - Stopped removing files in -stopProvidingItemAtURL - Added support for importing documents (=> uploading) - Updated to newer SDK * Version Bump to 57 * Version Bump to 59 * - OCMockingManager extension to support adding mocking blocks by passing [location : block] dictionaries from Swift code * - Updated SDK - Fixed warnings after switching to Xcode 10 * - Updated for new OCCore.hostHasFileProvider / OCHasFileProvider feature * - SDK update - Fixing a typo * - Updated FileProvider for OCCore.hostHasFileProvider - Added support for uploading edited/modified files to FileProvider - Updated SDK * Fixed a compilation issue when generate a build on bitrise * - Adapting to nullability-annotated API changes * - Ensures that issues and alerts are presented even if the ClientRootViewController already presents a view controller * - Update SDK * - Providing more item status metadata to the File Provider - Include username in autogenerated bookmark name as well - Fix warning in ClientQueryViewController - Updated SDK * SDK update * - SDK update * - File Provider changes - clarified which comments and TODOs are from Apple template comments - clean up FileProviderExtensionThumbnailRequest and fix an issue in it - Make sure "Certificates" appears under all passcode-related options in Security section in settings * - Adapt Viewer to OCExtension nullability changes, fixing a crash in matching with the Acknowledgements view in Settings * - Fix status badge in upper-right * - Improvement: when adding a bookmark, hitting the Return key in the URL field triggers the "Continue" button * - Update to latest SDK - Adaptions to OCAppIdentity nullability update - Making the git commit available through LastGitCommit() throughout the project - Fix git commit info in the project file (was broken since switching to Xcode 10) - Add beta warning (comes up whenever the git commit changes) * - Change warning text - Commit accidentally uncommited changes that were meant to be commit with the previous commit * - Fix commit that external/PocketSVG is targeting - Fix indentation in several files - Change type of ThemeCollectionStyle to String and start implementing a section for users to choose between theme styles * - Added ThemeStyle - encapsulates all information needed to build and customize a ThemeCollection - preliminary support for colorPath=#aabbcc style theme customization - uses OCExtension to keep track of styles, determine the default style and allow overriding by vendor styles - interface to request the defaultStyle and set a preferredStyle - Added "User Interface" preferences - Section "Theme" allows picking a ThemeStyle - Added ThemeColllection-switching method to Theme - Made ThemeCollectionStyle iterable - Moved "Recommend to friend" and "Send feedback" to new VendorServices class - Removed theme switching code from "Help" button and wired it to "Send feedback" - Extended StaticTableViewRow with new row type for value settings - Added String extension to convert "#aabbcc"-style strings into a UIColor - Fixed indenation of some legal notices - Various other minor improvements * - Cleanup * - Add missing localizations - Change "Help" to "Feedback" - Change feedback email address and subject to include "beta" * Version Bump to 76 * Version Bump to 77 * Version Bump to 78 * - Updated SDK with fixes for recognizing remotely made file name changes * - Update to latest ios-sdk - Added "app.show-beta-warning" configuration point, adding an "oc:show-beta-warning" environment variable and setting it to "false" (both without quotes) will disable the beta warning * - File Provider: - update SDK to include important bugfixes, so folders can be chosen in "Save to Files" - make root folder item return the proper identifier expected by iOS - add additional debug info to output - creating a folder in root directory now works * - Add support for OCLogger improvements - Move from NSLog to OCLogger * - Add user interface for logging settings, incl.: - log level - privacy mode - individual log writers - resetting the log file - exporting the log file * - Add ownCloudMocking.framework to ownCloud tests * - Add early logger initialization - Move "Off" log level option to the end so that the order of levels aligns with the level of filtering / message supression * Version Bump to 79 * - Merge improvements from feature/misc back into feature/fileprovider * - Fix Info.plist overlooked merge conflict * - Fix ios-sdk branch reference in gitmodules * - Remove FileProviderUI (for now) from the app bundle - Return authentication error if no domain.identifier is provided (=> shown for "ownCloud" item in file provider that shows up when no account has yet been added) * - Add support for favoriteRank and tagData based on new OCItem.localAttributes feature * - Add File Provider tagData format description (comment in FileProviderExtension) * - FileProvider improvements: - itemForIdentifier:error: now returns the proper error for unknown identifiers - document import improvements: - detects uploads from our own vault and makes sure these files are copied, not moved to import - detects local name collissions (=> duplicate in Files app works now because of this) - Updated ios-sdk * - First attempt at adding server-side collission error reporting via -[OCItem setUploadingError:] when importing files * - Updated to latest ios-sdk, containing important bugfixes for file uploads * - Move local attributes to new OCCore.updateItem API * - [FileProviderEnumerator queryHasChangesAvailable:] no longer (erroneously, from the earliest days of development) sends File Provider change signals when the query state becomes idle, often ending in an infinite loop * - Make File Provider also return YES for isMostRecentVersionDownloaded on items if the item in question is currently uploading, as it is likely to be the next "most-recent" version of the file, soon * - Add support for cancelling downloads initiated via the File Provider * - Translate ownCloud permissions to FileProvider permissions * - Update SDK * - Updated SDK * - Updated SDK * - Plug memory leaks in app * - Make core weak for ClientRootViewController - Add missing OCHasFileProvider key to File Provider Info.plist - Set memory configuration to minimum for File Provider - Update SDK * - Fix PocketSVG commit pointer * - Reconnect PocketSVG to GitHub master latest commit * Version Bump to 81 * - Transfer remaining set of memory leak fixes from memleaks branch * - Ensure File Provider Domains (which represent OCBookmarks) have unique names - Optimize OCBookmark.shortName * - Update SDK * - Added detection of name conflicts with existing items for creating folders - Addresses issue where folders couldn't be duplicated in the Files app
- Loading branch information