1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-24 20:17:41 +00:00
Commit graph

16407 commits

Author SHA1 Message Date
Fabian Dellwing
12cd74495a LibTLS+Base: Rework default system certificate parser
Change the default system certificate parser from our arbitrary
INI format to well-known PEM format.
2023-03-16 18:54:20 +03:30
Fabian Dellwing
b07654c3c1 Meta: Download cacert.pem at build time 2023-03-16 18:54:20 +03:30
Fabian Dellwing
06340ca674 LibCrypto: Add multiple PEM parser
This adds a function to parse multiple PEMs out of a single input.
This allows us to load certificates from a cacert.pem file without
need for preprocessing.
2023-03-16 18:54:20 +03:30
Timothy Flynn
700ad6bf35 WebContent+LibWebView: Consolidate the way browsers connect to WebDriver
Currently, on Serenity, we connect to WebDriver from the browser-side of
the WebContent connection for both Browser and headless-browser.

On Lagom, we connect from within the WebContent process itself, signaled
by a command line flag.

This patch changes Lagom browsers to connect to WebDriver the same way
that Serenity browsers do. This will ensure we can do other initializers
in the same order across all platforms and browsers.
2023-03-16 15:02:41 +00:00
Nico Weber
14581e98ad LibGfx: Remove stray space character in a comment 2023-03-16 09:20:48 -04:00
Timothy Flynn
2cfcbccdb5 LibWeb: Port WebAssembly.Table to IDL 2023-03-16 13:54:16 +01:00
Timothy Flynn
ca96f8e364 LibWeb: Port WebAssembly.Memory to IDL 2023-03-16 13:54:16 +01:00
Timothy Flynn
de32c44762 LibWeb: Port WebAssembly.Instance to IDL 2023-03-16 13:54:16 +01:00
Timothy Flynn
fb1f15774f LibWeb: Port WebAssembly.Module to IDL 2023-03-16 13:54:16 +01:00
Timothy Flynn
5c97ffb94f LibWeb: Define WebAssembly namespace and import it in web bindings
This will contain concrete definitions of WebAssembly objects used by
generated WebAssembly IDL.
2023-03-16 13:54:16 +01:00
Timothy Flynn
af119d92cb LibIDL+LibWeb: Begin supporting the LegacyNamespace extended attribute
This is used by WebAssembly IDL files. For now, we mostly use this for
error messages and cache keys (to ensure compatibility with existing
code as WebAssembly is ported to IDL).
2023-03-16 13:54:16 +01:00
Timothy Flynn
1ff75618c0 LibIDL: Allow extended attributes on non-required IDL dictionary members
For example, WebAssembly.Memory will have:

    [EnforceRange] unsigned long maximum;
2023-03-16 13:54:16 +01:00
Karol Kosek
66402b0666 LibGUI+Userland: Port TabWidget set_tab_title to new string 2023-03-16 09:58:42 +01:00
Karol Kosek
4f08a05a3b LibGUI: Store Tab titles using the new string class 2023-03-16 09:58:42 +01:00
Karol Kosek
446c600d09 LibGUI+Applications: Port SettingsWindow::add_tab() to the new string 2023-03-16 09:58:42 +01:00
Karol Kosek
797968c310 LibGUI+Userland: Make TabWidget::*add_tab() take title using new string 2023-03-16 09:58:42 +01:00
Karol Kosek
3805e4e3a9 LibGUI+HackStudio+PixelPaint: Port Widget title to the new String
I had to add a set_title(String) helper function for ImageEditor because
TabWidget requires it. This is a temporary fix and will be handled in
subsequent commit.
2023-03-16 09:58:42 +01:00
Karol Kosek
858e55b653 LibCore: Add new REGISTER_STRING_PROPERTY macro 2023-03-16 09:58:42 +01:00
Karol Kosek
ee5838084d LibCore+Userland: Add DEPRECATED infix to REGISTER_STRING_PROPERTY macro 2023-03-16 09:58:42 +01:00
Mathis Wiehl
9927dab993 LibWeb: Don't drop single <br/> lines
Previously, when having inline contexts consisting of just a `<br/>`
tag, we would not create a line box.

Ensure that there is always a line box when a line is explicitly being
broken and also ensure it won't be trimmed due to being empty.

This will a fix a number of sites that use `<br>` tags for layouts
between block elements (even though the spec says they shouldn't).
2023-03-16 08:40:29 +00:00
Tim Ledbetter
2fe4be40af LibGUI: Store correct address in TreeViewModel's ModelIndices
After `8a48246` m_nodes[row] amd m_child_nodes[row] return a
NonnullRefPtr<Node>, so we were putting the wrong address
into the ModelIndex's data.
2023-03-16 08:05:58 +01:00
Tim Ledbetter
5ed78d39dd LibGUI: Don't invoke non-visible shortcuts 2023-03-16 00:02:08 +01:00
Andreas Kling
5e81734520 LibGfx: Make the Palette constructor take NNRP<PaletteImpl> 2023-03-15 23:29:00 +01:00
Andreas Kling
5146b9b35e LibWeb: Scale the font when painting the text on buttons
Button text was staying the same size at all zoom levels. :^)
2023-03-15 23:29:00 +01:00
Andreas Kling
20132da88d LibWeb: Don't treat erroring subresource loads as success
If a subresource fails to load, we don't care that we got some custom
404 page. The subresource should still be considered failed.

