Commit graph

42082 commits

Author SHA1 Message Date
Liav A 1837a5301f Ports: Add GNU which port 2022-10-15 21:03:28 +02:00
Liav A 1e213cb3c4 Ports: Add file utility port 2022-10-15 21:02:57 +02:00
Moustafa Raafat a4fa604bde WebDriver: Implement POST /session/{id}/forward endpoint 2022-10-15 21:01:59 +02:00
Moustafa Raafat 9132656856 WebDriver: Implement POST /session/{id}/back endpoint 2022-10-15 21:01:59 +02:00
Timothy Flynn 443ffab9dc LibJS: Use infallible ParseTimeZoneOffsetString
This is an editorial change in the Temporal spec. See:
https://github.com/tc39/proposal-temporal/commit/654e300
2022-10-15 18:05:02 +02:00
Timothy Flynn d992cba014 LibJS: Remove Temporal::DefaultTimeZone
This is an editorial change in the Temporal spec. See:
https://github.com/tc39/proposal-temporal/commit/e232580
2022-10-15 18:05:02 +02:00
Timothy Flynn 735e1c4e20 LibJS: Replace GetIANATimeZoneOffset[Ns] with GetNamedTimeZoneOffset[Ns]
This is an editorial change in the Temporal spec. See:
https://github.com/tc39/proposal-temporal/commit/e44d36b
2022-10-15 18:05:02 +02:00
Timothy Flynn 053cc90dbe LibJS: Replace GetIANATimeZoneEpochValue with GetNamedTimeZoneEpoch[Ns]
This is an editorial change in the Temporal spec. See:
https://github.com/tc39/proposal-temporal/commit/e834014
2022-10-15 18:05:02 +02:00
Timothy Flynn 1a84dbcb07 LibJS: Replace GetEpochFromISOParts with GetUTCEpochNanoseconds
This is an editorial change in the Temporal spec. See:
https://github.com/tc39/proposal-temporal/commit/1b051cc

Note that since Date's implementation of this AO uses Crypto bigints
rather than allocating JS bigints, this change has the fallout of
removing some unused VM parameters and adding an overload of the
IsValidEpochNanoseconds AO for use without a JS::BigInt.
2022-10-15 18:05:02 +02:00
Timothy Flynn 4fbec2e8b3 LibJS: Replace RoundTowardsZero with truncate
This is an editorial change in the Temporal spec. See:
https://github.com/tc39/proposal-temporal/commit/409ab66
2022-10-15 18:05:02 +02:00
Timothy Flynn 019211bcb4 LibJS: Consolidate sources of system time zone to one location in Date
This is a normative change in the ECMA-262 spec. See:
https://github.com/tc39/ecma262/commit/43fd5f2

For the most part, these AOs are hoisted from Temporal.

Note that despite being a normative change, the expectation is that
this change does not result in any behavior differences.
2022-10-15 18:05:02 +02:00
Timothy Flynn e952dca026 LibJS: Expose the StringToNumber AO for public use
This will be needed outside of Value.cpp.
2022-10-15 18:05:02 +02:00
Tobias Christiansen a33cad1197 WebDriver: Fix HTTP Status for 'no such window' error
The 'no such window' error returns a 404, not a 400.
2022-10-15 15:43:42 +01:00
Tobias Christiansen 1179d951f6 WebDriver: Implement POST /session/{id}/refresh endpoint 2022-10-15 15:43:42 +01:00
martinfalisse 8653903bee Base: Update display grid test page
Update the tests after adding minmax(), auto-fill and auto-fit
functionality to the LibWeb implementation of the CSS Grid.
2022-10-15 16:04:01 +02:00
martinfalisse bd9ec60305 LibWeb: Implement minmax()
On the basis of the values passed to the minmax functions, do different
actions given different min and max grid track sizes.
2022-10-15 16:04:01 +02:00
martinfalisse 53f3df78e5 LibWeb: Implement auto-fill and auto-fit
Implement auto-fill and auto-fit for the grid, which allow for placing
as many columns as will fit within a given container size.
2022-10-15 16:04:01 +02:00
martinfalisse 4745a0c20a LibWeb: Implement more of the grid spec
This is a small change that implements more of the CSS Grid spec.
2022-10-15 16:04:01 +02:00
martinfalisse e227e8027f LibWeb: Parse minmax() value
Parse the minmax() function when passed to the grid-template-columns or
grid-template-rows CSS property.
2022-10-15 16:04:01 +02:00
martinfalisse a5f042b424 LibWeb: Parse auto-fill and auto-fit attributes
Parse auto-fill and auto-fit attributes for the CSS Grid.
2022-10-15 16:04:01 +02:00
martinfalisse 3cba4b6e41 LibWeb: Refactor parsing a GridTrackSize
This functionality was duplicated and this way it is more clean. It will
also be used when parsing minmax() values.
2022-10-15 16:04:01 +02:00
martinfalisse 202620e80c LibWeb: Refactor GridTrack maintenance in the GFC
Refactor the m_grid_columns and m_grid_rows to be maintained in the
class, which will make it easier to later create functions relating to
them.
2022-10-15 16:04:01 +02:00
martinfalisse f7bd1edde3 LibWeb: Calculate the height of the css grid correctly
Enable the CSS grid height to be calculated correclly.
2022-10-15 16:04:01 +02:00
martinfalisse b6a29ae9e2 LibWeb: Use w3 instead of drafts for spec
Add more specs to the CSS Grid class and update others so as to use
w3.org instead of the drafts website.
2022-10-15 16:04:01 +02:00
martinfalisse f7af190de0 LibWeb: Add parent classes for managing GridTrackSizes
Add classes ExplicitTrackSizing and MetaGridTrackSize which will allow
for managing properties like auto-fill and minmax.

