but don't do much on their own, they just make it easier to implement the work to come (web fonts, performance improvments in terms of font loading and memory usage). - Font identifier on Linux/Android is now the font file path. This is a temporary measure, but simplifies things a lot for now. - Remove FontListHandleMethods trait in favour of free functions. - FontList::refresh() has no knowledge of FontFamily etc. Instead it takes a closure that the caller provides. - FontList::load_variations_for_family no longer creates the font handle. Instead it takes a closure and provides the name of the font identifier for the variations it finds. - Remove path_from_identifier() - it's no longer required. - create_font_from_identifier() takes an Option<Style>, allowing it to be used to create fonts for family matching purposes where the font size is not important. Tested on Linux + Mac. Builds on Android but not able to confirm it's working correctly.