Commit graph

184 commits

Author SHA1 Message Date
MacDue b6f2ba6917 Base: Example of border-radius on iframe and canvas elements 2022-07-04 23:09:06 +02:00
MacDue 304e0966aa Base: Add some border-radius + overflow: hidden HTML examples 2022-07-04 23:09:06 +02:00
MacDue b21d95bbe3 Base: Move fun canvas demo JavaScript to seperate file
This will allow this demo to be reused for other tests.
2022-07-04 23:09:06 +02:00
MacDue 2ee7c44036 Base: Add some background-clip + border-radius HTML examples 2022-07-04 11:12:44 +02:00
Linus Groh 3c9bf1e161 Base: Add example for calc(<percentage> - <length>) to calc.html
`calc(<percentage> + -<length>)` did work before, but a direct
`calc(<percentage> - <length>)` was broken. Let's have a test for both.
2022-06-30 12:11:57 +01:00
Linus Groh b3a22c97cd Base: Fix label/actual style mismatches in calc.html 2022-06-30 12:11:57 +01:00
Luke Wilde 62491cda0b LibWeb: Use CSO if running script is null in HostPromiseRejectionTracker 2022-06-29 21:21:50 +01:00
Xexxa b691269912 Base+Browser+BrowserSettings: Add default page for new tab 2022-06-26 22:18:30 +01:00
MacDue f807fe6f6c Base: Add box-shadow + border-radius HTML examples
This now also shows the same box-shadows on the right on top of a
background to test the clipping underneath the content.
2022-06-23 19:13:24 +01:00
kleines Filmröllchen bca0e31cba Base: Optimize a bunch of PNGs
These all save at least a couple of kilobytes.
2022-06-18 21:58:43 +04:30
MacDue 68bc742d9e Base: Add <img> tag + border-radius HTML example 2022-06-16 10:28:07 +01:00
MacDue 51899751d7 Base: Add background-image + border-radius HTML examples 2022-06-16 10:28:07 +01:00
Thomas Fach-Pedersen 626e7a5c7f LibWeb: Test parsing of CSS Level 4 rgb and hsl syntax 2022-06-15 19:10:43 +01:00
MacDue 4e21835e70 Base: Add an elliptical outline border HTML example 2022-06-14 00:25:12 +01:00
Luke Wilde 076c9772a4 LibWeb: Add ability to present LibGL framebuffer and add clearing 2022-06-13 21:45:27 +01:00
MacDue 16c4b606f6 Base: Add some elliptical border radius HTML examples 2022-06-13 09:43:45 +01:00
kleines Filmröllchen a7a5721149 LibWeb: Dispatch mouse events to topmost element instead of hit target
This improves our spec compliance by allowing the user to click
non-element nodes (like text) and having the click be registered with
the parent element (like a div or button). This makes Fandom's cookie
accept button work if you click the text. Additionally, the events test
page contains a test to check the target element, which would previously
not exist when we fired the event at a non-element.
2022-06-05 22:31:06 +01:00
Karol Kosek a232395b77 LibWeb: Check recursively if CSS functions contain var() or attr()
Previously, `var()` inside functions like `rgb()` wasn't resolved.

This will set the background color for badges in the New category on
https://ports.serenityos.net. :^)
2022-06-02 22:31:41 +02:00
Rafał Babiarz 4fcdbd57e9 Base: Add test page for Web Storage API 2022-05-28 23:54:06 +01:00
Sam Atkins 7c91fda088 LibWeb: Allow multiple text-decoration-lines
The spec grammar for `text-decoration-line` is:

`none | [ underline || overline || line-through || blink ]`

Which means that it's either `none`, or any combination of the other
values. This patch makes that parse for `text-decoration-line` and
`text-decoration`, stores the results as a Vector, and adjusts
`paint_text_decoration()` to run as a loop over all the values that are
provided.

As noted, storing a Vector of values is a bit wasteful, as they could be
stored as flags in a single `u8`. But I was getting too confused trying
to do that in a nice way.
2022-04-14 21:54:10 +02:00
Simon Wanner 5ebcb15c92 Base: Add a test page for CSS font-face 2022-04-09 23:48:18 +02:00
Enver Balalic 747f347b75 LibWeb: Implement flex reverse layouts
This builds on the work done by implementing the flex order CSS
property and implements flex reverse layouts by just reversing
the order and the items within each order bucket.
2022-04-02 19:01:14 +02:00
Enver Balalic 58398b1e12 LibWeb: Implement the flex order CSS property
Adds support for the flex order property and a test page for it
on the browser welcome page.
2022-04-02 18:40:32 +02:00
Linus Groh b64080a913 Base: Add a <noscript> test page 2022-03-31 17:08:38 +02:00
Enver Balalic 8b4d09932a LibWeb: Fix sizing of flex child that has flex-basis 0
Before if an element didn't have a main min size we would clamp
it to a literal zero. If that element also had a flex-basis 0
it's width would end up being 0.
This patch adds a determine_min_main_size_of_child function that
will calculate the minimum main size for the box based on the
content of the box.
We use the result of that function now instead of clamping
the element main min size to 0.

