Andreas Kling
175f3febb8
LibWeb: Make DOMException take error message as a String
...
There was no need to use FlyString for error messages, and it just
caused a bunch of churn since these strings typically only existed
during the lifetime of the error.
2024-10-12 21:14:18 +02:00
Sam Atkins
e43f3e4808
LibWeb/CSS: Parse font-[feature,variation]-settings descriptors
2024-10-02 16:28:55 +01:00
Sam Atkins
20af2eb2b0
LibWeb/CSS: Parse the font-language-override descriptor
CI / Lagom (false, FUZZ, ubuntu-22.04, Linux, Clang) (push) Waiting to run
CI / Lagom (false, NO_FUZZ, macos-14, macOS, Clang) (push) Waiting to run
CI / Lagom (false, NO_FUZZ, ubuntu-22.04, Linux, GNU) (push) Waiting to run
CI / Lagom (true, NO_FUZZ, ubuntu-22.04, Linux, Clang) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (macos-14, macOS, macOS-universal2) (push) Waiting to run
Package the js repl as a binary artifact / build-and-package (ubuntu-22.04, Linux, Linux-x86_64) (push) Waiting to run
Run test262 and test-wasm / run_and_update_results (push) Waiting to run
Lint Code / lint (push) Waiting to run
Push notes / build (push) Waiting to run
2024-09-28 14:42:26 +02:00
Sam Atkins
b1870e7029
LibWeb/CSS: Parse font-width descriptor and its font-stretch alias
2024-09-28 14:42:26 +02:00
Sam Atkins
4a67b28600
LibWeb/CSS: Make font-stretch a legacy alias for new font-width
...
CSS Fonts level 4 renames font-stretch to font-width, with font-stretch
being left as a legacy alias. Unfortunately the other specs have not yet
been updated, so both terms are used in different places.
2024-09-28 14:42:26 +02:00
Sam Atkins
7c50a31402
LibWeb/CSS: Parse font-named-instance descriptor
2024-09-28 14:42:26 +02:00
Sam Atkins
3eb6d510fd
LibWeb/CSS: Parse font-display descriptor
2024-09-28 14:42:26 +02:00
Sam Atkins
2f7d18865d
LibWeb: Parse ascent-, descent-, and line-gap-override descriptors
2024-09-28 14:42:26 +02:00
Aliaksandr Kalenik
a9d5a99568
LibGfx+LibWeb: Replace remaining OpenType implementation with Skia
...
This change should move us forward toward emoji support, as we are no
longer limited by our own OpenType implementation, which was failing
to parse the TrueType Collection format used to store emoji fonts
(at least on macOS).
2024-09-05 19:21:52 +02:00
Sam Atkins
0e3487b9ab
LibWeb: Rename StyleValue -> CSSStyleValue
...
This matches the name in the CSS Typed OM spec.
https://drafts.css-houdini.org/css-typed-om-1/#cssstylevalue
No behaviour changes.
2024-08-15 13:58:38 +01:00
Sam Atkins
59778d2b36
LibWeb/CSS: Make CSS Parser::create() infallible
...
Now that `Tokenizer::tokenize()` just returns a String, there are no
errors to propagate, and we can simplify the user code a bit.
2024-07-26 17:29:20 +02:00
Aliaksandr Kalenik
2ead999f2b
LibGfx+LibWeb: Remove typeface classes for WOFF fonts
...
This change removes wrappers inherited from Gfx::Typeface for WOFF and
WOFF2 fonts. The only purpose they served is owning of ttf ByteBuffer
produced by decoding a WOFF/WOFF2 font. Now new FontData class is
responsible for holding ByteBuffer when a font is constructed from
non-externally owned memory.
2024-07-22 15:05:04 +02:00
Aliaksandr Kalenik
c09b5b8df0
LibGfx+LibWeb: Rename Gfx::WOFF2::Font to Gfx::WOFF2::Typeface
...
It's a leftover from VectorFont -> Typeface renaming
2024-07-13 09:31:02 +02:00
Aliaksandr Kalenik
1d2e559e13
LibGfx+LibWeb: Rename Gfx::WOFF::Font to Gfx::WOFF::Typeface
...
It's a leftover from VectorFont -> Typeface renaming
2024-07-13 09:31:02 +02:00
Aliaksandr Kalenik
2f515827c0
Everywhere: Rename Gfx::OpenType::Font to Gfx::OpenType::Typeface
...
It's a leftover from VectorFont -> Typeface renaming
2024-07-13 09:31:02 +02:00
Aliaksandr Kalenik
d5926a3231
LibGfx+LibWeb: Rename Gfx::VectorFont to Gfx::Typeface
...
Typeface is a more widely used name for the data represented by
class previously named VectorFont.
Now:
- Typeface represents decoded font that is not ready for rendering
- ScaledFont represents the combination of typeface and size for
rendering
2024-06-30 13:09:23 +02:00
Daniel Bertalan
bf1f631f25
Everywhere: Write dtors for types with incomplete members out-of-line
...
These are rejected by Clang (19) trunk as a result of
https://github.com/llvm/llvm-project/pull/77753 .
2024-06-16 07:19:56 -04:00
Andrew Kaster
28f728dfdb
LibWeb: Implement FontFace.load() for url() based font sources
2024-05-16 08:02:43 +02:00
Andrew Kaster
60b3436ea3
LibWeb: Support loading FontFaces constructed with binary data
2024-05-14 12:31:10 -06:00
Andrew Kaster
2bc51f08d9
LibWeb: Implement or stub FontFace interface's attribute getters/setters
...
We only support parsing half of these, so the ones we don't recognize
get a friendly exception thrown.
2024-05-11 07:30:29 +01:00
Andrew Kaster
2c31d7dddc
LibWeb: Add stub implementation of CSS FontFace Web API
2024-05-08 10:39:16 +02:00
Andrew Kaster
3a5eabc43b
LibWeb: Rename CSS::FontFace to CSS::ParsedFontFace
...
This implementation detail of CSSFontFaceRule is hogging the name of a
Web API from CSS Font Loading Module Level 3.
2024-05-08 10:39:16 +02:00
Aliaksandr Kalenik
f50bf00814
LibWeb+LibGfx: Move UnicodeRange from LibWeb to LibGfx
...
In upcoming changes UnicodeRange is going to be used in LibGfx in
a class that represents font cascade list.
2023-12-10 17:32:04 +01:00
Andreas Kling
74bdbdf43f
LibWeb: Parse font-weight and font-style inside @font-face rules
2023-05-24 17:19:18 +02:00
Sam Atkins
c2f0b20d6b
LibWeb: Port FontFace to new Strings
2023-02-19 00:51:16 +01:00
Timothy Flynn
f3db548a3d
AK+Everywhere: Rename FlyString to DeprecatedFlyString
...
DeprecatedFlyString relies heavily on DeprecatedString's StringImpl, so
let's rename it to A) match the name of DeprecatedString, B) write a new
FlyString class that is tied to String.
2023-01-09 23:00:24 +00:00
Sam Atkins
dbbd6d3508
LibWeb: Parse @font-face
unicode-range
descriptor
2022-04-07 21:20:14 +02:00
Sam Atkins
804b8c85e8
LibWeb: Implement initial CSSFontFaceRule and FontFace classes
...
For now, this is the bare minimum that's needed: font-family and src.
2022-03-28 22:25:25 +02:00