1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 22:38:13 +00:00
serenity/Userland/Libraries
Mathis Wiehl 3a45bba4e0 LibWeb: Load alternative font urls if others fail
We don't support all parts of the font formats we assume as "supported"
in the CSS parser. For example, if an open type font has a CFF table, we
reject loading it. This meant that until now, when such an
unsupported-supported font url was first in the list of urls, we
couldn't load it at all, even when we would support a later url.

To resolve that, try loading all font urls one after each other, in case
we are not able to load the higher priority one.

This also resolves a FIXME related to spec compliant url prioritization.
Our CSS parser already filters and prioritizes font src urls in
compliance with the spec. However, we still had to resort to brittle
file extension matching, because some websites don't set the `format`
and if the first url in a src list happened to be one we don't support,
the font could not be loaded at all. This now is unnecessary because we
can try and discard the urls instead.
2023-03-18 13:47:51 +01:00
..
LibArchive LibArchive: Read Tar archive headers through read_value 2023-03-13 15:16:20 +00:00
LibAudio LibAudio: Update stream APIs used when reading audio metadata 2023-03-13 12:46:42 -04:00
LibC Kernel: Merge {get,set}_process_name syscalls to the prctl syscall 2023-03-15 20:10:48 +01:00
LibCards Everywhere: Stop using NonnullRefPtrVector 2023-03-06 23:46:35 +01:00
LibChess LibCore: Rename File to DeprecatedFile 2023-02-13 00:50:07 +00:00
LibCMake LibSyntax+Libraries: Replace TextStyle with Gfx::TextAttributes 2023-03-15 14:55:49 +01:00
LibCodeComprehension Everywhere: Stop using NonnullRefPtrVector 2023-03-06 23:46:35 +01:00
LibCompress Everywhere: Remove unintentional partial stream reads and writes 2023-03-13 15:16:20 +00:00
LibConfig LibCore: Move Stream-based sockets into the Core namespace 2023-02-13 00:50:07 +00:00
LibCore Userland: Use more common WAV MIME type 2023-03-17 22:20:16 +00:00
LibCoredump Everywhere: Stop using NonnullOwnPtrVector 2023-03-06 23:46:35 +01:00
LibCpp LibSyntax+Libraries: Replace TextStyle with Gfx::TextAttributes 2023-03-15 14:55:49 +01:00
LibCrypt AK: Stop using DeprecatedString in Base64 encoding 2022-12-20 10:34:19 +01:00
LibCrypto LibCrypto: Add multiple PEM parser 2023-03-16 18:54:20 +03:30
LibDebug AK: Rename Stream::read_entire_buffer to Stream::read_until_filled 2023-03-13 15:16:20 +00:00
LibDesktop Everywhere: Remove NonnullRefPtr.h includes 2023-03-06 23:46:35 +01:00
LibDeviceTree LibDeviceTree: Use unchecked_append() in path parsing 2023-02-24 23:56:37 +01:00
LibDiff LibDiff: Make Diff::generate_only_additions take text as StringView 2022-12-20 10:58:54 +01:00
LibDNS AK: Rename Stream::write_entire_buffer to Stream::write_until_depleted 2023-03-13 15:16:20 +00:00
LibDSP Everywhere: Remove NonnullRefPtr.h includes 2023-03-06 23:46:35 +01:00
LibEDID LibEDID: Return proper errno codes for kernel code 2023-02-10 09:14:20 +00:00
LibELF Everywhere: Remove NonnullRefPtr.h includes 2023-03-06 23:46:35 +01:00
LibFileSystemAccessClient LibCore+Userland: Make Promise's on_resolve fallible 2023-03-13 12:12:17 +00:00
LibGemini AK: Rename Stream::write_entire_buffer to Stream::write_until_depleted 2023-03-13 15:16:20 +00:00
LibGfx LibGfx/OpenType: Fix bound-check 2023-03-17 15:44:45 +01:00
LibGL AK: Remove infallible version of StringBuilder::to_byte_buffer 2023-03-09 15:51:00 +00:00
LibGLSL Everywhere: Use _{short_,}string to create Strings from literals 2023-02-25 20:51:49 +01:00
LibGPU LibGPU: Remove DeprecatedString usage 2023-01-30 13:49:52 -05:00
LibGUI LibGUI+Userland: Port TabWidget set_tab_title to new string 2023-03-16 09:58:42 +01:00
LibHTTP AK: Rename Stream::write_entire_buffer to Stream::write_until_depleted 2023-03-13 15:16:20 +00:00
LibIDL LibIDL: Partially implement distinguishing between interface-like types 2023-03-16 19:39:17 +00:00
LibImageDecoderClient LibImageDecoderClient: Fix minor const-correctness issue 2023-02-21 00:54:04 +01:00
LibIMAP Everywhere: Remove unintentional partial stream reads and writes 2023-03-13 15:16:20 +00:00
LibIPC AK: Rename Stream::read_entire_buffer to Stream::read_until_filled 2023-03-13 15:16:20 +00:00
LibJS LibJS: Propagate errors from VM creation 2023-03-17 16:39:08 +00:00
LibKeyboard LibCore: Rename File to DeprecatedFile 2023-02-13 00:50:07 +00:00
LibLine Everywhere: Remove unintentional partial stream reads and writes 2023-03-13 15:16:20 +00:00
LibLocale Everywhere: Use ReadonlySpan<T> instead of Span<T const> 2023-02-08 19:15:45 +00:00
LibMain Everywhere: Explicitly link all binaries against the LibC target 2022-11-01 14:49:09 +00:00
LibManual Everywhere: Remove NonnullRefPtr.h includes 2023-03-06 23:46:35 +01:00
LibMarkdown Everywhere: Remove NonnullOwnPtr.h includes 2023-03-06 23:46:35 +01:00
LibPartition LibPartition: Make Kernel parts const-correct re: StorageDevice& 2023-02-21 00:54:04 +01:00
LibPCIDB AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibPDF Everywhere: Remove NonnullRefPtr.h includes 2023-03-06 23:46:35 +01:00
LibProtocol AK: Rename Stream::write_entire_buffer to Stream::write_until_depleted 2023-03-13 15:16:20 +00:00
LibRegex Everywhere: Rename equals_ignoring_case => equals_ignoring_ascii_case 2023-03-10 13:15:44 +01:00
LibSanitizer LibC: Properly implement stack protectors 2022-11-01 14:49:09 +00:00
LibSoftGPU LibSoftGPU: Use multiplication instead of division for linear fog 2023-02-18 01:45:00 +01:00
LibSQL LibSyntax+Libraries: Replace TextStyle with Gfx::TextAttributes 2023-03-15 14:55:49 +01:00
LibSymbolication Kernel+Userland: Add constants subdirectory at /sys/kernel directory 2023-02-19 13:47:11 +01:00
LibSyntax LibSyntax+Libraries: Replace TextStyle with Gfx::TextAttributes 2023-03-15 14:55:49 +01:00
LibSystem Meta+Userland: Add ENABLE_USERSPACE_COVERAGE_COLLECTION CMake option 2022-05-02 01:46:18 +02:00
LibTest LibJS: Propagate errors from VM creation 2023-03-17 16:39:08 +00:00
LibTextCodec Everywhere: Rename equals_ignoring_case => equals_ignoring_ascii_case 2023-03-10 13:15:44 +01:00
LibThreading LibThreading: Register BackgroundAction with EventLoop 2023-03-13 12:12:17 +00:00
LibTimeZone Everywhere: Rename equals_ignoring_case => equals_ignoring_ascii_case 2023-03-10 13:15:44 +01:00
LibTLS LibTLS+Base: Rework default system certificate parser 2023-03-16 18:54:20 +03:30
LibUnicode AK+LibUnicode: Implement String::equals_ignoring_case without allocating 2023-03-08 18:57:53 +00:00
LibUSBDB AK+Everywhere: Rename String to DeprecatedString 2022-12-06 08:54:33 +01:00
LibVideo Everywhere: Remove NonnullOwnPtr.h includes 2023-03-06 23:46:35 +01:00
LibVirtGPU LibCore: Remove Stream.h 2023-02-13 00:50:07 +00:00
LibVT LibVT: Fix integer overflow when parsing long OSC sequences 2023-03-17 16:50:22 +00:00
LibWasm AK: Rename Stream::write_entire_buffer to Stream::write_until_depleted 2023-03-13 15:16:20 +00:00
LibWeb LibWeb: Load alternative font urls if others fail 2023-03-18 13:47:51 +01:00
LibWebSocket AK: Rename Stream::write_entire_buffer to Stream::write_until_depleted 2023-03-13 15:16:20 +00:00
LibWebView LibWeb+LibWebView+WebContent+Ladybird: Add IPC call that opens new tab 2023-03-16 13:17:37 -04:00
LibX86 LibX86: Remove i686 support 2022-12-28 11:53:41 +01:00
LibXML Everywhere: Rename equals_ignoring_case => equals_ignoring_ascii_case 2023-03-10 13:15:44 +01:00
CMakeLists.txt LibCMake: Introduce a CMake lexer 2023-03-04 05:43:43 -07:00