This is an ad-hoc solution that unbreaks Acid2. This code will
eventually be replaced by fetch mechanisms.
2023-03-15 23:29:00 +01:00
Liav A
d16d805d96 Kernel: Merge {get,set}_process_name syscalls to the prctl syscall
It makes much more sense to have these actions being performed via the
prctl syscall, as they both require 2 plain arguments to be passed to
the syscall layer, and in contrast to most syscalls, we don't get in
these removed syscalls an automatic representation of Userspace<T>, but
two FlatPtr(s) to perform casting on them in the prctl syscall which is
suited to what has been done in the removed syscalls.

Also, it makes sense to have these actions in the prctl syscall, because
they are strongly related to the process control concept of the prctl
syscall.
2023-03-15 20:10:48 +01:00
Timothy Flynn
2d45e1fca5 LibWeb: Port the CSS namespace to IDL 2023-03-15 12:48:25 -04:00
Timothy Flynn
020c2b59c4 LibWeb: Support generating IDL namespaces
These are similar to prototypes and constructors in that they will now
be lazily instantiated when they are first requested.
2023-03-15 12:48:25 -04:00
Timothy Flynn
61ecdbca54 LibIDL: Begin parsing IDL namespaces
For example, the CSS namespace is defined via IDL, but we currently have
a manual implementation.
2023-03-15 12:48:25 -04:00
Sam Atkins
406a7ea577 LibSyntax+Libraries: Replace TextStyle with Gfx::TextAttributes
Rather than creating a TextStyle struct, and then copying its fields
over to a TextAttributes, let's just create a TextAttributes to start
with. This also simplifies the syntax highlighting code by letting us
define underlines along with the other text styling.
2023-03-15 14:55:49 +01:00
Sam Atkins
6d8f046fd0 LibGfx+Userland: Make TextAttributes::underline_style optional
Rather than having a style AND a field saying whether to use the style,
just make the style Optional.
2023-03-15 14:55:49 +01:00
Nico Weber
609b616085 LibGfx: Make a comment in BMPWriter more precise 2023-03-15 13:54:09 +00:00
Nico Weber
e37000b1ea LibGfx: Let decode_bmp_v5_dib() skip reserved field
This has no effect in practice: decode_bmp_v5_dib() is the last
thing called with the streamer object (...the streamer is passed
to set_dib_bitmasks(), but that doesn't read anything off it except
for DIBType::Info bitmaps, which v5 bitmaps aren't).

But dib_size is 16 larger for v5 than for v4, so we should read
16 bytes.

This is also useful for a hypothetical person who might look at
the reading code to figure out how the writing code should look like.
2023-03-15 13:54:09 +00:00
Nico Weber
8d3ab2de56 LibGfx: Make BMPWriter code a tiny bit shorter 2023-03-15 13:54:09 +00:00
Nico Weber
6189994b24 LibGfx: Let BMPWriter optionally embed an ICC profile 2023-03-15 13:54:09 +00:00
Nico Weber
a93a88c73c LibGfx: Allow BMPWriter to write v5 bmps and make that the default 2023-03-15 13:54:09 +00:00
Nico Weber
1db0883fea LibGfx: VERIFY correct type length in PNGChunk ctor 2023-03-15 11:02:41 +00:00
Nico Weber
bc248d28f7 LibGfx: Make PNGChunk::m_type a String instead of a DeprecatedString
It's always 4 bytes, so the data fits in a String's inline buffer.
(Else I would've used a StringView.)
2023-03-15 11:02:41 +00:00
Nico Weber
fd57ba1d90 LibGfx: Use * a b s t r a c t i o n * in PNGChunk::store_type() 2023-03-15 11:02:41 +00:00
Nico Weber
1a03f45a73 LibGfx: Remove reckless PNGChunk::add(T) method
This method added function using host byte order, which is never what we
want.

In practice, it was fine because it was only called from add_u8()
(which is just 1 byte large) and add_as_big_endian() (since that did
endian swapping before calling the method). But the method doesn't
really help any and is dangerous, so remove it.

No behavior change.
2023-03-15 11:02:41 +00:00
Nico Weber
6a8c8aae9b LibGfx: Remove unused PNGChunk::add_as_little_endian() method
PNG uses big-endian data internally.
2023-03-15 11:02:41 +00:00
Nico Weber
189ea375a5 LibGfx: Let PNGWriter optionally embed an ICC profile 2023-03-15 11:02:41 +00:00
Nico Weber
6e2d3fe0df LibGfx: Add PNGChunk::compress_and_add API 2023-03-15 11:02:41 +00:00
Nico Weber
75895bc892 LibGfx: Use ReadonlyBytes in PNGChunk API 2023-03-15 11:02:41 +00:00
Andreas Kling
664f30a2c9 LibWeb: Don't truncate font sizes before scaling them to device pixels
This fixes an issue where fonts would often paint at the wrong sizes
with device pixel ratios other than 1.0.
2023-03-15 11:43:54 +01:00
Andreas Kling
a4927f523b LibGfx: Add Font::point_size()
This returns the font size in pt instead of px.
2023-03-15 11:43:54 +01:00
Andreas Kling
db545b51ef LibWeb: Make sure float: left boxes get pushed down if they can't fit 2023-03-15 11:43:54 +01:00
implicitfield
ba8bd2e558 LibGUI: Do not attempt to close non-existent notifications 2023-03-15 07:52:08 +00:00
Matthew Olsson
7c0c1c8f49 LibJS+LibWeb: Wrap raw JS::Cell*/& fields in GCPtr/NonnullGCPtr 2023-03-15 08:48:49 +01:00
Matthew Olsson
1df3652e27 LibJS: Allow constructing a Handle<T> from a {Nonnull,}GCPtr<T> 2023-03-15 08:48:49 +01:00