Commit graph

50193 commits

Author SHA1 Message Date
Cubic Love c6454d37c0 Base+ColorLines: Move assets from /icons/ to /graphics/
The graphics directory is a more suitable home for game assets.
2023-05-05 11:52:33 +01:00
Cubic Love 248542535d Base+LibChess: Move assets from /icons/ to /graphics/
The graphics directory is a more suitable home for game assets.
2023-05-05 11:52:33 +01:00
Cubic Love 240a56d9ce Base+CatDog: Move assets from /icons/ to /graphics/
The graphics directory is a more suitable home for demo assets.
Also, update the example presenter file which uses a CatDog sprite.
2023-05-05 11:52:33 +01:00
Cubic Love 1d6f2e5608 Base+LibCards: Move card backs from /icons/ to /graphics/
The graphics directory is a more suitable home for game assets.
Also, move card backs into their own subfolder in preparation for a
themes subfolder for card fronts.
2023-05-05 11:52:33 +01:00
Aliaksandr Kalenik 34b1186272 LibWeb: Remove early resolve to auto while calculating border-box width
`Length::resolved(Node&)` transforms infinite values to "auto".

Following transformations:
Infinite (Length) -> "auto" -> 0 (px)
cause border-box width to be resolved in zero when it should be inf px.

Removing `Length::resolved(Node&)` makes it work right:
Infinite (Length) -> Infinite (px)

Fixes #18649
2023-05-05 10:01:28 +02:00
stelar7 2d2d2539b4 LibTLS: Use the TBS ASN.1 data when verifying certificates 2023-05-05 09:36:43 +03:30
stelar7 0b70314379 LibCrypto: Store the TBS ASN.1 data on the certificate
This way we dont need to guess the offsets in LibTLS when using it.
2023-05-05 09:36:43 +03:30
Ali Mohammad Pur 24c7995743 Shell: Rename the verb {lookup => look_up} 2023-05-05 09:35:24 +03:30
Ali Mohammad Pur 4d00b372c8 Shell: Make the builtins' POSIX mode requirement more explicit
Instead of checking in each individual function, add the mode to
ENUMERATE_SHELL_BUILTINS() and let has_builtin() handle it.
2023-05-05 09:35:24 +03:30
Ali Mohammad Pur 367da548ff Shell: Make null_or_alternative actually look up the given variable 2023-05-05 09:35:24 +03:30
Ali Mohammad Pur 1403e56535 Shell: Place all variables in the closest nonlocal frame in POSIX mode 2023-05-05 09:35:24 +03:30
Ali Mohammad Pur 0d8b90aec6 Shell: Allow newlines before do in POSIX for loops 2023-05-05 09:35:24 +03:30
Ali Mohammad Pur fca5a34ad3 Shell: Allow assignment-prefixed commands to run builtins
`env` is not capable of running shell builtins, so make a simple
builtin in its place.
2023-05-05 09:35:24 +03:30
Ali Mohammad Pur e2336d9de5 Shell: Add support for unset -v in POSIX mode 2023-05-05 09:35:24 +03:30
Ali Mohammad Pur 71441ea932 Shell: Allow lossy conversion from list -> string in POSIX mode
Similar to bash, this operation returns only the first element because
reasons.
2023-05-05 09:35:24 +03:30
Ali Mohammad Pur 8a042cd9cb Shell: Allow non-exhaustive 'case' statements in POSIX 2023-05-05 09:35:24 +03:30
Ali Mohammad Pur ef551a045d Shell: Add support for the POSIX 'read' builtin 2023-05-05 09:35:24 +03:30
Ali Mohammad Pur aecd91aedc Shell: Correctly handle escaped quote characters in strings
Previously "foo\`bar" was treated literally, but \` is a valid escape
character.
This commit makes that string correctly evaluate as "foo`bar".
2023-05-05 09:35:24 +03:30
Ali Mohammad Pur bbfedf17b7 Shell: Actually execute loop/case bodies when running them 2023-05-05 09:35:24 +03:30
Ali Mohammad Pur 7b031138fc Shell: Correctly handle commands after heredoc contents
Previously we did not emit a newline after the ending heredoc key, which
wreaked havoc on the parser logic, leading to parse errors.
2023-05-05 09:35:24 +03:30
Ali Mohammad Pur 93413f8682 Shell: Use the correct range for named variable expansions
Previously we were starting the variable expansions before the starting
'$' and calculating the wrong length, this commit makes it so we
calculate the right range for them.
2023-05-05 09:35:24 +03:30
Ali Mohammad Pur 79c76d67ce Shell: Add the 'break' and 'continue' POSIX builtins
These only support n=1 for now.
2023-05-05 09:35:24 +03:30
Aliaksandr Kalenik 0318ac5ce4 LibWeb: Remove setting length to 0px if it is not definite
If available width (or height) is max-content and width (or height)
value is 100% it should be resolved in infinite px, not 0 px.

Fixes #18639
2023-05-05 06:20:44 +02:00
Fabian Dellwing b443c0b80b Ports: Update OpenJDK 2023-05-05 02:19:05 +02:00
Fabian Dellwing 36a26d7fa8 Userland: Fix wrong signature of dladdr
This function is supposed to take a `const void *addr` as first
parameter, but we took a `void *addr`.

https://refspecs.linuxfoundation.org/LSB_4.1.0/LSB-Core-generic/LSB-Core-generic/baselib-dladdr-3.html
2023-05-05 02:19:05 +02:00
Ali Mohammad Pur 87e95ceb69 LibXML: Notify the listener about the root node as well
We previously did not notify the listener about entering the root node,
which caused the following snippet to produce the wrong output:
    a = new DOMParser
    a.parseFromString("<x/>", "text/xml").documentElement // != null
