[haiku-bugs] Re: [Haiku] #5245: Relocate Trash folder and make it multiuser-ready

  • From: "anevilyak" <trac@xxxxxxxxxxxx>
  • Date: Wed, 13 Jan 2010 01:53:55 -0000

#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.

Other related posts: