On Wed, 1 Feb 2023 17:47:59 GMT, Phil Race <[email protected]> wrote: >> Oh if only I remembered the details. Overall, such complex changes were made >> to support variation selectors. See: we have Segoe UI Emoji for colored >> emoji and Segoe UI Symbol for monochrome ones, each emoji by default must be >> rendered either colored or monochrome according to CLDR, so I add Segoe UI >> Symbol into fallback sequence, but exclude those ranges which shouldn't be >> rendered monochrome by default (that is, most of the characters). Then to >> make variation selector work, we ignore these exclusion ranges if monochrome >> selector is used or something like that. So this is some kind of hack to >> make variation selectors work without "branching" the fallback sequence and >> fit into existing architecture. I will look through the code to refresh the >> details and will let you know more. > > Please do provide details .. but I don't think we need to .. or should .. be > making variation selectors work where the variations aren't supported by a > single physical font.
Why shouldn't we? That's how it works on Windows - monochrome emoji in Segoe UI Symbos and colored in Segoe UI Emoji, not very convenient, but I believe we have to deal with it. Native apps do support this and I guess OS font rendering has some emoji-specific branching to support this. ------------- PR: https://git.openjdk.org/jdk/pull/4798