This also adds one more box to the flex.html test page, which is
the same flex: 0 0 0 box but with flex-direction: column.
2022-03-30 21:16:47 +02:00
Daniel Glazman fdf1c3c2f1 LibWeb: More tests for attribute selectors 2022-03-29 18:53:20 +02:00
Karol Kosek 55ac11a0ae Base: Add inline properties to custom-properties test page 2022-03-26 17:30:49 +01:00
Andreas Kling 6cffabef03 LibWeb: Support CSS vertical-align values "top" and "bottom" 2022-03-24 22:57:01 +01:00
Sam Atkins c914e732d2 LibWeb+Base: Fix An+B of foo parsing
When I wrote the An+B parser, it was guaranteed to have no
non-whitespace tokens after it. This is no longer true with the `of
foo` syntax, so this patch corrects the logic when there is no `+B`
segment.

This makes this case shown on Twitter work correctly. :^)
https://twitter.com/simevidas/status/1506657566012678151
2022-03-24 18:08:45 +01:00
Sam Atkins 4d8789b173 Base: Add a text-shadow test page 2022-03-24 18:08:34 +01:00
Simon Wanner bc5d39493b Base: Add a test page for CSS transforms
This also acts as a little stress test for flexbox layout :^)
2022-03-22 02:06:21 +01:00
Sam Atkins 4827092554 Base: Add a :focus/:focus-within test page 2022-03-20 17:35:31 +00:00
Daniel Lemos 3eb6016dda LibWeb: Add some default style for <textarea> elements and a test 2022-03-18 19:59:19 +01:00
Sam Atkins 0e4c35b4b2 Base: Add of foo tests to nth-child and nth-last-child test pages
Also split the selector-list up for easier debugging.
2022-03-18 11:34:02 +01:00
Sam Atkins 47eb4b2db7 Base: Add a test page for the CSS :where() selector
This behaves identically to :is() except for specificity, so this test
page is identical to the other one. It's not because I'm lazy. :^)
2022-03-18 11:34:02 +01:00
Sam Atkins 88d218721b Base: Add nested lists to list test-page 2022-03-18 11:34:02 +01:00
Sam Atkins ca8540aba2 Base: Correct the :not() test page's title
Oops!
2022-03-18 11:34:02 +01:00
Sam Atkins 0d01097a54 Base: Add a test page for the CSS :is() selector 2022-03-18 11:34:02 +01:00
Simon Wanner 1f9d76c7b8 LibWeb: Invalidate styles after CSSImportRule loads
This replicates the behavior of StyleSheetList::add_sheet, making sure
the rules added by the imported style sheet are applied.
2022-03-14 22:22:53 +01:00
Sam Atkins 2dad3dca9a Base: Add ratio tests to media-query test page
Note that only the first test actually functions currently.
Single-number ratios instead get parsed as a `<number>`, and will do
until the parser gets smarter. (The alternative, where all
single-numbers get parsed as `<ratio>`, does make the tests succeed,
but numbers are more common than ratios so I have given numbers
preference for now.)

Also simplified the styling and text a bit. Now, red = fail, green =
success. No more "unstyled = fail" stuff.
2022-03-07 13:42:25 +01:00
Timothy Flynn 8156ec5da8 Base: Replace setInterval test page with a more thorough timer test page
Ensure we test both setTimeout and setInterval (and their cancellation
methods), and test scenarios such as raising exceptions in the callback,
passing extra arguments, etc.
2022-03-04 19:51:26 +01:00
Sam Atkins 973f3c3642 LibWeb: Correct handling of negative step values in nth-foo() selectors
This should be 1% on Acid3. :^)

Added the `-5n+3` case to all `nth-of-whatever()` selector test pages,
so we can easily check that it works.
2022-03-02 17:39:57 +01:00
Sam Atkins e65ff4b8d1 Base: Remove my copyright from this HTML file
I didn't notice that CLion had auto-generated this, oops! As wonderful
as my web design skills are, I don't actually want to enshrine my name
at the top of this file for posterity.
2022-03-01 15:14:18 +00:00
Sam Atkins 5563381b28 Base: Make it obvious which pseudo-element tests are unimplemented
(Sorry Linus!)
2022-02-28 16:50:19 +01:00
Sam Atkins 2e23cce557 Base: Add :nth-of-type and :nth-last-of-type test pages 2022-02-26 15:30:24 +01:00
Sam Atkins 8411ff3f14 fixup! Base: Add a pseudo-element test page 2022-02-25 19:35:34 +01:00
Sam Atkins a9ad72cc0f Base: Add a pseudo-element test page 2022-02-25 19:35:34 +01:00
Karol Kosek 4e50f8a8b7 LibWeb+Base: Parse font-style CSS property 2022-02-20 11:50:38 +01:00
Sam Atkins 7880718fa8 LibWeb: Implement @supports selector(.foo)
This is defined in
https://www.w3.org/TR/css-conditional-4/#at-supports-ext which just
became a CR. :^)
2022-02-19 19:33:54 +01:00
Maciej 3e1c1c0b16 LibWeb: Add support for CSS image-rendering property
Currently only "auto" and "pixelated" values are supported.
2022-02-19 11:38:46 +01:00