forked from SerenityOS/serenity
-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
LibWeb: Update anonymous wrappers when applying style changes
Anonymous wrapper boxes inherit style from their layout tree parent, and since style data is per-layout-node, we have to manually sync them from parent to anonymous children when something changes. This is not very elegant or efficient, so I've left a FIXME about solving it in a nicer way. This fixes horizontal dog alignment on https://waffles.dog/ :^)
- Loading branch information
1 parent
b918ce4
commit 1c8253f
Showing
4 changed files
with
36 additions
and
0 deletions.
There are no files selected for viewing
13 changes: 13 additions & 0 deletions
13
Tests/LibWeb/Layout/expected/anonymous-wrappers-continue-to-inherit-style-after-change.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
Viewport <#document> at (0,0) content-size 800x600 children: not-inline | ||
BlockContainer <html> at (0,0) content-size 800x89.846250 [BFC] children: not-inline | ||
BlockContainer <body> at (8,21.440000) content-size 784x73.846250 children: not-inline | ||
BlockContainer <h1> at (8,21.440000) content-size 784x34.9375 children: inline | ||
line 0 width: 105.53125, height: 34.9375, bottom: 34.9375, baseline: 27.0625 | ||
frag 0 from TextNode start: 0, length: 6, rect: [8,21.440000 105.53125x34.9375] | ||
"header" | ||
TextNode <#text> | ||
BlockContainer <(anonymous)> at (8,77.817501) content-size 784x17.46875 children: inline | ||
line 0 width: 212.125, height: 17.46875, bottom: 17.46875, baseline: 13.53125 | ||
frag 0 from TextNode start: 0, length: 24, rect: [8,77.817501 212.125x17.46875] | ||
"anonymously wrapped text" | ||
TextNode <#text> |
8 changes: 8 additions & 0 deletions
8
Tests/LibWeb/Layout/input/anonymous-wrappers-continue-to-inherit-style-after-change.html
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
<!doctype html><style> | ||
body { | ||
text-align: center; | ||
} | ||
</style><body><h1>header</h1>anonymously wrapped text<script> | ||
document.body.offsetWidth; // Force a layout. | ||
document.body.style.textAlign = 'left'; | ||
</script> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters