Commit graph

42558 commits

Author SHA1 Message Date
Linus Groh
793a1f5994 LibWeb: Actually define Blob-to-ReadableStream conversion
This is a change in the Fetch spec.

See: https://github.com/whatwg/fetch/commit/4cd70cf
2022-10-30 14:48:32 +00:00
Linus Groh
b1968b8bed LibWeb: Make Fetch::Infrastructure::{Request,Response,HeaderList} GC'd
This is the way.

On a more serious note, there's no reason to keep adding ref-counted
classes to LibWeb now that the majority of classes is GC'd - it only
adds the risk of discovering some cycle down the line, and forces us to
use handles as we can't visit().
2022-10-30 11:30:23 +00:00
premek
63122d0276 Base: Add Houses, Safety pin emoji
🧷 - U+1F9F7 Safety Pin
🏘 - U+1F3D8 House Buildings
2022-10-29 23:49:21 +01:00
Xexxa
c2e2b9d2ae Base: Add more yak emoji
􌴤 - U+10CD24 Yakslow
􌴥 - U+10CD25 Buffyak
􌴦 - U+10CD26 Yaktrap
􌵪 - U+10CD6A Yakthink
􌵫 - U+10CD6B Hyperyakkie
2022-10-29 18:54:08 +01:00
Xexxa
35dbef9808 Base: Add more emoji
🧔‍♀️ - U+1F9D4 U+200D U+2640 WOMAN: BEARD
🧝‍♂️ - U+1F9DD U+200D U+2642 MAN ELF
🧗 - U+1F9D7 PERSON CLIMBING
🦕 - U+1F995 SAUROPOD
🦖 - U+1F996 T-REX
💱 - U+1F4B1 CURRENCY EXCHANGE
🌬️ - U+1F32C WIND FACE
2022-10-29 18:54:08 +01:00
Xexxa
a1ffb7a5d3 Base: Adjust size of emoji U+26A7
⚧️ - U+26A7 TRANSGENDER SYMBOL
2022-10-29 18:54:08 +01:00
Xexxa
dcad3ee05f Base: Add U+2264 and U+2265 to Katica Regular 12
2264-2265 https://www.unicode.org/charts/PDF/U2200.pdf
2022-10-29 18:54:08 +01:00
Linus Groh
de3e6cc75c LibWeb: Ensure dom_exception_to_throw_completion() always takes a VM
The combination of template + auto&& parameter + constexpr if statements
allowed one caller to pass in a GlobalObject, without the compiler
complaining.
2022-10-29 15:48:46 +01:00
Linus Groh
9cda0b2b2c LibWeb: Remove outdated forward declarations 2022-10-29 15:48:46 +01:00
Linus Groh
6ce08d3f75 LibWeb: Use StringView literals for all WebIDL::SimpleExceptions 2022-10-29 15:48:46 +01:00
Andreas Kling
14d4f227f2 LibWeb: Don't invalidate style when adding/removing empty style sheet
For whatever reason, web pages sometimes add and/or remove a completely
empty style sheet. When this happens, we don't need to invalidate the
document's style, since the outcome will be the same as before.
2022-10-29 15:16:57 +02:00
Andreas Kling
ba6a9318c3 LibWeb: Don't update style/layout in template contents owner documents
These helper documents don't actually get rendered, so computing style
and doing layout for them is a complete waste of work.
2022-10-29 15:16:57 +02:00
Andreas Kling
64d5d633cf LibWeb: Don't invalidate layout when setting .innerHTML on <template>
HTML template elements don't affect rendering, so invalidating the
entire document's layout after poking into a <template> was a huge waste
of work on template-heavy pages.
2022-10-29 15:16:57 +02:00
Andreas Kling
ba5e511dc1 LibWeb: Make layout-after-resize lazy (because why not)
There's no need to force a synchronous relayout after the viewport has
been resized. By making it lazy, we might be able to coalesce it with
other layout work.
2022-10-29 15:16:57 +02:00
Andreas Kling
c7489e7665 LibWeb: Don't invalidate style for entire document on Node insertion
Like for attribute changes, we now only invalidate the insertion parent
and all of its descendants. Again, this is very aggressive, but also
way less than doing the entire document.

Once we implement the CSS :has() selector, we'll need to become more
sophisticated about invalidation.
2022-10-29 15:16:57 +02:00
Andreas Kling
a4de30de5a LibWeb: Update "appropriate template contents owner document" AO
This was moved from HTMLTemplateElement to Document at some point,
so let's match the spec and move it here too.
2022-10-29 15:16:57 +02:00
Andreas Kling
ccd72a2add LibWeb: Don't invalidate style for entire document on attribute change
We now only invalidate the style of the context element and all of its
descendants. It's still very aggressive, but much less than before.

Note that this will need to become a lot smarter once we implement the
CSS :has() selector.
2022-10-29 15:16:57 +02:00
Andreas Kling
5530040b3c LibWeb: Annotate and simplify the HTML fragment parsing algorithm
This patch adds inline spec comments, and then adjusts the code a bit
so it reads more like the spec.
2022-10-29 15:16:57 +02:00
premek
bddc9d6c52 Spreadsheet: Fix maxIf and minIf name in documentation 2022-10-29 06:29:11 +03:30
Luke Wilde
5e2b41175c LibWeb: Return empty Optional<StyleProperty> for shorthand properties
This is a stopgap until we implement shorthand -> longhand conversion.
2022-10-28 16:17:08 +01:00
Luke Wilde
377eb09492 LibWeb: Stub HTMLMediaElement.load 2022-10-28 16:17:08 +01:00
Luke Wilde
62e3117dfd LibWeb: Expose NodeFilter on the Window object 2022-10-28 16:17:08 +01:00
Luke Wilde
8fdf4b43cd LibWasm: Specify which instruction opcode failed validation in error 2022-10-28 10:27:02 +03:30
Luke Wilde
805e6593b9 LibWasm: Add missing validation for memory.copy
This has the exact same validation as memory.fill
2022-10-28 10:27:02 +03:30
Gunnar Beutner
2ef1e7e634 Meta: Add configuration file for YouCompleteMe
YouCompleteMe is a plugin for Vim which provides code-completion
functionality. This change adds a configuration file which makes
YouCompleteMe aware of which compile flags to use with clangd.
2022-10-27 20:52:39 +01:00
Jan200101
83b3403b52 Ports: Add Lite-XL 2022-10-27 20:44:20 +01:00
Jan200101
4b305e8fe4 Meta: Convert build directory path to be completely absolute 2022-10-27 20:43:55 +01:00
codelikecraze
7fd0035600 Base: Add Transgender Emoji (⚧ U+2617)
This commit adds a trans emoji
2022-10-27 20:40:27 +01:00
demostanis
7015c40905 ntpquery: Fix pledge and unveil invocations 2022-10-27 20:17:39 +01:00
Andreas Kling
b1c73b3605 Revert "LibWeb: Use OrderedHashMap to store pending idle callbacks"
This reverts commit dc15cacfc3.

It appears to be causing some assertions, so let's revert it.
2022-10-27 17:25:52 +02:00
Kenneth Myhra
e152a28737 Toolchain: Update BuildQemu.sh to qemu-7.1
QEMU 7.1 was released on August 30th.
Release Notes: https://wiki.qemu.org/ChangeLog/7.1

The patch 'Toolchain/Patches/qemu-cf-protection-none.patch' (or similar)
has been upstreamed so it can be safely removed.
2022-10-27 13:29:40 +02:00
krutalevex
6d2ea087a5 Ports: Update RetroArch + SDL2_sound 2022-10-27 13:16:59 +02:00
Beckett Normington
3c76f58999 Base: Add elephant emoji (U+1F418)
Emoji added:
🐘 - U+1F418 ELEPHANT
2022-10-27 13:08:36 +02:00
Tim Schumacher
1d5dbd1b80 LibCore: Limit to the user buffer size when reading lines from a stream
Previously, this would cause an assert to fail if one reads a completely
buffered line into a buffer that is smaller than the Stream's internal
buffer.
2022-10-27 13:08:19 +02:00
Sam Atkins
ff0a2b1a60 LibGfx+Everywhere: Make DisjointRectSet work for non-int Rects
For convenience, `DisjointIntRectSet` is an alias for
`DisjointRectSet<int>`, and is used everywhere for now.
2022-10-27 13:06:33 +02:00
Sam Atkins
f52413a70e LibGfx: Move DisjointRectSet code into the header file
This is in preparation for converting it to a template. No changes here,
only moving code around.
2022-10-27 13:06:33 +02:00
Sam Atkins
6a4dde1d99 LibGfx: Correct Line::to_string() output
This looks like a copy-paste issue from Rect::to_string().
2022-10-27 13:05:16 +02:00
Sam Atkins
07bceb861a LibGfx: Make formatting of spatial types work with non-int/floats
Line, Point, Rect, and Size now all have Formatters that will work with
any type that itself has a Formatter.
2022-10-27 13:05:16 +02:00
Andreas Kling
27b63feae5 LibWeb: Always resolve horizontal padding and borders on block-level boxes
We were neglecting to resolve the used horizontal padding and border
properties on block-level boxes when treating their width as `auto`
during intrinsic sizing.

This led to padding and border not contributing to the intrinsic width
of their containing block
2022-10-27 13:02:27 +02:00
Andreas Kling
4580e054f5 LibWeb: Place block-level boxes in both axes before doing inside layout
This ensures that static position calculations has access to final
box offsets.
2022-10-27 13:02:27 +02:00
Andreas Kling
3e10293047 LibWeb: Implement static position for abspos children of flex container 2022-10-27 13:02:27 +02:00
Timothy Flynn
bd592480e4 Meta: Replace Bash script for generating emoji.txt with C++ generator
We currently have two build-time parsers for the UCD's emoji-test.txt
file. To prepare for future changes, this removes the Bash parser and
moves its functionality to the newer C++ parser.
2022-10-27 12:59:56 +02:00
Timothy Flynn
b5a876e606 Meta: Allow specifying additional dependencies with invoke_generator 2022-10-27 12:59:56 +02:00
Timothy Slater
e73aeb4cea PixelPaint: Make scopes hideable
Vectorscope and Histogram are now hidden by default. New menu "Scopes"
allows for them to be toggled on/off.
2022-10-27 12:59:20 +02:00
kleines Filmröllchen
90d967baf1 Base: Document scheduler_{get,set}_parameters syscalls 2022-10-27 11:30:19 +01:00
kleines Filmröllchen
259bfe05b1 Kernel: Set priority of all threads within a process if requested
This is intended to reflect the POSIX sched_setparam API, which has some
cryptic language
(https://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html#tag_15_08_04_01
) that as far as I can tell implies we should prioritize process
scheduling policies over thread scheduling policies. Technically this
means that a process must have its own sets of policies that are
considered first by the scheduler, but it seems unlikely anyone relies
on this behavior in practice. So we just override all thread's policies,
making them (at least before calls to pthread_setschedparam) behave
exactly like specified on the surface.
2022-10-27 11:30:19 +01:00
kleines Filmröllchen
bbe40ae632 Kernel: Prevent regular users from accessing other processes' threads 2022-10-27 11:30:19 +01:00
kleines Filmröllchen
2477409680 Tests: Add pthread scheduler priority tests 2022-10-27 11:30:19 +01:00
kleines Filmröllchen
6dded99777 Kernel+LibC: Report correct scheduling priority limits
The priority range was changed several years ago, but the
userland-reported limits were just forgotten :skeleyak:. Move the thread
priority constants into an API header so that userland can use it
properly.
2022-10-27 11:30:19 +01:00
kleines Filmröllchen
ce25bd8584 LibC: Implement pthread_{get,set}schedparam 2022-10-27 11:30:19 +01:00