In the following CSS example there are 3 classes that will be used:
grid-template-column: repeat(auto-fill, minmax(50px, 1fr) 75px);

ExplicitTrackSizing - will contain the entire value. e.g.
repeat(auto-fill, minmax(50px, 1fr) 75px)

With a flag if it's a repeat, as well as references to the
MetaGridTrackSizes which is the next step down.

MetaGridTrackSize:
Contain the individual grid track sizes. Here there are two:
minmax(50px, 1fr) as well as 75px.

This way can keep track if it's a minmax function or not, and the
references to both GridTrackSizes in the case it is, or in just the one
if it is not.

GridTrackSize:
Is the most basic element, in this case there are three in total; two of
which are held by the first MetaGridTrackSize, and the third is held by
the second MetaGridTrackSize.
Examples: 50px, 1fr and 75px.
2022-10-15 16:04:01 +02:00
Tim Schumacher 414a22a386 Ports/dosfstools: Create symlinks automatically instead of manually
Replace the manual creation of symlinks with the
`--enable-compat-symlinks` configure option, which automatically creates
the symlinks that we want and more.
2022-10-15 15:17:47 +02:00
Tim Schumacher 4b97c445a2 Ports/dosfstools: Don't run autogen
The release tarball arrives preconfigured, so there is no need for us to
run autogen manually.
2022-10-15 15:17:47 +02:00
Gunnar Beutner c97421eabe Spider: Make the last move undoable
The lets the user undo the last card move. Card moves which cause
cards to be moved to the waste stack cannot be undone.
2022-10-15 14:21:45 +02:00
Andreas Kling 6d18164ab0 LibWeb: Apply min-width and max-width constraints to inline-block boxes 2022-10-15 14:10:30 +02:00
Andreas Kling b289f97a65 LibWeb: Split intrinsic heights cache by definite available widths
As it turns out, we sometimes query the intrinsic height of a box before
having fully resolved and/or constrained its containing block. Because
of this, we may enter intrinsic sizing with different amounts of
available width for the same box.

To accommodate this scenario, we now allow caching of multiple intrinsic
heights, separated by the amount of available width provided as input.
2022-10-15 14:01:54 +02:00
Andreas Kling 869b322a8f LibWeb: Assign hypothetical flex item main sizes as temporary main size
This colors a bit outside the lines of the specification, but the spec
doesn't offer a proper explanation for how descendants of a flex item
are supposed to have access to the flex item's main size for purposes
of percentage resolution.

