summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-10-29LibJS: Convert the CreateDynamicFunction AO to ThrowCompletionOrIdan Horowitz
2021-10-29LibJS: Convert ErrorPrototype functions to ThrowCompletionOrIdan Horowitz
2021-10-29LibJS: Convert WeakRefPrototype functions to ThrowCompletionOrIdan Horowitz
2021-10-29LibJS: Convert ArrayIteratorPrototype functions to ThrowCompletionOrIdan Horowitz
2021-10-29LibJS: Convert ConsoleObject functions to ThrowCompletionOrIdan Horowitz
2021-10-29LibJS: Convert JSONObject functions to ThrowCompletionOrIdan Horowitz
2021-10-29LibJS: Convert SetIteratorPrototype functions to ThrowCompletionOrIdan Horowitz
2021-10-29LibJS: Convert SetPrototype functions to ThrowCompletionOrIdan Horowitz
2021-10-29LibJS: Convert SetConstructor functions to ThrowCompletionOrIdan Horowitz
2021-10-29LibJS: Convert SymbolPrototype functions to ThrowCompletionOrIdan Horowitz
2021-10-29LibJS: Convert SymbolConstructor functions to ThrowCompletionOrIdan Horowitz
2021-10-29LibJS: Convert BigIntPrototype functions to ThrowCompletionOrIdan Horowitz
2021-10-29LibJS: Convert BigIntConstructor functions to ThrowCompletionOrIdan Horowitz
2021-10-29LibRegex: Don't ignore empty alternatives in append_alternation()Ali Mohammad Pur
Doing so would cause patterns like `(a|)` to not match the empty string.
2021-10-29CI: Rewrite the lintcommits workflow using an inline scriptthislooksfun
tim-actions/commit-message-checker-with-regex@v0.3.1 only uses the keys 'sha' and 'commit.message'. Passing more information than that is unnecessary and can lead to CI failures like this one: https://github.com/SerenityOS/serenity/runs/4029269017?check_suite_focus=true#step:4:7 Instead of trying to pass data between workflow steps, we can instead just do it all at once (plus this gives us more control over formatting, which has also been improved).
2021-10-28LibWeb: Add Element.webkitMatchesSelectorLuke Wilde
This is an alias of Element.matches for web compatibility. https://dom.spec.whatwg.org/#dom-element-webkitmatchesselector Used by particularly old versions of Sizzle, such as 1.10.2: https://github.com/jquery/jquery/blob/16b079b164d62bd807c612806842a13bf9b04d17/jquery.js#L1644 This particular version is used by DuckDuckGo.
2021-10-28LibWeb: Don't try to layout list-item markers in BFCAndreas Kling
Marker boxes are laid out by the corresponding ListItemBox. BFC should just leave them alone. This fixes a jiggling issue on welcome.html :^)
2021-10-28LibWeb: Add Layout::Box::border_box_as_relative_rect()Andreas Kling
This helper returns the border box (content+padding+border) of a given box. Margin not included.
2021-10-28LibWeb: Small fix to height computation for block-with-inline-childrenAndreas Kling
We now compute the used height of height:auto by measuring from the top content edge (y=0) to the bottom of the bottommost line box within the block container. This fixes an issue where we'd fail to account for the topmost line box being taller than any of its fragments (which can happen if the line-height is greater than the height of all fragments on the line.)
2021-10-28LibWeb: Use border edges when computing overflow for the ICBAndreas Kling
2021-10-28LibWeb: Null-check document before doing layout in PageHost::paint()Andreas Kling
2021-10-28LibWeb: Remove unused CSS::Length::relative_length_to_px(Layout::Node)Andreas Kling
2021-10-28LibWeb: Always update layout (if needed) before paintingAndreas Kling
2021-10-28LibWeb: Don't force line box fragments height to be at least line-heightAndreas Kling
I don't remember why we did things this way, but it's clearly not right to stretch fragments vertically. Instead, we should just align their bottom to the appropriate line (as we already do.)
2021-10-28LibWeb: Make non-absolute values for line-height fall back to font-sizeAndreas Kling
When using bitmap fonts, the computed *font* that we're using may be smaller than the font-size property asked for. We can still honor the font-size value in layout calculations.
2021-10-28LibWeb: Clip descendants of boxes with overflow:hiddenAndreas Kling
This is a very limited implementation of overflow:hidden, but since it's easy to cover this common scenario, let's do it.
2021-10-28LibWeb: Treat width:auto on tables as fit-contentAndreas Kling
Tables, unlike other block-level elements, should not stretch to fit their containing block by default.
2021-10-28LibWeb: Allow whitespace when parsing "!important" in CSSSam Atkins
This accounts for cases like: ```css .foo { color: blue ! important ; } ``` That's rare now that minifying is so popular, but does appear on some websites. I've added spec comments to `consume_a_declaration()` while I was at it.
2021-10-28LibWeb: Allow whitespace inside CSS attribute selectorsSam Atkins
Noticed this while checking some MediaWiki-based sites. It's not obvious, but the spec does allow this, by not mentioning it in this list of places whitespace is forbidden: https://www.w3.org/TR/selectors-4/#white-space
2021-10-28LibWeb: Remove two lowercase string creations from Element::has_classTimothy Flynn
2021-10-28LibWeb: Do not create lowercase strings in NamedNodeMap::get_attributeTimothy Flynn
Rather than following the spec exactly and creating lowercase strings, we can simply do a case-insensitive string comparison. The caveat is that creating attributes must follow the spec by creating the attribute name with a lowercase string.
2021-10-28LibWeb: Remove duplicated auto height computationBen Wiederhake
Note that these two implementation differ, but the one in FormattingContext.cpp seems to be more complete. It is also more recent.
2021-10-28LibWeb: Remove StyleProperties::set_property(PropertyID, StringView)Andreas Kling
This API has no more clients (and the last client that I just removed wasn't even using it right) so let's get rid of it.
2021-10-28LibWeb: Properly handle the <td align> attributeAndreas Kling
When valid, this attribute needs to result in an IdentifierStyleValue. Before this change we were turning it into a StringStyleValue, which then defaulted to left alignment for all values. For "center" and "middle", we turn it into -libweb-center. All other values are passed verbatim to the CSS parser.
2021-10-28Ports: Add Fontconfig portBrendan Coles
2021-10-28LibC: Include sys/uio.h in sys/socket.h for struct iovecIdan Horowitz
2021-10-28LibC+LibELF: Move getauxval and AT_* flags to sys/auxv.hIdan Horowitz
2021-10-28LibC: Change the type of FBProperties' fields from bool to unsigned charIdan Horowitz
The bool type is not available in C89.
2021-10-28Kernel: Add the IFF_* SIOCGIFFLAGS flag macrosIdan Horowitz
2021-10-28Kernel+LibC: Add support for the IPv4 TOS field via the IP_TOS sockoptIdan Horowitz
2021-10-28Kernel: Fix accidental memory over-read in getsockopt(IP_TTL)Idan Horowitz
We were accidentally casting the pointer to m_ttl from an u8* to an int* which resulted in copying of 3 extra unrelated bytes (which turned out to be padding in this case).
2021-10-28LibC: Add IPPROTO_ICMPV6 macroIdan Horowitz
2021-10-28ThemeEditor: Display the theme's window icons in the previewSam Atkins
If the icons could not be loaded, we fall back to the defaults (which are the bitmaps that were always used before.)
2021-10-28ThemeEditor: Add PathRole editingSam Atkins
This allows both typing the path, and selecting it with a file-open dialog.
2021-10-28ThemeEditor: Update value edit boxes when loading a theme fileSam Atkins
Previously, these would continue to show the previously entered values, until you interacted with the ComboBoxes.
2021-10-28ThemeEditor: Add MetricRole editingSam Atkins
The editing UI at the bottom is now split into two groups, one for colors and one for metrics.
2021-10-28LibGUI: Add MetricRole and PathRole to GUI::VariantSam Atkins
This is needed for making them editable in the ThemeEditor, like ColorRole is.
2021-10-28LibGfx: Add to_string() functions for MetricRole and PathRoleSam Atkins
2021-10-28ThemeEditor: Convert layout to GMLSam Atkins
2021-10-28ThemeEditor: Display window shadows in preview :^)Sam Atkins