-
Notifications
You must be signed in to change notification settings - Fork 131
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[feature/fp-series-2] File Provider improvements #167
Conversation
|
f669ae8
to
05ec52e
Compare
Codecov Report
@@ Coverage Diff @@
## master #167 +/- ##
==========================================
+ Coverage 48.43% 48.98% +0.54%
==========================================
Files 99 98 -1
Lines 8178 8207 +29
==========================================
+ Hits 3961 4020 +59
+ Misses 4217 4187 -30
Continue to review full report at Codecov.
|
After first Files App iteration, some pending stuff (improvements) and new features to be posted here:
|
- Fix Swift Lint warnings in new UI testing code
Is this the right place to report issues with the file provider / Files app integration in the current TestFlight build, or is there a preferred channel? |
@kopischke here is the right place. Post your comment or issue, and we will track the progress and status here: #167 (comment) |
I have the following issues to report with the current TestFlight version of ownCloud (build 85):
|
@kopischke Thanks for reporting these issues! To get a better idea on where to look, if you have some time, answers to these questions would help me a great deal: Regarding issue 1: are the folders shown in the video frequently updated by multiple users - f.ex. while someone else modifying a file while you're trying to select a folder? Regarding issue 2: is this to a local or a remote server? Regarding issue 3: does this happen for all files, right away? Or only after some other operation seemingly didn't succeed? Does re-creating the bookmark solve the issue? Regarding issue 4: Thanks for reporting! This is likely a side effect of the File Provider not yet providing a Working Set to the Files app (which expects to find all favorited items in that). Thanks! |
- maintenance mode support - replacing uses of reachability monitor with OCCore.connectionStatus
- Updated to latest SDK
- App now logs current log settings at launch
…reloading when its view controller is not "visible": - no longer uses items from table view cells to initiate actions - detects if UITableView.reloadData is set to do nothing and repeats the call in viewWillAppear - The fixed issue was causing #178 and possibly others
… make sure it's only built, linked to and copied in the ownCloudTests target
Yeah, sure, and sorry for the delay.
Shared with and occasionally updated by other users, yes. Not at the time I encountered the issue, no (to my best knowledge). However, we also access the same instance via Webdrive on our desktop machines; these may be polling (but should not be updating anything) rather aggressively…
Remote (large ownCloud instance managed on behalf of several German universities).
All files, right away, independently of if I start the download in Files or in the ownCloud app (the status feedback is consistent across both apps, but the net effect is stalling). Not sure what you mean by “re-creating the bookmark”.
Can’t comment on that, but I would be glad to see the issue solved: the ownCloud instance I use is my main work cloud, so Favourites are a much needed feature. |
91bb032
to
2132b77
Compare
- Stop CocoaPods from sending statistics by adding a line to the Podfile turning this off
- Updated SDK fixing a lot of issues
…dded OnMainThread(after: timeInterval)
…received by iOS and the results that were returned
About the sanity check performed to Files App (208733c):
|
I tried with Pages and could (partially) reproduce it: the template I chose was uploaded to the ownCloud server, but when I made changes and tried to save them, I got an error "file does not exist". The underlying issue seems to be that iOS / Pages expects that it can keep writing to the location that was returned from the File Provider's Right now, the OC FileProvider returns a placeholder item here, so the location of the file is Once the upload is finished, the placeholder item is replaced by the actual item on the server, but this also changes the location of the file to If the upload finishes before the app writes changes, Possible solutions:
I'm not sure what's causing this as the FileProvider provides the necessary information to iOS. From what I have been able to observe, progress information is most likely available when doing uploads inside the Files app itself.
I have not been able to reproduce this with 208733c . Please send me a log so I can have a look.
Likewise, please also send me a log for this.
And another log for this, too :) |
…ith the placeholder, but only when upload has completed - and then return the final item
Let's go for some tests with 6a5581d
|
@jesmrec After discussing the issue with @DeepDiver1975, we came to the conclusion that option 3 is not possible. So we have option 1 implemented in |
option 1 is working fine in 6a5581d. |
@@ -45,20 +45,57 @@ - (instancetype)init | |||
OCAppIdentity.sharedAppIdentity.appGroupIdentifier = bundleInfoDict[@"OCAppGroupIdentifier"]; | |||
|
|||
if (self = [super init]) { | |||
_fileManager = [[NSFileManager alloc] init]; | |||
_fileManager = [NSFileManager new]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@felix-schwarz I find alloc / init more explicit but it's a matter of personal preference I guess
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Until recently, I used to be in the alloc
/ init
camp, too. But since I started writing more and more Swift code, alloc
/ init
reminded me of allocWithZone:
and felt outdated. FWIW new
has also been around since macOS 10.0. It really boils down to personal preference as you say. :)
@@ -100,19 +100,13 @@ class MoreViewHeader: UIView { | |||
labelContainerView.bottomAnchor.constraint(lessThanOrEqualTo: self.safeAreaLayoutGuide.bottomAnchor, constant: -20) | |||
]) | |||
|
|||
titleLabel.attributedText = NSAttributedString(string: item.name, attributes: [NSAttributedString.Key.font: UIFont.systemFont(ofSize: 17, weight: .semibold)]) | |||
titleLabel.attributedText = NSAttributedString(string: item.name ?? "", attributes: [NSAttributedString.Key.font: UIFont.systemFont(ofSize: 17, weight: .semibold)]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@felix-schwarz minor complain.. magic number 17 could be replaced with constant. Would make sense if this font size is used in other places..
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I totally agree. The Theme-system in the app should also provide styles like this, but this is outside the scope of the file provider. I see an opportunity to standardize these styles alongside making other Theme
changes in feature/branded-login
(#168).
* - Minor memory optimizations - Updated to latest SDK * - Save changes prior to merge with master * - Convert to Swift 4.2 * - Further Swift 4.2 changes * - Update to latest SDK develop commit * - Adapting APP to latest SDK changes - maintenance mode support - replacing uses of reachability monitor with OCCore.connectionStatus * - Added back ownCloudUI.framework to copy phase of ownCloud target - Updated to latest SDK * - Add support for OCLogToggle in Settings - App now logs current log settings at launch * - Fix issues in ClientQueryViewController related to UITableView not reloading when its view controller is not "visible": - no longer uses items from table view cells to initiate actions - detects if UITableView.reloadData is set to do nothing and repeats the call in viewWillAppear - The fixed issue was causing #178 and possibly others * - Remove last traces of OCMocking.framework from ownCloud app target, make sure it's only built, linked to and copied in the ownCloudTests target * - Fix EarlGrey/CocoaPods workspace / build errors * - Adopt new OCLogger tags APIs in Log.swift and FileProviderExtension * - Update SDK * - Remove superfluous [FP] from log message * - Make sure DisplayViewController uses the updated version of an item after downloading it instead of the (now) outdated original version * - Update to latest SDK * - Fixing thumbnail aspect ratio and removing duplicate code in NamingViewController (#141) * - Update SDK * - Exit editing mode in the server list when the user selects an existing or adds a new bookmark (as reported by @mneuwert) * - Adapt app code base to change in OCError Swift conversion (following OCErrorAuthorizationCancelled typo correction) * - Fix #152: if the user cancels OAuth2, an error is no longer shown (and errors are better to read with recent SDK updates) * - Update to latest SDK * - Make ProgressSummarizer only consider Progress objects with descriptions, resolving "ghost" progress bars without any information in them * - Adapt to change of name of OCConnectionIssue to OCIssue * - Update to latest SDK - ConnectionIssueViewController - added option to provide a block to be called when dismissal has finished - normalize code formatting - UIAlertController+OCIssue - added option to provide a completionHandler that's called when the user made a choice - ClientRootViewController - switched issue and alert presentation to use a AsyncSequentialQueue to present them in order and not on top of each other - fixed a bug where a UIViewController that's in the process of being dismissed led to a failure to present alerts and issues * - Make DisplayViewController use OCCoreOptionReturnImmediatelyIfOfflineOrUnavailable and fix a typo (#179) * - Added priority summaries to ProgressSummarizer - Fixed a crash bug in ImageDisplayViewController - Removed core connection status interpretation from ClientQueryViewController - Added core connection status tracking to ClientRootViewController and utilize priority summaries to display offline or server in maintenance mode status messages * - Fix an issue where "Offline." was shortly shown when logging in - Switch to utilizing short connection status descriptions coming straight from the SDK's connection signal providers - Adapt Localizable.strings accordingly * - Add *.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist to .gitignore * - Updated ios-sdk * - Made FileProviderEnumerator use an OCQuery that includes the root item (fixes #203) - Made FileProviderExtension observe the domain property and trigger an initial query of the root directory when none has even been done before (fixes #205) * - Adapted to latest round of nullability additions in the SDK - Fixing potential crash bugs in DisplayHostViewController, ConnectionIssueViewController, SortMethod and others - Update actions - make use of .completed() instead of calling the completionHandler directly - fixing multi-item support for several actions (completionHandler would previously get executed once for every item instead of once) - ClientDirectoryPickerViewController now calls the completinHandler even on cancelation - Cleaned up OCIssue+Extension and OCItem+Extension - Replacing AsyncSequentialQueue with OCAsyncSequentialQueue * - Update SDK * - Updated ios-sdk * - Update ios-sdk with IPC fixes * - Adapt tests to SDK changes (all tests pass) - Stop CocoaPods from sending statistics by adding a line to the Podfile turning this off * - Present cache contents while waiting for a reply from the server - Updated SDK fixing a lot of issues * - Replacing DispatchQueue.main.async* with OnMainThread and a newly added OnMainThread(after: timeInterval) * - Add verbose logging to FileProviderExtension to track the commands received by iOS and the results that were returned * - Temporary workaround: make importFileFromURL: not return directly with the placeholder, but only when upload has completed - and then return the final item * - Switching ios-sdk to updated master branch
* - Minor memory optimizations - Updated to latest SDK * - Save changes prior to merge with master * - Convert to Swift 4.2 * - Further Swift 4.2 changes * - Update to latest SDK develop commit * - Adapting APP to latest SDK changes - maintenance mode support - replacing uses of reachability monitor with OCCore.connectionStatus * - Added back ownCloudUI.framework to copy phase of ownCloud target - Updated to latest SDK * - Add support for OCLogToggle in Settings - App now logs current log settings at launch * - Fix issues in ClientQueryViewController related to UITableView not reloading when its view controller is not "visible": - no longer uses items from table view cells to initiate actions - detects if UITableView.reloadData is set to do nothing and repeats the call in viewWillAppear - The fixed issue was causing #178 and possibly others * - Remove last traces of OCMocking.framework from ownCloud app target, make sure it's only built, linked to and copied in the ownCloudTests target * - Fix EarlGrey/CocoaPods workspace / build errors * - Adopt new OCLogger tags APIs in Log.swift and FileProviderExtension * - Update SDK * - Remove superfluous [FP] from log message * - Make sure DisplayViewController uses the updated version of an item after downloading it instead of the (now) outdated original version * - Update to latest SDK * - Fixing thumbnail aspect ratio and removing duplicate code in NamingViewController (#141) * - Update SDK * - Exit editing mode in the server list when the user selects an existing or adds a new bookmark (as reported by @mneuwert) * - Adapt app code base to change in OCError Swift conversion (following OCErrorAuthorizationCancelled typo correction) * - Fix #152: if the user cancels OAuth2, an error is no longer shown (and errors are better to read with recent SDK updates) * - Update to latest SDK * - Make ProgressSummarizer only consider Progress objects with descriptions, resolving "ghost" progress bars without any information in them * - Adapt to change of name of OCConnectionIssue to OCIssue * - Update to latest SDK - ConnectionIssueViewController - added option to provide a block to be called when dismissal has finished - normalize code formatting - UIAlertController+OCIssue - added option to provide a completionHandler that's called when the user made a choice - ClientRootViewController - switched issue and alert presentation to use a AsyncSequentialQueue to present them in order and not on top of each other - fixed a bug where a UIViewController that's in the process of being dismissed led to a failure to present alerts and issues * - Make DisplayViewController use OCCoreOptionReturnImmediatelyIfOfflineOrUnavailable and fix a typo (#179) * - Added priority summaries to ProgressSummarizer - Fixed a crash bug in ImageDisplayViewController - Removed core connection status interpretation from ClientQueryViewController - Added core connection status tracking to ClientRootViewController and utilize priority summaries to display offline or server in maintenance mode status messages * - Fix an issue where "Offline." was shortly shown when logging in - Switch to utilizing short connection status descriptions coming straight from the SDK's connection signal providers - Adapt Localizable.strings accordingly * - Add *.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist to .gitignore * - Updated ios-sdk * - Made FileProviderEnumerator use an OCQuery that includes the root item (fixes #203) - Made FileProviderExtension observe the domain property and trigger an initial query of the root directory when none has even been done before (fixes #205) * - Adapted to latest round of nullability additions in the SDK - Fixing potential crash bugs in DisplayHostViewController, ConnectionIssueViewController, SortMethod and others - Update actions - make use of .completed() instead of calling the completionHandler directly - fixing multi-item support for several actions (completionHandler would previously get executed once for every item instead of once) - ClientDirectoryPickerViewController now calls the completinHandler even on cancelation - Cleaned up OCIssue+Extension and OCItem+Extension - Replacing AsyncSequentialQueue with OCAsyncSequentialQueue * - Update SDK * - Updated ios-sdk * - Update ios-sdk with IPC fixes * - Adapt tests to SDK changes (all tests pass) - Stop CocoaPods from sending statistics by adding a line to the Podfile turning this off * - Present cache contents while waiting for a reply from the server - Updated SDK fixing a lot of issues * - Replacing DispatchQueue.main.async* with OnMainThread and a newly added OnMainThread(after: timeInterval) * - Add verbose logging to FileProviderExtension to track the commands received by iOS and the results that were returned * - Temporary workaround: make importFileFromURL: not return directly with the placeholder, but only when upload has completed - and then return the final item * - Switching ios-sdk to updated master branch
* Added UIViewController extension allowing to swap tabBar for toolbar * Hiding ‘more’ button when cell is configured for edit mode * Laid down the foundation for multi-selection and related actions * Multi-selection works with “Move” and “Delete” actions * Re-added upload button * Exchanging tab-bar with toolbar not animated * Fixed margins for devices with safe area guides (iPhoneX etc.) * Avoiding visual glitches by adding a toolbar in a proper position in the view hierarchy * Showing upload button only when appropriate * exclude app ownCloudTests from lint rules (#186) * Add notification to update version numbers on oc.org/download (#201) * [feature/fp-series-2] File Provider improvements (#167) * - Minor memory optimizations - Updated to latest SDK * - Save changes prior to merge with master * - Convert to Swift 4.2 * - Further Swift 4.2 changes * - Update to latest SDK develop commit * - Adapting APP to latest SDK changes - maintenance mode support - replacing uses of reachability monitor with OCCore.connectionStatus * - Added back ownCloudUI.framework to copy phase of ownCloud target - Updated to latest SDK * - Add support for OCLogToggle in Settings - App now logs current log settings at launch * - Fix issues in ClientQueryViewController related to UITableView not reloading when its view controller is not "visible": - no longer uses items from table view cells to initiate actions - detects if UITableView.reloadData is set to do nothing and repeats the call in viewWillAppear - The fixed issue was causing #178 and possibly others * - Remove last traces of OCMocking.framework from ownCloud app target, make sure it's only built, linked to and copied in the ownCloudTests target * - Fix EarlGrey/CocoaPods workspace / build errors * - Adopt new OCLogger tags APIs in Log.swift and FileProviderExtension * - Update SDK * - Remove superfluous [FP] from log message * - Make sure DisplayViewController uses the updated version of an item after downloading it instead of the (now) outdated original version * - Update to latest SDK * - Fixing thumbnail aspect ratio and removing duplicate code in NamingViewController (#141) * - Update SDK * - Exit editing mode in the server list when the user selects an existing or adds a new bookmark (as reported by @mneuwert) * - Adapt app code base to change in OCError Swift conversion (following OCErrorAuthorizationCancelled typo correction) * - Fix #152: if the user cancels OAuth2, an error is no longer shown (and errors are better to read with recent SDK updates) * - Update to latest SDK * - Make ProgressSummarizer only consider Progress objects with descriptions, resolving "ghost" progress bars without any information in them * - Adapt to change of name of OCConnectionIssue to OCIssue * - Update to latest SDK - ConnectionIssueViewController - added option to provide a block to be called when dismissal has finished - normalize code formatting - UIAlertController+OCIssue - added option to provide a completionHandler that's called when the user made a choice - ClientRootViewController - switched issue and alert presentation to use a AsyncSequentialQueue to present them in order and not on top of each other - fixed a bug where a UIViewController that's in the process of being dismissed led to a failure to present alerts and issues * - Make DisplayViewController use OCCoreOptionReturnImmediatelyIfOfflineOrUnavailable and fix a typo (#179) * - Added priority summaries to ProgressSummarizer - Fixed a crash bug in ImageDisplayViewController - Removed core connection status interpretation from ClientQueryViewController - Added core connection status tracking to ClientRootViewController and utilize priority summaries to display offline or server in maintenance mode status messages * - Fix an issue where "Offline." was shortly shown when logging in - Switch to utilizing short connection status descriptions coming straight from the SDK's connection signal providers - Adapt Localizable.strings accordingly * - Add *.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist to .gitignore * - Updated ios-sdk * - Made FileProviderEnumerator use an OCQuery that includes the root item (fixes #203) - Made FileProviderExtension observe the domain property and trigger an initial query of the root directory when none has even been done before (fixes #205) * - Adapted to latest round of nullability additions in the SDK - Fixing potential crash bugs in DisplayHostViewController, ConnectionIssueViewController, SortMethod and others - Update actions - make use of .completed() instead of calling the completionHandler directly - fixing multi-item support for several actions (completionHandler would previously get executed once for every item instead of once) - ClientDirectoryPickerViewController now calls the completinHandler even on cancelation - Cleaned up OCIssue+Extension and OCItem+Extension - Replacing AsyncSequentialQueue with OCAsyncSequentialQueue * - Update SDK * - Updated ios-sdk * - Update ios-sdk with IPC fixes * - Adapt tests to SDK changes (all tests pass) - Stop CocoaPods from sending statistics by adding a line to the Podfile turning this off * - Present cache contents while waiting for a reply from the server - Updated SDK fixing a lot of issues * - Replacing DispatchQueue.main.async* with OnMainThread and a newly added OnMainThread(after: timeInterval) * - Add verbose logging to FileProviderExtension to track the commands received by iOS and the results that were returned * - Temporary workaround: make importFileFromURL: not return directly with the placeholder, but only when upload has completed - and then return the final item * - Switching ios-sdk to updated master branch * Version Bump to 99 * [tx] updated from transifex * Added several languages (#231) * Added the languages cs_CZ de de_DE en_GB ko mk nb_NO nn_NO pt_BR pt_PT ru sq th_TH zh_CN * Fixed a compilation issue because CZ file * Updated the commit of the SDK * [tx] updated from transifex * Version Bump to 100 * Copy action (#207) * - Made the Copy action. - Fix some UI Color scheme inconsistencies. * - Made the 'Copy here' button respect the original title * - SDK Update * - Fix for a lint warning * Offline behaviour in Open In Action (#227) * -Add proper message when no connection and user tries to make the open in action * - Localize the error message. * - Made the name of the app to be the app's name in the bundle * - Changed the three dots bar button in the file list to a '+'. (#206) - Made UISegmentedControll to be Themeable. * Version Bump to 101 * [tx] updated from transifex * [tx] updated from transifex * Laid down the foundation for multi-selection and related actions * Multi-selection works with “Move” and “Delete” actions * [feature/fp-series-2] File Provider improvements (#167) * - Minor memory optimizations - Updated to latest SDK * - Save changes prior to merge with master * - Convert to Swift 4.2 * - Further Swift 4.2 changes * - Update to latest SDK develop commit * - Adapting APP to latest SDK changes - maintenance mode support - replacing uses of reachability monitor with OCCore.connectionStatus * - Added back ownCloudUI.framework to copy phase of ownCloud target - Updated to latest SDK * - Add support for OCLogToggle in Settings - App now logs current log settings at launch * - Fix issues in ClientQueryViewController related to UITableView not reloading when its view controller is not "visible": - no longer uses items from table view cells to initiate actions - detects if UITableView.reloadData is set to do nothing and repeats the call in viewWillAppear - The fixed issue was causing #178 and possibly others * - Remove last traces of OCMocking.framework from ownCloud app target, make sure it's only built, linked to and copied in the ownCloudTests target * - Fix EarlGrey/CocoaPods workspace / build errors * - Adopt new OCLogger tags APIs in Log.swift and FileProviderExtension * - Update SDK * - Remove superfluous [FP] from log message * - Make sure DisplayViewController uses the updated version of an item after downloading it instead of the (now) outdated original version * - Update to latest SDK * - Fixing thumbnail aspect ratio and removing duplicate code in NamingViewController (#141) * - Update SDK * - Exit editing mode in the server list when the user selects an existing or adds a new bookmark (as reported by @mneuwert) * - Adapt app code base to change in OCError Swift conversion (following OCErrorAuthorizationCancelled typo correction) * - Fix #152: if the user cancels OAuth2, an error is no longer shown (and errors are better to read with recent SDK updates) * - Update to latest SDK * - Make ProgressSummarizer only consider Progress objects with descriptions, resolving "ghost" progress bars without any information in them * - Adapt to change of name of OCConnectionIssue to OCIssue * - Update to latest SDK - ConnectionIssueViewController - added option to provide a block to be called when dismissal has finished - normalize code formatting - UIAlertController+OCIssue - added option to provide a completionHandler that's called when the user made a choice - ClientRootViewController - switched issue and alert presentation to use a AsyncSequentialQueue to present them in order and not on top of each other - fixed a bug where a UIViewController that's in the process of being dismissed led to a failure to present alerts and issues * - Make DisplayViewController use OCCoreOptionReturnImmediatelyIfOfflineOrUnavailable and fix a typo (#179) * - Added priority summaries to ProgressSummarizer - Fixed a crash bug in ImageDisplayViewController - Removed core connection status interpretation from ClientQueryViewController - Added core connection status tracking to ClientRootViewController and utilize priority summaries to display offline or server in maintenance mode status messages * - Fix an issue where "Offline." was shortly shown when logging in - Switch to utilizing short connection status descriptions coming straight from the SDK's connection signal providers - Adapt Localizable.strings accordingly * - Add *.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist to .gitignore * - Updated ios-sdk * - Made FileProviderEnumerator use an OCQuery that includes the root item (fixes #203) - Made FileProviderExtension observe the domain property and trigger an initial query of the root directory when none has even been done before (fixes #205) * - Adapted to latest round of nullability additions in the SDK - Fixing potential crash bugs in DisplayHostViewController, ConnectionIssueViewController, SortMethod and others - Update actions - make use of .completed() instead of calling the completionHandler directly - fixing multi-item support for several actions (completionHandler would previously get executed once for every item instead of once) - ClientDirectoryPickerViewController now calls the completinHandler even on cancelation - Cleaned up OCIssue+Extension and OCItem+Extension - Replacing AsyncSequentialQueue with OCAsyncSequentialQueue * - Update SDK * - Updated ios-sdk * - Update ios-sdk with IPC fixes * - Adapt tests to SDK changes (all tests pass) - Stop CocoaPods from sending statistics by adding a line to the Podfile turning this off * - Present cache contents while waiting for a reply from the server - Updated SDK fixing a lot of issues * - Replacing DispatchQueue.main.async* with OnMainThread and a newly added OnMainThread(after: timeInterval) * - Add verbose logging to FileProviderExtension to track the commands received by iOS and the results that were returned * - Temporary workaround: make importFileFromURL: not return directly with the placeholder, but only when upload has completed - and then return the final item * - Switching ios-sdk to updated master branch * - Added th-TH to the .tx config (#241) - Updated the th translations pushed recently to the right folder - Updated the commit of the library * Added the tx link to contribute on trnslations (#245) * Version Bump to 102 * Laid down the foundation for multi-selection and related actions * Multi-selection works with “Move” and “Delete” actions
Description
Further improvements to the file provider.
Related Issue
Motivation and Context
How Has This Been Tested?
Screenshots (if appropriate):
Types of changes