Defer computation of registered custom color properties if needed.
This is a bit less complicated than lengths because there's no cycle
possible which could turn the color-scheme declaration invalid afaict.
So it's just that we need to defer the colors when color-scheme is
specified, which is slightly annoying, but maybe not too bad.
I had to tweak a bit the code to defer properties to fix a bug that we
were papering over accidentally. We were using the wrong registration
here:
That's the registration for reference.name, not for name, which
papered over some issues. The fix is simple tho, which is storing a
single CustomPropertiesMap.
Differential Revision: https://phabricator.services.mozilla.com/D211860
bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1899272
gecko-commit: acfd5e328aa9a8fa1bcceaa7130e9e028990326b
gecko-reviewers: dshin, firefox-style-system-reviewers, zrhoffman