Skip to content

Conversation

lukeblevins
Copy link
Contributor

Resolved / Related Issues
N/A

Details of Changes
Expands the capability of our new VirtualStorageItem impl to support instantiation solely from a filesystem path. For this feature, we leverage the fast FindFirstFileExFromApp() method to get enough item properties to construct the backing ListedItem which is used to set the properties on the IStorageItem contract.

Additionally, a static data field for BasicProperties is created on the VirtualStorageItem class and is set, only initially, from a simple streamed storage file. This makes the present use of VirtualStorageFile (in BaseLayout for drag and drop) more concise.

Lastly, path instantiation will allow us to leverage VirtualStorageItem for all filesystem operations, instead of having to create a StorageFile/Folder n number of times. This will likely speed up paste for storage item operations like move and copy because we inspect the underlying FileDropList (dealing with filesystem paths) instead of the DataPackage itself as of #9035.

Validation
How did you test these changes?

  • Built and ran the app
  • Tested the changes for accessibility

Screenshots (optional)
N/A

Copy link
Member

@gave92 gave92 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good.. unless we need to revert #9014 as per my comment :(

@yaira2 yaira2 added ready to merge Pull requests that are approved and ready to merge and removed needs - code review labels May 1, 2022
@yaira2 yaira2 merged commit 105f8b0 into main May 1, 2022
@yaira2 yaira2 deleted the dev/lubl/virt-str branch May 1, 2022 14:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready to merge Pull requests that are approved and ready to merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants