Files On-Demand
We must prepare the application similar to OneDrive on Windows - synchronization list of files stored in cloud and synchronization of selected files.
During the investigation we found a very nice library to manage On-Demand Files in Windows from C# - ShellBoost.
List files from the cloud as local files
Show list of on-demand files in a local folder
Show folder with files as Namespace extension
With ShellBoost we can synchronize files in a very cool way. We can show sync status, we can do all operations like on regular files, additionally, we can synchronize items or remove them from synchronization.
Unfortunately, we met some restrictions
File Context Menu Items problem
We are not able to add custom actions to not synchronized files. I used SharpShell to manage additional context menu items on files - it works
But on not synchronized files it doesn't work.
OneDrive supports custom context menu item
Somehow OneDrive is able to add custom menu items
PowerToys can add a custom context menu item
Somehow PowerToys is able to add custom menu items to our not synchronized files
Example
Here is a repo with the example https://github.com/m4tchl0ck/ShellBoost-My-Samples