frontend: Improve UX around recording paths#12395
frontend: Improve UX around recording paths#12395Warchamp7 wants to merge 1 commit intoobsproject:masterfrom
Conversation
5611de6 to
71b9409
Compare
71b9409 to
e36ed5f
Compare
| uint32_t cx; | ||
| uint32_t cy; | ||
| std::thread th; | ||
| bool success = false; |
There was a problem hiding this comment.
| bool success = false; | |
| bool isScreenshotSaved = false; |
Success by itself is ambiguous - did it successfully render the texture? Generate the image data? Store it to disk?
The only way to understand this is to go backwards from the Basic.StatusBar.ScreenshotSavedTo string being generated upon success but parsing the code that far shouldn't be necessary.
| return path && *path && QDir(path).exists(); | ||
| } | ||
|
|
||
| bool OBSBasic::promptCreateOutputPath() |
There was a problem hiding this comment.
| bool OBSBasic::promptCreateOutputPath() | |
| bool OBSBasic::ensureOutputPathExists() |
It's probably irrelevant to the calling code how this is ensured, but it only cares that it is ensured.
There was a problem hiding this comment.
It's not ensured in this case since the user could click no. Would that still be appropriate here?
There was a problem hiding this comment.
IMO it's fine if the function that is supposed to ensure this path exists tells you it "couldn't do it", because then you know it wasn't able to fulfil its job. It also makes sense that the code will not continue, because a precondition isn't true.
e36ed5f to
dced066
Compare
Description
Better approach to trying to solve the underlying issue I was working towards in #10974
Motivation and Context
I want to smooth out problems for users with bad recording directories.
How Has This Been Tested?
Started recordings, replay buffers and screenshots with a valid recording path, an invalid one in a valid parent directory, and with an invalid path to a non-existent drive.
Types of changes
Checklist: