Commit graph

40301 commits

Author SHA1 Message Date
Karol Kosek
cf69763b54 LibGfx: Compress PNGs with a better compression level
While for a general purpose encoder a good balance between compression
speed and size by default is important, in case of PNG it don't matter
that much, as it was said in #14594.

Also note that it's not the best we can have. We use zlib's compression
level, which has a range of 0-4, while our deflate implementation ranges
from 0 to 5.
2022-07-30 23:21:42 +02:00
Karol Kosek
a0546318f9 LibWeb: Make <th> elements bold by default 2022-07-30 22:32:29 +02:00
MacDue
d4b2eb22e1 LibWeb: Resolve circular IDL imports
These circular imports led to the generator silently failing to
generate the required methods/properties.
2022-07-30 13:20:47 +02:00
MacDue
8da0c36212 Meta: Set has_unscopable_member for interfaces include mixins with them 2022-07-30 13:20:47 +02:00
Kenneth Myhra
bbd9490683 LibWeb: Handle endings member of options being "native"
This patch passes the options argument to process_blob_parts() and makes
use of the "convert line endings to native" algorithm when the endings
member of options (BlobPropertyBag) is set to "native".
2022-07-30 10:59:46 +01:00
Kenneth Myhra
516ea4d758 LibWeb: Implement "convert line endings to native" algorithm
This adds the "convert line endings to native" algorithm from the
FileAPI spec.
2022-07-30 10:59:46 +01:00
Linus Groh
0355c72d6a LibJS: Validate fractionalSecondDigits after truncation
This is a normative change in the Temporal spec.
Also correct some bogus spec numbers.

See:
- 39e1784
- c3c0ee1
- 273cb2e
2022-07-30 10:50:50 +01:00
Linus Groh
6850f25840 LibJS: Support IANA legacy names in the Temporal ISO 8601 grammar
This is a normative change in the Temporal spec.

See: 2419680
2022-07-30 10:50:50 +01:00
Linus Groh
41791146fd LibJS: Disallow out-of-range return from previous / next transition
This is a normative change in the Temporal spec.

See: f3c771f
2022-07-30 10:50:50 +01:00
Chase Struck
835d516d10 Base: Add more manpages
This commit adds manpages for About(1), AnalogClock(1), Assistant(1),
Browser(1), Calculator(1), and Calendar(1).
2022-07-29 20:48:04 +00:00
Linus Groh
c84e2e2891 Meta: Add Dennis Esternon to the contributors list :^) 2022-07-29 21:30:22 +01:00
Sam Atkins
200e111af0 LibWeb: Extract the InnerHTML IDL mixin 2022-07-29 17:15:49 +01:00
Sam Atkins
b456adcb59 LibWeb: Extract the WindowOrWorkerGlobalScope IDL mixin
`Window` itself isn't generated from an IDL file so it doesn't get to
make use of this mixin, but it ideally would do so.
2022-07-29 17:15:49 +01:00
Sam Atkins
899fa30bdd LibWeb: Extract the LinkStyle IDL mixin 2022-07-29 17:15:49 +01:00
Sam Atkins
8d2d315858 LibWeb: Extract the HTMLHyperlinkElementUtils IDL mixin
Also added FIXMEs for some missing methods while I was at it.
2022-07-29 17:15:49 +01:00
Sam Atkins
abd359a921 LibWeb: Skip whitespace when parsing IDL non-interface entities
This stops the WrapperGenerator freaking out when an IDL file starts
with a comment or whitespace. :^)
2022-07-29 17:15:49 +01:00
Sam Atkins
d4c40e3aad LibWeb: Extract the ParentNode IDL mixin 2022-07-29 17:15:49 +01:00
Sam Atkins
79fdc08de9 LibWeb: Correct typo in Document.idl
Makes me wonder how things were working when Document was never
including GlobalEventHandlers.
2022-07-29 17:15:49 +01:00
Sam Atkins
d6a5ddd3c0 LibWeb: Extract the ChildNode IDL mixin 2022-07-29 17:15:49 +01:00
djwisdom
6db558e0ae Base: Update LucidityRegular12 add Regional Indicator glyphs
U+1F1E6 - U+1F1FF
https://www.unicode.org/charts/PDF/U1F100.pdf
2022-07-29 16:08:51 +01:00
djwisdom
181fb04f02 Base: Update AtaraxiaLight10 add Regional Indicator glyphs
U+1F1E6 - U+1F1FF
https://www.unicode.org/charts/PDF/U1F100.pdf
2022-07-29 16:08:51 +01:00
djwisdom
9c38c7e890 Base: Update SatoriRegular add Supplemental Arrows-C
Supplemental Arrows-C
U+1F800-U+1F80B, U+1F810-U+1F813, U+1F850-U+1F859,
U+1F860-U1F867, U+1F894-U+1F897, U+1F8A0-U+1F8A7
https://www.unicode.org/charts/PDF/U1F800.pdf
2022-07-29 16:08:41 +01:00
djwisdom
cfdca76d86 Base: Update SatoriMonoRegular add Supplemental Arrows-C
Supplemental Arrows-C
U+1F800-U+1F80B, U+1F810-U+1F813, U+1F850-U+1F859,
U+1F860-U1F867, U+1F894-U+1F897, U+1F8A0-U+1F8A7
https://www.unicode.org/charts/PDF/U1F800.pdf
2022-07-29 16:08:41 +01:00
Liav A
aea3213d51 Utilities/lsusb: Allow the utility to work without existing USB IDs file
In case we failed to open /res/usb.ids or the user requested to not use
that file, we simply don't try to resolve the USB IDs and print them
without any identification.
2022-07-28 04:28:25 -07:00
Liav A
622e3b06ce Meta: Put USB and PCI IDs in the right folder in the Build environment
Not sure why that happens and how it worked until now, but we need to be
more precise about the location of PCI and USB IDs when decompressing
them while building the OS.
2022-07-28 04:25:07 -07:00
demostanis
ef2d4b9ed6 Base: Add sort(1) man page 2022-07-28 00:44:08 +00:00
MacDue
281e46e8b3 grep: Fix out of bounds StringView indexing
This is another case of out of bounds indexing exposed by 13406b8.
2022-07-27 22:51:54 +00:00
Undefine
97cc33ca47 Everywhere: Make the codebase more architecture aware 2022-07-27 21:46:42 +00:00
Tim Schumacher
6c4b5775e1 LibCore: Implement four-digit modes for FilePermissionsMask parsing 2022-07-27 21:45:01 +00:00
Tim Schumacher
130f04c493 LibCore: Implement the 'X' modifier into FilePermissionMask 2022-07-27 21:45:01 +00:00
djwisdom
8598fbb008 Ports: Update serenity-theming use latest commit 5d626d9 2022-07-27 21:43:33 +00:00
Timothy Flynn
60f3880650 LibJS: Remove %TypedArray%.prototype.toSpliced
This was removed from the change-array-by-copy proposal. See:
4c194d9
2022-07-27 17:35:50 +01:00
Timothy Flynn
a8d532c4fe LibJS: Update Array.prototype.sort comments to align with implementation
This was fixed in the change-array-by-copy proposal. See:
60823eb
2022-07-27 17:35:50 +01:00
demostanis
b89aced2e3 LaunchServer: Let open_file_url use app defaults
Before, programs using open_file_url (such as Terminal) would
fail to open any file if its extension (or mime type) wasn't
specified in LaunchServer.ini. This patch now permits it.
2022-07-27 17:11:25 +01:00
demostanis
48766449e5 LaunchServer+LibDesktop: Open from mime type
Before, LaunchServer would only open files based on their extension.
This wouldn't work if the file had the wrong one.
2022-07-27 17:11:25 +01:00
Andreas Kling
031322fde3 LibWeb: Make :enabled and :disabled selector handling more idiomatic 2022-07-27 17:29:48 +02:00
Andreas Kling
2ad98fdf80 LibWeb: Add fast_is<HTMLElement>()
This avoids slow RTTI lookups in selector matching.
2022-07-27 17:29:48 +02:00
Andreas Kling
9f32da1dbc LibWeb: Add fast_is<HTMLBaseElement>()
This avoids slow RTTI lookups in Document::base_url().
2022-07-27 17:29:48 +02:00
Sam Atkins
7b4004d682 LibWeb: Ensure PercentageOr<T>::resolved() returns a concrete T
Which is to say, a T where `is_calculated()` is false.

As is becoming a repeating theme with CSS types, we have two states for
a FooPercentage that is a `calc()` expression: Either the FooPercentage
holds the CalculatedStyleValue directly, or it holds a Foo which itself
holds the CalculatedStyleValue. The first case was already handled to
return Foo, and with this patch, the second is too. :^)
2022-07-27 17:03:55 +02:00
Sam Atkins
3fce4f7c91 LibWeb: Resolve calc() FooPercentages that only contained percentages
Fixes #14697

Percentages inside `calc()` only got converted to the concrete type
(eg, Length) when added or subtracted with one. So if the `calc
()` doesn't contain any of that type, it would resolve to a
Percentage.

Now, we catch that returned Percentage and convert it to the proper
type. This fixes cases like `width: calc(100% / 2);`.
2022-07-27 17:03:55 +02:00
Sam Atkins
ef2469bfed LibWeb: Add missing Formatters for CSS dimension types 2022-07-27 17:03:55 +02:00
MacDue
9d0dccaa3f less: Fix out of bounds StringView indexing
This fixes indexing the StringView before knowing if the index
is valid. This did not crash until the changes from 13406b8
which added runtime checks for StringView indexing.
2022-07-27 05:34:41 -07:00
sfdd
d1671d4f86 Documentation: Better file formats documentation 2022-07-27 10:13:21 +01:00
b14ckcat
b8cfec7b1f Kernel: Move SysFS USB create function 2022-07-27 05:52:35 +00:00
b14ckcat
4b1537387f Kernel: Fix USB hotplug crash
Currently the SysFS node for USB devices is only initialized for USB
hubs, which means it will cause a kernel crash upon being dereferenced
in a non-hub device. This fixes the problem by making initialization
happen for all USB devices.
2022-07-27 05:52:35 +00:00
Sam Atkins
11cb7c7b28 WindowServer: Ensure windows are wide enough to show title buttons :^)
Previously, windows without a defined minimum size (or one produced from
the minimum sizes of their contents) would be shrunk down to 0 x 0,
which makes the title buttons stick out the side and become impossible
to interact with.

This patch uses the theme metrics to calculate a minimum size that is as
small as possible while still keeping the title buttons and app icon
usable. This is combined with the minimum size requested by the app
itself.

Switching themes automatically updates the calculated minimum sizes for
all existing windows. As noted, if the new theme has narrower title
buttons then the old minimum is kept, but this shouldn't be noticeable
unless you're looking for it.
2022-07-27 00:01:42 +01:00
Sam Atkins
0fcb6920e3 Browser: Give BookmarksBarWidget a minimum size
Without this, it gets a minimum size that's very large and stops you
from resizing the Browser window narrower than 609px.
2022-07-27 00:01:42 +01:00
Karol Kosek
fe60459353 LibAudio: Seek to the first frame on reset in FLAC
The files weren't starting exactly from the beginning before.
This happened because the parameter now takes the sample index, instead
of a seekpoint.
2022-07-26 23:59:06 +01:00
Karol Kosek
2878ad681e LibAudio: Read FLAC Metadata blocks larger than the buffer size
Out of 40/63 failed tests, this change reduces the number down to four.
:^)

See: #14683
2022-07-26 23:59:06 +01:00
MacDue
43ebe5ca75 Base: Add some more border-radius test cases
* A border-radius + a border on a <img> tag
   - The border-radius on the <img> should shrink to line up with
     the border.
* A border-radius + a border on a div with overflow: hidden
   - The clipping border-radius should shrink (same as the image).
2022-07-26 23:56:29 +01:00