The approach I came up with here was to take the hypothetical main size
of each flex item, and assign it as a temporary main size. This allows
percentage resolution in descendants to work against the pre-flexing
main size of items. This seems to match how other engines behave,
although it feels somewhat dirty. If/when we learn more about this,
we can come up with something nicer.
2022-10-15 14:01:54 +02:00
Liav A 6bb738c1b3 Ports: Add dosfstools port 2022-10-15 13:16:24 +02:00
Gunnar Beutner f70ec7582f Meta: Properly ignore targets which don't have a component name
Previously we'd add [component_name-NOTFOUND] sections to the
components.ini file for targets which weren't part of a component.
2022-10-15 13:12:42 +02:00
Linus Groh acc1c2b3cb LibWeb/Fetch: Add "webidentity" destination for FedCM
This is a change in the Fetch spec.

See:
- https://github.com/whatwg/fetch/commit/30d462d
- https://github.com/whatwg/fetch/commit/7487a97
2022-10-15 12:15:31 +02:00
Linus Groh 5995a9fd06 LibWeb/Fetch: Add duplex property to Request
This is a change in the Fetch spec.

See: https://github.com/whatwg/fetch/commit/1fbc40c
2022-10-15 12:15:31 +02:00
Linus Groh 60e9790a40 LibWeb/Fetch: Add support for parsing a single range header value
This is a change in the Fetch spec.

See:
- https://github.com/whatwg/fetch/commit/2d080d7
- https://github.com/whatwg/fetch/commit/a18fb3e
2022-10-15 12:15:31 +02:00
Brian Gianforcaro b8e0cec20e Meta: Instruct stale-bot to ignore pr-is-blocked PRs 2022-10-15 12:05:57 +02:00
Gunnar Beutner afa9060012 Kernel: Fix build error on AARCH64
This currently fails with:

error: #pragma once in main file [-Werror]
2022-10-15 06:01:45 +00:00
ne0ndrag0n 323c403d43 NetworkSettings+SpiceAgent: Update and add required unveil paths 2022-10-15 05:59:39 +00:00
snooze6214 1fde3737f4 LibJS: Move time zone annotation parsing into ParseISODateTime
This is an editorial change in the Temporal spec.

See: tc39/proposal-temporal@c410e25e47
2022-10-15 05:09:09 +00:00
Undefine 135ca3fa1b Kernel: Add support for the FAT32 filesystem
This commit adds read-only support for the FAT32 filesystem. It also
includes support for long file names.
2022-10-14 18:36:40 -06:00
Undefine 9718667bcf AK: Add StringView::find_last_not 2022-10-14 18:36:40 -06:00
demostanis 48aea321c5 Meta: Don't tell to run script as root when that's not the actual error
Before, and that was the cause of many confusion in #build-problems
on Discord, the Meta/build-image-*.sh scripts would error out with
the message "this script needs to run as root" while the actual error
was unrelated.
2022-10-15 01:40:01 +02:00
Timothy Flynn d007337d97 AK: Explictly disallow lvalue reference types within Variant
This prevents an ICE with GCC trying to declare e.g. Variant<String&>.

Using a concept is a bit overkill here, but clang otherwise trips over
the friendship declaration to other Variant types:

    template<typename... NewTs>
    friend struct Variant;

Without using a concept, clang believes this is re-declaring the Variant
type with differing requirements ("error: requires clause differs in
template redeclaration").
2022-10-15 01:26:14 +02:00
Pavel db23e2d546 Base: Add test page for exceptions
Created a simple page where you can check
that the exceptions appear in the JS console.
2022-10-15 01:25:12 +02:00
Pavel 40aad77ab1 WebContent+LibWeb+LibJS: Report exceptions to the JS console
Print exceptions passed to `HTML::report_exception` in the JS console

Refactored `ExceptionReporter`: in order to report exception now
you need to pass the relevant realm in it. For passed `JS::Value`
we now create `JS::Error` object to print value as the error message.
2022-10-15 01:25:12 +02:00
leeight 2eb6dbd4f0 headless-browser: Add ca-certs-path options 2022-10-15 02:44:47 +03:30
Lucas CHOLLET c837a1a8de LibAudio: Factorize stream initialisation to base class LoaderPlugin
All actual plugins follow the same logic to initialize their stream,
this commit factorizes all of this to their base class: `LoaderPlugin`.
2022-10-14 23:11:23 +02:00
Lucas CHOLLET 754b129f4a LibAudio: Allow the MP3 plugin to be constructed from a byte buffer 2022-10-14 23:11:23 +02:00
Lucas CHOLLET bb17ee8397 LibAudio: Port the MP3 plugin to Core::Stream 2022-10-14 23:11:23 +02:00