1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-10 05:27:35 +00:00
Commit graph

145 commits

Author SHA1 Message Date
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
Adam Hodgen
b9b24cb1c1 Base: Add <input> test page 2022-02-18 01:48:51 +01:00
serenitydev
b5d891ed6a Base+LibWeb: Add test case for Workers on welcome homepage 2022-02-17 22:45:21 +01:00
Rafał Babiarz
d159511d85 Base: Add test page for progress bar element 2022-02-16 15:34:08 -05:00
Timothy Flynn
4f19deb13b LibWeb: Implement reverse lookup to labels from their labelable nodes
This enables, for example, clicking on the check box, dragging the mouse
over to the label, releasing the mouse to act as a click on the check
box.

This was implemented for labels / labelable nodes with the "for"
attribute already. This implements the same for labelable nodes that are
inside the label.
2022-02-16 19:18:57 +01:00
Sam Atkins
50cc008efd Base: Add relative-length tests to media-query test page 2022-02-15 23:31:42 +01:00
Sam Atkins
2fad940b0b LibWeb: Add SVG <polygon> element and test case :^) 2022-02-11 21:38:27 +01:00
Sam Atkins
116a1f485c LibWeb: Add SVG <polyline> element and test case :^) 2022-02-11 21:38:27 +01:00
Sam Atkins
17912330c4 LibWeb: Add SVG <line> element and test case :^) 2022-02-11 21:38:27 +01:00
Sam Atkins
3a1a35ef8f LibWeb: Add SVG <ellipse> element and test case :^) 2022-02-11 21:38:27 +01:00
Sam Atkins
21bdcee3c3 LibWeb: Add SVG <circle> element and test case :^) 2022-02-11 21:38:27 +01:00
Sam Atkins
1dde6a0a2b LibWeb: Add SVG <rect> element and test case :^) 2022-02-11 21:38:27 +01:00
Sam Atkins
b51f428165 LibWeb: Parse multiple box-shadows :^)
Again, we don't yet render these (we render nothing) but this gets rid
of a decent amount of CSS spam on Discord.
2022-02-08 17:45:51 +01:00
Sam Atkins
c547bed13b LibWeb: Reorganize box-shadow parsing code
The pattern we've adopted for other multi-value properties is to run in
a loop like this, since that makes it easier to cater for values
appearing in different orders.
2022-02-08 17:45:51 +01:00
Andreas Kling
6c31f6c073 Base: Add a browser test page that dumps out all mouse events 2022-02-07 13:28:59 +01:00
Ali Mohammad Pur
d66c513131 Base: Replace the WebSocket demo target URL with a working one
websocket.org was shutdown somewhere in late 2021, switch to
websocket.events to make the demo work.
2022-02-06 13:10:10 +01:00
Ali Mohammad Pur
8339415939 Base: Format the WebSocket demo page with prettier 2022-02-06 13:10:10 +01:00
Andreas Kling
04bec7a4f5 LibWeb: Remove CSS::StyleInvalidator in favor of dirtying + lazy update
Style updates are lazy since late last year, so the StyleInvalidator is
actually hurting us more than it's helping by running the entire CSS
selector machine on the whole DOM for every attribute change.

Instead, simply mark the entire DOM dirty and let the lazy style update
mechanism run *once* on next event loop iteration.
2022-02-05 22:50:39 +01:00
Sam Atkins
8bd1854406 LibWeb+Base: Enable calc() for font-weight property :^)
Modified the test-page because FontDatabase looks for exact font-weight
matches, so requesting weight 800 in a font that only has 700, causes
it to return the default font instead. So, we ask for 700 here.

The actual fix is to improve our font-matching but I am trying not to
get distracted today. :^)
2022-02-04 13:52:02 +01:00
Sam Atkins
f4ceea2a0e Base: Modify SVG test page to include inherited attributes
Some SVG attributes can be inherited, similarly to CSS properties. This
change moves some attributes from a `<path>` to a parent `<g>` to test
this works.
2022-01-24 17:04:00 +01:00
Nico Weber
7b51102495 Base: Add a <pre> test page 2022-01-23 12:08:37 +01:00
mjz19910
10ec98dd38 Everywhere: Fix spelling mistakes 2022-01-07 15:44:42 +01:00
Sam Atkins
416033a660 LibWeb: Support range syntax for media queries
This means you can now do queries like:

