1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-29 13:47:34 +00:00

LibWeb: Implement the CSS outline property :^)

...along with `outline-color`, `outline-style`, and `outline-width`.

This re-uses the existing border-painting code, which seems to work well
enough!

This replaces the previous code for drawing focus-outlines, with generic
outline painting for any elements that want it. Focus outlines are now
instead supported by this code in Default.css:

```css
:focus-visible {
    outline: auto;
}
```
This commit is contained in:
Sam Atkins 2023-08-02 17:24:14 +01:00 committed by Andreas Kling
parent 5640779838
commit fe7e797483
15 changed files with 174 additions and 40 deletions

View file

@ -1587,8 +1587,7 @@
"outline": {
"affects-layout": false,
"inherited": false,
"__comment": "FIXME: Initial value is really `medium invert none` but we don't yet parse the outline shorthand.",
"initial": "none",
"initial": "medium currentColor none",
"longhands": [
"outline-color",
"outline-style",
@ -1598,12 +1597,10 @@
"outline-color": {
"affects-layout": false,
"inherited": false,
"initial": "invert",
"__comment": "FIXME: We don't yet support `invert`. Until we do, the spec directs us to use `currentColor` as the default instead, and reject `invert`",
"initial": "currentColor",
"valid-types": [
"color"
],
"valid-identifiers": [
"invert"
]
},
"outline-style": {
@ -1611,7 +1608,7 @@
"inherited": false,
"initial": "none",
"valid-types": [
"line-style"
"outline-style"
]
},
"outline-width": {