#5245: Relocate Trash folder and make it multiuser-ready --------------------------------+------------------------------------------- Reporter: anevilyak | Owner: anevilyak Type: enhancement | Status: assigned Priority: normal | Milestone: R1 Component: Kits/libtracker.so | Version: R1/Development Keywords: | Blockedby: Platform: All | Blocking: --------------------------------+------------------------------------------- Description changed by anevilyak: Old description: > The current Trash implementation is somewhat less than ideal for several > reasons: > > 1) It requires the creation of /home/Desktop on every non-boot volume. > > 2) as a consequence of the first point it isn't really multiuser-safe. > > A proposed alternative is to move the Trash folder to the root dir of > each volume, and have it segregated into per-user subdirectories. This > will require changes to find_directory() as well as Tracker's > FSCreateTrashDir / FSGetTrashDir and probably DesktopDirEntryIterator. > Note that if we want the directory to be hidden when browsing the volume > root, we will have to re-enable respecting the fInvisible attribute of > PoseInfo, which has caveats for those multibooting with other BeOS > variants as mentioned in r35040. New description: The current Trash implementation is somewhat less than ideal for several reasons: 1) It requires the creation of /home/Desktop on every non-boot volume. 2) as a consequence of the first point it isn't really multiuser-safe. A proposed alternative is to move the Trash folder to the root dir of each volume, and have it segregated into per-user subdirectories. This will require changes to find_directory() as well as Tracker's FSCreateTrashDir / FSGetTrashDir and probably DesktopDirEntryIterator. Also note that this will mean users will wind up with a dead Trash folder in their Desktop dir, which may or may not be problematic. Note that if we want the directory to be hidden when browsing the volume root, we will have to re- enable respecting the fInvisible attribute of PoseInfo, which has caveats for those multibooting with other BeOS variants as mentioned in r35040. A possible workaround for the above would be to add a user preference specifying whether or not to respect the invisible attribute, which would also deal with the aforementioned caveats. However, if we go that route, it might also be nice to extend Get Info to allow the user to mark/unmark a file as invisible themselves. -- -- Ticket URL: <http://dev.haiku-os.org/ticket/5245#comment:3> Haiku <http://dev.haiku-os.org> Haiku - the operating system.