From 9d12ec7cb9198c107940c5d11ff445c59ec26e05 Mon Sep 17 00:00:00 2001 From: Timothy Flynn Date: Thu, 24 Oct 2024 19:23:51 -0400 Subject: [PATCH] headless-browser: Force-enable font config via code rather than CMake It is easy to forget to set this flag on macOS, where doing so causes many tests to fail. So let's just set it via code along with other options to make it a bit more foolproof. --- Ladybird/Headless/Application.cpp | 3 +++ Ladybird/Headless/CMakeLists.txt | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Ladybird/Headless/Application.cpp b/Ladybird/Headless/Application.cpp index cb89647a2fd..bd63c3f6122 100644 --- a/Ladybird/Headless/Application.cpp +++ b/Ladybird/Headless/Application.cpp @@ -47,6 +47,9 @@ void Application::create_platform_options(WebView::ChromeOptions& chrome_options if (is_layout_test_mode) { // Allow window.open() to succeed for tests. chrome_options.allow_popups = WebView::AllowPopups::Yes; + + // Ensure consistent font rendering between operating systems. + web_content_options.force_fontconfig = WebView::ForceFontconfig::Yes; } if (dump_gc_graph) { diff --git a/Ladybird/Headless/CMakeLists.txt b/Ladybird/Headless/CMakeLists.txt index 14b28d233ec..cf914cdb53c 100644 --- a/Ladybird/Headless/CMakeLists.txt +++ b/Ladybird/Headless/CMakeLists.txt @@ -14,6 +14,6 @@ target_link_libraries(headless-browser PRIVATE ${LADYBIRD_LIBS} LibDiff) if (BUILD_TESTING) add_test( NAME LibWeb - COMMAND $ --run-tests ${LADYBIRD_SOURCE_DIR}/Tests/LibWeb --dump-failed-ref-tests --force-fontconfig + COMMAND $ --run-tests ${LADYBIRD_SOURCE_DIR}/Tests/LibWeb --dump-failed-ref-tests ) endif()