protonscr

Sending folders to the trash/recycling bin does not seem to work.

protonopen
ValveSoftware/Proton#8392 · opened 2025-01-14 by Revmatek · updated 2025-01-26 · 2 comments · github
1 matching comments, n / p to jump
RRevmatek 2025-01-14 github

Observed behavior

On windows deleting single files and folders via shell32.dll shell file operations to send the file or folder to the recycling bin rather than outright delete, the files and folders appear in the recycling bin and can be restored later or emptied/deleted.

When running in game mode (not desktop mode).
On proton which seems to emulate shell32.dll in some way files will appear in the trash in desktop mode later after being deleted via shell file operations, however folder paths are not sent to the trash and simply disappear (presumably deleted). At the very least it seems inconsistent.

Expected behavior

Files and folders sent to the recycling bin on proton should appear in the trash.

Useful information for reproducing this:

Steamdeck
C# / Mono
shell32.dll
File operation flags: 0x0010, 0x0400, 0x0004

Detected in Proton Version

9.0-4
7.0-6

Jjn64 2025-01-26 github

This is Linux platform + upstream wine issue.

platform

https://specifications.freedesktop.org/trash-spec/latest/#trash-directories

  • User's trash is in home folder (e.g. ~/.local/share/Trash) so that the user cannot accidentally (or maliciously) fill up a different filesystem by sending things to trash.
  • Platform only needs to support trashing from the same filesystem. Trashing from different filesystem is optional; different platforms may have different implementations.

wine

With wine 10.0 on Fedora 41 / Xfce 4.18, apparently:

  • Same filesystem: all ok
  • Different filesystem:
    • Trashing files works
    • Trashing empty folder doesn't work, will be deleted
    • Trashing folder containing a file like foo/bar will trash the file bar but not the subsequently empty folder foo.

Wine explorer.exe pops up a confirmation dialog if the empty folder cannot not be trashed and will be deleted.

Wine behaviour seems compliant with the spec; the confusing point for users is why one works but one doesn't, even though both are correct.

You should search/report to WineHQ, not here.

RRevmatek 2025-01-26 github

Thanks for the info. I briefly searched for some info here: https://bugs.winehq.org/, which I assume is the correct place and found various issues related to trash, some that seem to have been open for years (none directly related). I'm not sure what the quality of bug tracking is there. I don't feel that I have the information required to take this further down the rabbit hole in terms of reporting to another 3rd party.

I think it would be unhelpful for me to basically paste this thread as the bug report and not be able to answer any questions. This is well beyond the scope of what I am doing for users as a convenience feature.

I would urge you or someone related to this project to make a report since you can better respond to any questions and have a detailed understanding of what is happening as it relates to Proton.

However, I am considering this issue closed on my end having reported this and received information that this is a problem with a 3rd party tool used by Proton.

DLLs