Andreas Kling
2f68e36137
Ladybird: Use fontconfig to choose generic fonts on non-Apple systems
...
If we get a suggestion from fontconfig, we try those fonts first, before
falling back on the hard coded list of known suitable fonts for each
generic family.
2024-06-08 10:23:36 +02:00
Jamie Mansfield
0c683af57e
LibWeb: Test referrerPolicy attribute on all elements
2024-06-08 08:01:42 +02:00
Jamie Mansfield
fdb4e05d7f
LibWeb: Use a single test for loading attribute
2024-06-08 08:01:42 +02:00
Jamie Mansfield
1dda129fe1
LibWeb: Test fetchPriority attribute on all elements
2024-06-08 08:01:42 +02:00
Tim Ledbetter
2fed064791
Tests/LibWeb: Wait until document fully loaded before simulating click
...
This makes the `form-image-submission.html` test pass more reliably.
2024-06-08 07:59:21 +02:00
Matthew Olsson
7925efda5f
LibWeb: Do not clamp the output of the cubic bezier timing function
...
It is fine for timing function to be outside of the range [0, 1]
2024-06-08 07:58:58 +02:00
Matthew Olsson
7f902fa2dc
LibWeb: Prevent overrunning loop bounds in cubic bezier calculation
2024-06-08 07:58:58 +02:00
Matthew Olsson
31618abf15
LibWeb: Correct observable property access order in KeyframeEffect
...
Apparently these are supposed to be accessed in alphabetical order
2024-06-08 07:58:58 +02:00
Matthew Olsson
c85f00e373
LibWeb: Only read enumerable keyframe properties
2024-06-08 07:58:58 +02:00
Andrew Kaster
9f25dc6b09
CMake+CI: Remove BUILD_LAGOM=OFF option in favor of LAGOM_TOOLS_ONLY=ON
...
The far more common configuration for Ladybird is to always build the
Lagom libraries.
2024-06-08 07:58:11 +02:00
Andrew Kaster
1af9e44130
CMake: Use CMAKE_LINKER_TYPE on CMake >= 3.29
2024-06-08 07:58:11 +02:00
Timothy Flynn
18abd54247
CI: Fix syntax in the JS artifacts pipeline
2024-06-07 16:35:17 -04:00
Andreas Kling
533eea1958
Tests: Skip Text/input/HTML/form-image-submission.html (flaky)
...
Issue: https://github.com/LadybirdWebBrowser/ladybird/issues/100
2024-06-07 19:39:45 +02:00
Andreas Kling
b118c99c27
LibWeb: Add null check in Document::ancestor_navigables()
...
The spec doesn't explicitly forbid calling this when the document
doesn't have a node navigable, so let's handle that situation gracefully
by just returning an empty list of ancestors.
I hit this VERIFY somewhere on the web, but I don't know how to
reproduce it.
2024-06-07 19:39:45 +02:00
Jamie Mansfield
bbd82265e1
LibWeb/CSS: Implement FontFaceSet.onloadingerror
2024-06-07 19:30:35 +02:00
Jamie Mansfield
e56e09b820
LibWeb/CSS: Implement FontFaceSet.onloadingdone
2024-06-07 19:30:35 +02:00
Jamie Mansfield
4210586730
LibWeb/CSS: Implement FontFaceSet.onloading
2024-06-07 19:30:35 +02:00
Jamie Mansfield
c6a6a7c4f0
LibWeb/CSS: FontFaceSet extends EventTarget
2024-06-07 19:30:35 +02:00
Jamie Mansfield
839dc01280
LibWeb/CSS: Stub FontFaceSet.check
2024-06-07 19:30:35 +02:00
Diego
bd6ee060d2
LibWasm: Check data section offset for overflow during instantiation
2024-06-07 18:45:56 +02:00
Andreas Kling
28d4e326f8
LibGfx: Use the woff2 library to decode WOFF2 font files
...
This saves us the trouble of maintaining our own implementation,
and instantly brings us to full WOFF2 feature parity with others.
Co-Authored-By: Andrew Kaster <akaster@serenityos.org>
2024-06-07 18:42:12 +02:00
Aliaksandr Kalenik
9be5867eb2
LibWeb: Implement rejection by bounding box for PaintInnerBoxShadow
...
Before this change we were painting inner shadows lying outside of
viewport.
Improves painting performance on Github and Twitter where this command
is used a lot.
2024-06-07 18:41:57 +02:00
Aliaksandr Kalenik
1c8d37d528
LibWeb: Rename PaintOuterBoxShadowParams to PaintBoxShadowParams
...
Drop "outer" from the name because this struct is used for both inner
and outer shadows.
2024-06-07 18:41:57 +02:00
Andrew Kaster
1e3e36af11
Meta+CMake: Move vcpkg directives to ladybird.sh and CMakePresets
...
Also add a vcpkg command to ladybird.sh to ensure that vcpkg is setup,
and use a local binary cache for vcpkg build and install media to
avoid cluttering $XDG_CACHE_HOME.
2024-06-07 11:15:48 -04:00
Andrew Kaster
bffdd280bf
CI: Create and use a GitHub Actions cache for vcpkg
2024-06-07 11:15:48 -04:00
Andrew Kaster
62b016002a
CMake: Set vcpkg options in CMakePresets
2024-06-07 11:15:48 -04:00
Aliaksandr Kalenik
22bb476b6f
LibWeb: Use ints instead of DevicePixels in PaintOuterBoxShadowParams
...
DevicePixels concept should not leak from painting recording phase.
2024-06-07 15:42:38 +02:00
Aliaksandr Kalenik
2dd3b6fcff
LibWeb: Remove unused members in PaintOuterBoxShadowParams
...
This struct had all members in CSSPixels and DevicePixels, but only the
latter are needed for painting.
Shrinks PaintOuterBoxShadowParams from 144 bytes to 72 bytes.
2024-06-07 15:42:38 +02:00
Jamie Mansfield
ab6b687d4c
LibWeb: Implement "Set request’s referrer policy on redirect" AO
2024-06-07 09:54:19 +02:00
Jamie Mansfield
5a40a00d9e
LibWeb/ReferrerPolicy: Add spec link for strip URL AO
2024-06-07 09:54:19 +02:00
Jamie Mansfield
8542a8b458
LibWeb/Fetch: Update "HTTP-redirect fetch" algorithm to latest spec
...
The spec and implementation's comments had diverged a little, this
brings them in line :)
2024-06-07 09:54:19 +02:00
Jamie Mansfield
8f2cb6755b
LibWeb: Implement HTMLAreaElement.referrerPolicy
2024-06-07 09:54:19 +02:00
Jamie Mansfield
64eadab181
LibWeb: Implement HTMLIFrameElement.referrerPolicy
2024-06-07 09:54:19 +02:00
Jamie Mansfield
1aa58b6d8c
LibWeb: Implement HTMLImageElement.referrerPolicy
2024-06-07 09:54:19 +02:00
Jamie Mansfield
f82c727071
LibWeb: Implement HTMLLinkElement.referrerPolicy
2024-06-07 09:54:19 +02:00
Jamie Mansfield
469cbe78de
LibWeb: Use Reflect for HTMLAnchorElement.referrerPolicy
2024-06-07 09:54:19 +02:00
Jamie Mansfield
53d7aa53a2
LibWeb: Use Enumerated for HTMLScriptElement.referrerPolicy
2024-06-07 09:54:19 +02:00
Jamie Mansfield
7ce35b75aa
LibWeb: Implement should block mixed content response to request
2024-06-07 09:50:30 +02:00
Jamie Mansfield
2159377296
LibWeb: Upgrade mixed requests to potentially trustworthy URLs
...
(if appropriate)
2024-06-07 09:50:30 +02:00
Jamie Mansfield
8f0d035145
LibWeb: Implement should block mixed content request
2024-06-07 09:50:30 +02:00
Alexander Rigbo
33cfa8f5a6
Documentation: Add new dependencies for vcpkg
2024-06-07 09:49:29 +02:00
Andrew Kaster
d90a9ab70c
LibWeb: Add Web::UIEvents::KeyCode and KeyModifier enums, drop Kernel
...
This was the last Kernel header we had. Move the definitions we need
into a UIEvents header similar to MouseButton.
2024-06-07 09:44:41 +02:00
Andrew Kaster
0c9dced888
Meta: Remove trivially unused Kernel API headers
2024-06-07 09:44:41 +02:00
Simon Wanner
da8ad13510
Documentation: Add some fonts to required packages
...
Sometimes, especially on WSL, no fonts are installed, which will fail
`VERIFY(m_default_font)` in Ladybird/FontPlugin.
Note that Liberation Sans does not provide fonts for `cursive` and
`fantasy`, which will fall back to the default, sans-serif, font.
To cover all generic font families Microsoft's "Core fonts for the Web"
are available as `ttf-mscorefonts-installer`, `ttf-ms-fonts`, etc.
2024-06-07 09:42:50 +02:00
Andrew Kaster
f98e28912a
LibCore: Only include BeepInstruction in System.cpp on Serenity
...
It remains to be seen whether we actually need this on serenity either..
2024-06-06 12:51:14 -06:00
Andrew Kaster
82b73b2eee
CMake: Move ca_certificate_download include up with other downloads
2024-06-06 12:51:14 -06:00
Andrew Kaster
6f387577c5
CMake+Base: Remove LiberationMono and rules copying it to build
...
This was only used by the pdf and MacPDF applications.
2024-06-06 12:51:14 -06:00
Andrew Kaster
41176a4f4e
CMake: Remove Superbuild-specific install rule guard
2024-06-06 12:51:14 -06:00
Andrew Kaster
f55f64755d
CMake: Remove ENABLE_LAGOM_LIBWEB and ENABLE_LAGOM_LADYBIRD options
2024-06-06 12:51:14 -06:00
Andrew Kaster
2770b7eecd
LibCore: Null-check struct addrinfo to avoid freeaddrinfo(NULL)
...
On some C libraries, like NetBSD and musl-libc, this under-specified
edge case results in a crash rather than silently ignoring the null
pointer.
2024-06-06 12:48:58 -06:00