ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.21k stars 174 forks source link

Shader Pre-Caching unwanted behaviour #9471

Open Martinligabue opened 1 year ago

Martinligabue commented 1 year ago

Your system information

Please describe your issue in as much detail as possible:

When on the Shader Pre-Caching in the Settings, if you misclick the first box "Enable Shader Pre-Caching" even for a second it will instantly delete all 15+gb of precached shaders, and re-enabling it will make it redownload everything from the start. This is a big problem if you have games like Apex Legends, which takes several hours to compile, and dozens of games installed.

Steps for reproducing this issue:

  1. open Settings, Shader Pre-Caching
  2. disable Shader Pre-Caching

This could be solved by waiting a little, or waiting for the Steam client to shut down before actually deleting the cache, or by prompting the user.

kisak-valve commented 1 year ago

Hello @Martinligabue, my understanding is that this is intended behavior with disabling the shader pre-cache sub-component. If something went wrong and the shader pre-caching component is left in a confused or broken state, this is the method to do a full reset of it and get back to a predictable state.

Martinligabue commented 1 year ago

this is the method to do a full reset of it and get back to a predictable state.

I see, thanks. I still think that since it's not a common thing to reset this, a prompt to make sure the user wants to clear shaders while disabling the option would make it less confusing for the user and less likely to happen by accident.

aclist commented 1 year ago

It seems reasonable to prompt for confirmation or clarify the wording of this message, as "disable" could be interpreted to simply mean turning off the setting going forward, not wiping existing files. Absent other knowledge, a user could be reasonably expected to assume that enabling this setting again would allow them to continue using the old cache.

victor-borges commented 1 year ago

Alongside the confirmation, a separate button intended for deleting shaders ~with a message indicating how much space is currently being used for them~ would be a very nice to have!

Edit: the message is already there, oops