Windows Shell Links
For Windows users the File Manager now supports many complex file system redirections like hard and soft links, mount points, etc. But one thing not supported is "Windows Shell Links". These are the oldest and easiest types of links to make in Windows. We have had requests to support these for more than a decade. For example, you can copy any file system item to the clipboard and then "paste shortcut" to make a file system item that redirects to that item. Once this patch is applied any valid shortcut files will no longer show their ".lnk" extension, just like in Windows Explorer, and use can use them in File Browser as expected.
Mac Alias Changes
Currently Mac alias support is limited to supporting aliases to folders. This patch allows aliases to blend files - for opening or appending - and for aliases to drives, files, images, videos, etc.
Currently we are showing all folders that are symlinks or aliases with big arrow inside:
However this is a bit limiting. It cannot indicate any other information about the folder besides this one attribute. And this cannot be applied to links to documents. So this patch changes the "link" indicator to a smaller arrow at the bottom-left. This means we can indicate that an item is a link/alias/shortcut while also showing other information. Following are various different types of links made possible:
A summary of the changes, in order they are shown here:
- 58 header need for Windows COM stuff
- 238 set attribute FILE_ATTR_ALIAS flag if extension is ".lnk"
- 295 BLI_file_alias_target returns full path of a shortcut
- 224 - we will show file items that are links in a different way
- 316 - existing code moved
- 336 - draw little arrow at bottom-left of shortcuts
- 357 - existing code moved
- 1472 - For multi-file selection, don't allow mixture of regular and shortcuts
- 1626 - For shortcuts we need to setup sfile params for operators
- 1018 - Also check Volumes list for icons (shortcuts to drive roots)
- 1026 - Check shortcut target against known items too (shortcuts to desktop, etc)
- 1043 - Offline items should get stopsign icon, not warning icon
- 1383 - Allow previews of shortcuts by using their targets
- 2499 - "target" var can point at root+relpath or shortcut target
- 2511 - get shortcut target if attributes include FILE_ATTR_ALIAS
- 2522 - Remove ".lnk" from name if valid Windows shortcut
- 2526 - If not valid then set shortcut file to hidden
- 2532 - Existing code moved afterward so can deal with shortcut items.