summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-07-06LibC: Don't clear static storage during `endpwent`Tim Schumacher
2022-07-06LibC: Don't clear static storage during `endgrent`Tim Schumacher
The POSIX documentation for `endgrent` only mentions that it "closes the group database", not that it clears the backing storage for return values. This means that applications might make use of the returned values even after closing the group database itself. This includes our own implementations for `getgrnam` and `getgrgid`. The specification also states that "the storage areas might be overwritten by a subsequent call to `getgrgid`, `getgrnam`, or `getgrent`". This implies that `getgrgid` and `getgrnam` aren't meant to have their own static storage and instead rely on the storage of `getgrent`.
2022-07-06LibWeb: Cache flex item main sizes to avoid relayout during same cycleAndreas Kling
This makes twitter.com actually load & render (although not very well.)
2022-07-05LibJS: Rename TimeHourMinuteBasicFormatNotAmbiguousLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/70de75b
2022-07-05LibJS: Rename TimeZoneNumericUTCOffsetNotAmbiguousAllowedNegativeLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/9ddd57e
2022-07-05LibJS: Rename TimeZoneNumericUTCOffsetNotAmbiguousLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/5ebd34b
2022-07-05LibJS: Simplify TimeZoneNumericUTCOffsetNotAmbiguousLinus Groh
This is an editorial change in the Temporal spec. See: - https://github.com/tc39/proposal-temporal/commit/ccef468 - https://github.com/tc39/proposal-temporal/commit/5b38ab4
2022-07-05LibJS: Consistently check Temporal overflow optionsLinus Groh
This is a normative change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/c8ee2bd
2022-07-05LibJS: Remove unnecessary checks for undefined before ToPositiveIntegerLinus Groh
This is an editorial change in the Temporal spec. See: https://github.com/tc39/proposal-temporal/commit/9f3bf53
2022-07-05Docs: FAQ: Improve grammar in 2 paragraphsJonta
2022-07-05LibWeb: Trigger a relayout after setting Element.innerHTMLItamar
In addition to tearing down the layout tree, we also want to trigger a relayout for the changes made by setting Element.innerHTML to take effect.
2022-07-05LibGUI: Don't ignore invisible widgets during layout changesthankyouverycool
As they may be setting themselves visible again in the process. Fixes inability to toggle widgets on and off in some apps.
2022-07-05LibWeb: Implement XMLSerializerLuke Wilde
The main thing that is missing is validating certain pieces of data against XML productions in well-formed mode, but nothing uses well-formed mode right now. Required by Closure Library for sanitising HTML. https://github.com/google/closure-library/blob/e687b3d8ab014787b9f10b08b3f597b637392480/closure/goog/html/sanitizer/safedomtreeprocessor.js#L117
2022-07-05Tests: Add tests for inheriting signal handlersTim Schumacher
2022-07-05Kernel: Copy signal handlers when forkingTim Schumacher
2022-07-05Kernel: Do a POSIX-correct signal handler reset on execTim Schumacher
2022-07-05WebContent: Invalidate document style when changing the page's paletteLuke Wilde
This makes the page automatically update to reflect the system theme when in "Color Scheme > Follow System Theme" mode without having to manually cause a style update.
2022-07-05Browser+WebContent: Fix inspecting non-visible nodesMacDue
I already fixed the crash from this in #14470, but didn't fully fix the issue. Currently the browser just avoids sending the inspect_dom_node() IPC call for non-visible nodes. The main problem with this is it means the browser keeps displaying the overlay for the previously selected node. This commit fixes the crash in the WebContent side, so the IPC call can still be made and the selection correctly updated.
2022-07-05LibELF: Take TLS segment alignment into account in DynamicLoaderIdan Horowitz
Previously we would just tightly pack the different libraries' TLS segments together, but that is incorrect, as they might require some kind of minimum alignment for their TLS base address. We now plumb the required TLS segment alignment down to the TLS block linear allocator and align the base address down to the appropriate alignment.
2022-07-05AK: Add an align_down_to power of two helperIdan Horowitz
Matching the similar align_up_to helper
2022-07-05LibRegex: Use the correct values for comparing LUT entriesAli Mohammad Pur
Previously we were ignoring the insensitive flag for LUT lookups.
2022-07-05LibRegex: Use proper CharRange constructor instead of bit_castingAli Mohammad Pur
Otherwise the range order would be inverted.
2022-07-05LibArchive: Guard against major() and minor() macros from old glibcAndrew Kaster
glibc before 2.28 defines major() and minor() macros from sys/types.h. This triggers a Lagom warning for old distros that use versions older than that, such as Ubuntu 18.04. This fixes a break in the compiler-explorer Lagom build, which is based off 18.04 docker containers.
2022-07-05LibGfx: Always truncate glyph coordinates in Painter::draw_text_run()Andreas Kling
This fixes an issue with glyphs jiggling 1px back and forth due to inconsistent rounding.
2022-07-04LibRegex: Fully interpret the Compare Op when looking for overlapsAli Mohammad Pur
We had a really naive and simplistic implementation, which lead to various issues where the optimiser incorrectly rewrote the regex to use atomic groups; this commit fixes that.
2022-07-04Base: Example of border-radius on iframe and canvas elementsMacDue
2022-07-04Base: Add some border-radius + overflow: hidden HTML examplesMacDue
2022-07-04Base: Move fun canvas demo JavaScript to seperate fileMacDue
This will allow this demo to be reused for other tests.
2022-07-04LibWeb: Support adding a border-radius to <iframe> elementsMacDue
2022-07-04LibWeb: Support adding a border-radius to <canvas> elementsMacDue
2022-07-04LibWeb: Use ScopedCornerRadiusClip for image paintingMacDue
2022-07-04LibWeb: Use ScopedCornerRadiusClip for shadow paintingMacDue
2022-07-04LibWeb: Use ScopedCornerRadiusClip for background paintingMacDue
2022-07-04LibWeb: Add ScopedCornerRadiusClipMacDue
This a simple RAII helper for the BorderRadiusCornerClipper it samples under the corners on construction, then blits them back on exiting the scope. This encapsulates a fairly common pattern.
2022-07-04LibWeb: Support overflow: hidden with a border-radiusMacDue
Note: With this change the border-radius is clipped if ethier the overflow-x or overflow-y is hidden (it is a little unclear what happens if just one is set, but it seems like most browsers treat one set + border-radius the same as if overflow: hidden was set).
2022-07-04LibWeb: Use padding box for clipping overflowMacDue
The padding box should be used otherwise the content can overflow on to the boxes borders.
2022-07-04LibWeb: Add option to allocate new bitmap for BorderRadiusCornerClipperMacDue
This will be needed for overflow: hidden, that clips things which may themselves use the BorderRadiusCornerClipper.
2022-07-04LibWeb: Always apply min/max cross size constraints to flex itemsAndreas Kling
We were neglecting to apply min-size and max-size constraints in the fast path for flex items with a definite cross size.
2022-07-04LibWeb: Simplify some WeakPtr assignmentsAndreas Kling
We can assign a raw pointer directly to a WeakPtr without null-checking it first.
2022-07-04LibJS: Explicitly instantiate Parser::parse_function_nodeDaniel Bertalan
Due to macOS visibility rules, this function did not end up being exported from liblagom-js.dylib, causing LagomWeb to fail to link.
2022-07-04LibHTTP: Include JsonObject.h in Job.cppDaniel Bertalan
JsonArray.h does not #include the definition of JsonValue::serialize, as it lives in JsonObject.h. The macOS Clang target handles symbol visibility slightly differently (I couldn't figure out how exactly), so no visible instantiation ended up being created for the function, causing a link failure.
2022-07-04Tests: Move sprintf test from AK/ to LibC/Daniel Bertalan
This test doesn't test AK::String, but LibC's sprintf instead, so it does not belong in `Tests/AK`. This also means this test won't be ran on Lagom using the host OS's printf implementation. Fixes a deprecated declaration warning when compiling with macOS SDK 13.
2022-07-04Lagom: Do not set -fno-semantic-interposition on macOSDaniel Bertalan
The Mach-O file format does not have ELF's interposition rules, so this flag does not make sense for macOS builds. While GCC silently accepts the unsupported option, Clang issues a warning for it. This commit makes it possible to build Lagom with LLVM from Homebrew.
2022-07-04LibJS/Tests: Disable one Array.prototype.toSpliced test for nowLinus Groh
It keeps failing on i686, and will until we've updated a bunch of size_t APIs in the codebase to u64.
2022-07-04Docs: Add kleines Filmröllchen's YouTube-channelJonta
2022-07-04LibWeb: Use lowercase type selectors to match against html elementsnetworkException
Previously we would fail to match a selector like "NAV" against a <nav> html element. Note that the strings must be identical in XML Documents.
2022-07-04LibWeb: Add the type field to DOM::DocumentnetworkException
This patch adds the document type concept to documents and sets it in various places.
2022-07-04LibWeb: Remove unnecessary return in ResolvedCSSStyleDeclarationnetworkException
2022-07-04Shell: Immediately resolve value when setting a variableAli Mohammad Pur
The lazy resolution mechanism made it so that the variables were linked together, causing unexpected behaviour: true x=$? # expected: x=0 false echo $x # expected: 0, actual: 1
2022-07-04Base: Update Network manpage to the new NetworkServer behaviorMaciej