2023-05-05 01:33:49 +02:00
kleines Filmröllchen 0ab19dc4cd Piano: Allow per-track controls (again)
This makes Piano exactly as usable as when I started the large refactor
some years ago, which *sounds* like I'm a terrible person but now it (1)
looks nicer and (2) has a flexible backend that can already deal with
aribtrary kinds of processors on any track.
2023-05-05 01:32:09 +02:00
kleines Filmröllchen d757027638 Piano: Use size_t for track count 2023-05-05 01:32:09 +02:00
kleines Filmröllchen 876f00e635 Base: Demonstrate ArgsParser and format strings in cli project template
This demonstrates both an option and an optional positional argument, as
well as some simple format string printing with {}.
2023-05-05 02:15:43 +03:30
kleines Filmröllchen fd68e9f1ac Base: Split out cpp-library template files into actual files
These were part of the postcreate script previously, but with the new
powers of sed, we can text-replace the library name and make changing
them much more convenient.
2023-05-05 02:15:43 +03:30
kleines Filmröllchen 2451e97a11 Base: Adjust serenity-application template with some cpp-gui pieces
Namely, the window title and size are carried over, since a larger
window with a more readable "Example Application" title is better to
understand. I also took the opportunity to add a missing trailing
newline to the generated CMake file.
2023-05-05 02:15:43 +03:30
kleines Filmröllchen 7a0fae7be1 Base: Remove the cpp-gui HackStudio template
This template is essentially an older version of the
serenity-application template, it does not compile anymore and is
therefore entirely redundant.
2023-05-05 02:15:43 +03:30
kleines Filmröllchen 5ebc741594 sed: Implement in-place file editing
This implements the '-i' flag in the GNU version, without suffix
support.
2023-05-05 02:15:43 +03:30
kleines Filmröllchen 34f8147385 sed: Correctly unveil all paths
- The veil was never closed.
- unveil() only works with absolute paths.
- Files from the regular input list weren't unveiled.
2023-05-05 02:15:43 +03:30
MacDue 95c571ca53 PixelPaint: Make gradient tool hardness slider width match other inputs 2023-05-04 23:59:51 +02:00
MacDue 3a60ddc5a8 PixelPaint: Correct variable names in GradientTool.cpp
Previously these variables were all prefixed `size_`, but used for
the opacity value.
2023-05-04 23:59:51 +02:00
Tim Schumacher 56d861ebe0 AK: Prevent bit counter underflows in the new BitStream
Our current `peek_bits` function allows retrieving more bits than we can
actually provide, so whenever someone discards the requested bit count
afterwards we were underflowing the value instead.
2023-05-04 20:01:16 +02:00
Tim Schumacher dffef6bb71 LibCompress: Remove special casing for looping DEFLATE seekbacks
The `copy_from_seekback` method already handles this exactly as DEFLATE
expects, but it is slightly more optimized.
2023-05-04 20:01:16 +02:00
Tim Schumacher 00ac73be57 Tests: Add a zlib test for "missing end bits"
The actual cause for the "missing bits" is currently unknown, and this
test case doesn't actually start obviously breaking yet unless we start
reporting errors about missing bits. However, since we are touching the
BitStream implementation already, let's add the test early to make extra
sure that we aren't breaking anything.
2023-05-04 20:01:16 +02:00
Daniel van Gerpen 98badc1466 Ports/ncdu: Update to version 1.18.1 2023-05-04 19:45:24 +02:00
Andreas Kling 66c41e7c45 LibWeb: Use JS::SafeFunction for module fetching callbacks
This fixes another GC crash seen on https://shopify.com/

Found it by collecting garbage after every 500th heap allocation.
2023-05-04 18:30:57 +02:00
MacDue 390ade3cf4 Base: Add some SVG <radialGradient> examples 2023-05-04 16:50:01 +02:00
MacDue 9b652842e4 LibWeb: Add an initial implementation of SVG <radialGradient>
This follows on from the SVG linear gradients. It supports the same
features (xlink:href, gradientUnits, gradientTransform).

With this commit I have now implemented all web gradients :^)

(Though we are still missing a few parameters for SVG gradients,
e.g. spreadMethod).
2023-05-04 16:50:01 +02:00
MacDue 2826bd2b45 LibWeb: Move some common SVG gradient functions into SVGGradientElement
These functions will also be used by SVG radial gradients.
2023-05-04 16:50:01 +02:00
MacDue eda429111e LibWeb: Don't inherit SVG color stops if current gradient has stops
The previous behaviour was incorrect, the template's stops should only
be used if the current gradient does not have any stops.
2023-05-04 16:50:01 +02:00
MacDue 9ecc5413de LibWeb: Add tag and attribute names for SVG linear gradients 2023-05-04 16:50:01 +02:00
MacDue 81cefab1b1 LibGfx: Implement PaintStyle for SVG radial gradients
This also slightly refactors things to share more implementation with
the SVG linear gradients, and improve accuracy (which fixes some banding
issues).
2023-05-04 16:50:01 +02:00
MacDue 3d54b9ffa3 LibWeb: Mark SVG::NumberPercentage accessors as const 2023-05-04 16:50:01 +02:00
MacDue cf0e31ca87 LibWeb: Remove general SVGFormattingContext FIXME
Since this FIXME was added the SVGFormattingContext has got a fair bit
more spec compliant. The other more specific FIXMEs in this file should
be more useful.
2023-05-04 16:50:01 +02:00
Timothy Flynn ac8b892a25 LibWeb: Pause HTMLMediaElement when its document becomes inactive
For example, when navigating to another page, this ensures any media
resource will not continue playing.
2023-05-04 16:48:10 +02:00