Use Paper.Color instead of CSS color strings #927
Draft
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.
Resolves
Resolves #610
Proposed Changes
This PR changes the paint editor to consistently use
Paper.Color
objects to store color instead of CSS color strings.Reason for Changes
This prevents unexpected side effects of HSV > RGB > HSV conversion, such as certain color channels being zeroed out when brightness or saturation are set to 0.
It also allows increased flexibility with regards to future color improvements, notably a "transparency" slider (#834).
Because this touches a huge portion of the codebase, I'd like to look over it with fresh eyes once some more time has passed. I'm submitting this as a draft in case you want to look over it too.