LibWeb: Implement FontFace.load() for url() based font sources

This commit is contained in:
Andrew Kaster 2024-05-15 15:00:07 -06:00 committed by Andreas Kling
commit 28f728dfdb
Notes: sideshowbarker 2024-07-17 01:12:07 +09:00
4 changed files with 123 additions and 6 deletions

View file

@ -0,0 +1,30 @@
<!DOCTYPE html>
<script src="../include.js"></script>
<script>
asyncTest(async (done) => {
// FIXME: Surely there's a better way to get this font URL
let fontUrl = new URL(location.href);
fontUrl.search = "";
fontUrl += "/../../../../Ref/assets/HashSans.woff";
const hashSans = new FontFace("Hash Sans", `url(${fontUrl})`);
println(`hashSans.family: ${hashSans.family}`);
println(`hashSans.status: ${hashSans.status}`);
await hashSans.load().then(() => {
println(`hashSans.status: ${hashSans.status}`);
}, () => {
println("FAILED");
});
let notExistFont = new FontFace("NotExist", "url(https://example.com/not-exist.woff)");
await notExistFont.load().then(() => {
println("FAILED");
}, (reason) => {
println(`font load failed because: ${reason}`);
println(`notExistFont.status: ${notExistFont.status}`);
});
done();
});
</script>