Images 💾

Last commit ⭐

commit b01060c7d8b8b56b1fdc53792d3a37e13cc3f863
Author:     Aliaksandr Kalenik <kalenik.aliaksandr@gmail.com>
AuthorDate: Sat Jun 29 17:14:23 2024 +0200
Commit:     Nico Weber <thakis@chromium.org>
CommitDate: Wed Oct 9 20:12:39 2024 -0400

    Everywhere: Limit layout text fragments to use one font for all glyphs
    
    The ChunkIterator now limits a chunk to using only one font (before, it
    was possible to have a chunk with >1 font, when `unicode-range` CSS
    property is used).
    
    This change allows us to reduce some complexity in the text shaping and
    painting code and makes us compatible with the APIs in Skia and
    HarfBuzz.
    
    (cherry picked from commit 7181c3f2ea5fba73e77d98acbf9e46640b4a9015,
    minorly amended to fix conflicts caused by:
    * Our VectorFont not being renamed to Typeface
    * Us cherry-picking https://github.com/LadybirdBrowser/ladybird/pull/502
      first
    * Us still having bitmap fonts, and hence needing glyph_spacing()
    
    Also amended for:
    * AffineDisplayListPlayerCPU changes
    * Removing pure virtuals for glyph_id_for_code_point and
      glyph_id_for_code_point in Font.h again since we still have BitmapFont
      which can't implement them
    * Updating more Painter methods that we still had
      (Painter::draw_glyph_or_emoji(), Painter::draw_text_run())
    )