Add better exporting/saving for Chromium-based browsers #1360
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This uses the new web filesystem access APis, making GodSVG no longer save a new file to the downloads folder.
This instead prompts the user once to save a file and stores a handle to that file that we can later write to all we want.
There are some limitations; Mainly, the handle for each file has to be requested again any time the user loads up GodSVG again, as well as the first time the user saves after loading a brand new file, but this isn't problematic and it still beats saving as a new file every time.
This PR works on my machine; I've tested saving/loading files, multiple tabs, and exporting. I haven't tested this thoroughly however and I'd appreciate if someone would before merging (Especially the XML colour palette saving? Not sure what that is about)
See also: https://developer.chrome.com/docs/capabilities/web-apis/file-system-access