Page MenuHome

File->"Load Factory Settings (Temporary)" not offered if Prefs Auto-Save is off.
Closed, DuplicatePublic

Description

System Information
Operating system: Windows-10-10.0.17134 64 Bits
Graphics card: GeForce GTX 1060/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 419.17

Blender Version
Broken: version: 2.80 (sub 72), branch: master (modified), commit date: 2019-05-25 01:24, hash: rB8e812504b4c5

Currently, the File->Defaults menu only offers the "Load Factory Settings (Temporary)" option if it sees that you have Auto Save Preferences turned on, because if you have it turned off then there's no worry that an inadvertent autosave will happen resulting in a config-stomp.

But this logic is flawed because the act of loading the Factory Settings always turns ON the Auto Save Preferences option, so if the user uses the only provided option "Load Factory Settings" when they have autosave off and then changes any setting in Blender, then they will get an unexpected config save on exit, wiping out all pre-existing settings.

Either the (Temporary) option needs to always be offered, or (preferably IMHO) we should just always explicitly turn off the Auto Save Preferences option after loading the factory defaults, thus requiring the user to take the explicit action of turning it on if that's their intention. The worst case then is it takes them a little extra time to figure out how to overwrite their old settings, rather than accidentally overwriting their preferences too easily. This also eliminates the need to have two slightly different options for the Defaults menu which is confusing and if the user picks the wrong option then they're again in trouble and it eliminates the need to use the hidden G_FLAG_USERPREF_NO_SAVE_ON_EXIT in this case, making all the behavior visible to the user rather than having something magic going on behind the user's back.

Details

Type
Bug

Event Timeline

@Brecht Van Lommel (brecht) this problem was brought up by artists last week, was there any conclusion about how to solve it?

Brecht Van Lommel (brecht) triaged this task as Confirmed, Medium priority.

I don't remember discussing this specific issue.

I think we could add the Temporary entry, or preserve G_FLAG_USERPREF_NO_SAVE_ON_EXIT through Load Factory Settings.

The issue with enabling G_FLAG_USERPREF_NO_SAVE_ON_EXIT is the user might go on to make changes to the preferences and not realize they wont be auto-saved.

This is true for --factory-startup too, but I think this is more obviously an exceptional case.


This could be resolved by exposing this state to the user (which is probably better in any-case).

So factory settings never auto save unless the user disables the "temporary" state from the preferences window.

Then we could...

  • Remove "Load Factory Settings (Temporary)".
  • Factory settings wouldn't have to ignore the prefs flag (which isn't *correct*).

Committed rBfcb534e336c3b9d9065c5bbc9143bcc305497975