```css
@media (400px <= width < 800px) { }
```

Chromium and Firefox which I tested with both don't support this yet, so
that's cool. :^)
2022-01-02 15:43:51 +01:00
Sam Atkins
10aa06f16f Base: Add more test cases to CSS var() test page 2021-12-09 21:30:31 +01:00
Ali Mohammad Pur
0652774783 Base: Add a test page for async functions + XMLHttpRequest 2021-11-28 13:28:01 +00:00
Sam Atkins
cf89f86dbd Base: Add additional test cases to backgrounds.html
- Add background color to `background-clip` test
- Add a mixed `background-repeat: space round` test
2021-11-17 22:20:01 +01:00
Sam Atkins
368595d850 Base: Add CSS background test page
Also organized the welcome page list slightly.
2021-11-10 14:38:49 +01:00
Timothy Flynn
1e6afa9fd5 Base: Add tests for data: URLs and large list-style-image to lists.html 2021-10-29 22:06:49 +02:00
Timothy Flynn
72b409a2f7 Base: Add a test page for the various element classList APIs 2021-10-18 23:33:56 +02:00
Timothy Flynn
59caa4edda Base: Add a test page for the various element attribute APIs 2021-10-17 13:51:10 +01:00
Luke Wilde
b7404015aa Base: Add a test for the early return steps of "prepare a script"
This tests the early return steps of "prepare a script" that come
_before_ step 10 "Set the element's "already started" flag". The
relevant steps are steps 6, 7 and 8. If this algorithm returns on any
of these steps, the script can be reinserted matching the requirements
and will run.

https://html.spec.whatwg.org/multipage/scripting.html#prepare-a-script

I wrote this test page up while testing something else, but found a bug
in Firefox where it doesn't allow re-preparing the script if step 8
fails: https://bugzilla.mozilla.org/show_bug.cgi?id=1735590
2021-10-14 10:32:13 +02:00
Sam Atkins
2a2efdedf7 Base: Add CSS.supports / @supports {} test-page 2021-10-08 23:02:57 +02:00
Luke Wilde
ca060d8566 Base: Use requestAnimationFrame in Game of Life WASM demo
Since OOPWV now supports RAF, we can use it in the GOL WASM demo :^)
2021-10-07 19:13:34 +02:00
Sam Atkins
19fc225b45 Base: Add window.matchMedia() test to media-queries.html 2021-10-05 18:51:39 +02:00
Sam Atkins
b4833bf2a3 Base: Add media-queries test page 2021-10-01 20:03:03 +02:00
Andreas Kling
a248ec63e3 LibWeb: Implement window.queueMicrotask(callback)
This API allows authors to schedule a serialized JS callback that will
get invoked at the next spec-allowed opportunity.
2021-09-26 14:39:14 +02:00
Sam Atkins
10e54a29b2 Base: Add several scaled images to test page
These look really bad with our current nearest-neighbor image scaling,
so they are a good test case to see how well other scaling algorithms
work.
2021-09-20 22:18:20 +02:00
Sam Atkins
14dc20118c Base: Add page for testing styling on display: inline elements 2021-09-19 22:53:35 +02:00
Andreas Kling
95559c4277 LibWeb: Implement basic support for MessageChannel and MessagePort
This patch adds a basic initial implementation of these API's.

Since LibWeb currently doesn't support workers, this implementation of
messaging doesn't bother with serializing and deserializing messages.
2021-09-19 22:34:44 +02:00
Sam Atkins
17bb913625 LibWeb: Implement currentcolor special value
The `currentcolor` identifier represents the current value of the
`color` property. This is the default value for `border-color` and
`text-decoration-color`, and is generally useful to have. :^)
2021-09-17 23:06:45 +02:00