`background-size` per CSS-BACKGROUNDS § 3.9.
Nearest neighbor interpolation is used for `crisp-edges`, like Firefox.
A note has been added that we could do better if we wanted to.
Multiple backgrounds are not yet supported.
Rebase of #4368. Fixes#4368.
Source-Repo: https://github.com/servo/servo
Source-Revision: e1a50c771973fe3223cf98feea5d570375d68fa9
Only simple alphabetic and numeric counter styles are supported. (This
is most of them though.)
Although this PR adds a sequential pass to layout, I verified that on
pages that contain a reasonable number of ordered lists (Reddit
`/r/rust`), the time spent in generated content resolution is dwarfed by
the time spent in the parallelizable parts of layout. So I don't expect
this to negatively affect our parallelism expect perhaps in pathological
cases.
Moved from #4544, because Critic.
Fixes#4544.
Source-Repo: https://github.com/servo/servo
Source-Revision: 5cd6316addc1acf145ed3220719387ef6ef08d2f
Move culling of transparent display items to paint task rather than display list builder, so that hit testing detects mouse over on transparent background elements.
Source-Repo: https://github.com/servo/servo
Source-Revision: ac4a690e8fa98da4e4f7adbc2d888a94c6d99e0e
Also introduce a clear() function to layout data which will be used to clear items such as compositor layouts.
Clear the layout data when a node becomes display:none.
Source-Repo: https://github.com/servo/servo
Source-Revision: 65454e51c806c7d91c869a7b4afce872b4eeea57
Inline fragments that are part of a text run don't have interior borders.
So don't draw interior borders or include them when calculating positioning.
Fixes https://github.com/servo/servo/issues/4658, where multiple text nodes that are adjacent have distinct borders.
r? @Ms2ger, @pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: b2f099026a8c649daf063dc7e119a514c2680697
Prior to incremental layout, the code would remove the existing
construction result. However, with incremental layout the construction result
is cloned rather than removed. This change ensures that the previous
construction result is cleared when an element's display type
changes to none.
Source-Repo: https://github.com/servo/servo
Source-Revision: 8ad3c5aeb65e473a4c099b12e9439dfc556024f8
This patch will iterate through the DisplayList after the reflow is done and print its elements (as also any sub-lists associated to a child node stacking context).
Source-Repo: https://github.com/servo/servo
Source-Revision: 67b78983db31128604339e2fd7f391e878cf9f9b
The behavior of this code was changed in #3631. The parent no longer sets the inline size to a temporary value.
r? @pcwalton or @SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 213b90fdacc3dc27d59e145ae37484dbc808f316
When executing servo with proper flags (i.e. --debug dump-flow-tree), it should print the flow tree. We had the code, but it was commented.
Source-Repo: https://github.com/servo/servo
Source-Revision: 2eb71bda83c175ec4af9aca4e22b74ef7fea9097
When a cached bloom filter is found during traversal, there are two
cases, both of which currently do unnecessary allocations. This patch
avoids these allocations. In the process, it renders correct two
previously-incorrect comments, and moves one of those comments into a
better spot.
While scrolling moderately fast all the way through the "Guardians of
the Galaxy" Wikipedia page, this patch (a) avoids 1.2 million calls to
`clone()` and (b) replaces 111,000 `BloomFilter::new()` calls with
`clear()` calls.
Source-Repo: https://github.com/servo/servo
Source-Revision: a45265231797355d08e891be360b2e10bd8df37b
This allows using standard CSS techniques to place a footer at the bottom of the page.
Source-Repo: https://github.com/servo/servo
Source-Revision: c7d3ea1c6588512c62ce6688ad0e544dacccfb8f
Ready for review.
Final link step on android fails, but we know how to fix it and will add it to this branch soon.
Source-Repo: https://github.com/servo/servo
Source-Revision: 2cc08f289ab909de44fa09a07b2c43b70ce379b9
--HG--
rename : servo/ports/gonk/build.rs => servo/support/rust-task_info/build.rs
This patch set will implement a new helper function for transparent black, while changing the behavior of helper black() function returning opaque black by default.
It will also use the new Color equality operator to streamline the code in some points.
Source-Repo: https://github.com/servo/servo
Source-Revision: e14c569ed0cf42bae343e7ba9d9cb760e5733182
Reverts servo/servo#4825
I merged this incorrectly via the big green button and busted the tree pretty badly. @Adenilson has committed to fixing the issue in rust-azure and then relanding this in a fixed state.
Source-Repo: https://github.com/servo/servo
Source-Revision: e48eb87eb40545f361c62d2e81118435430d0adb
The first commit fixes#3624, and the second commit fixes a bug uncovered by the first fix and caught by a reftest (according to CSS 2.1, inline-blocks should have the shrink-to-fit algorithm run on them when size is set to 'auto'). The two new reftests included here fail before the fix and pass afterwards.
Source-Repo: https://github.com/servo/servo
Source-Revision: 986f9cb5432dc51e37e0c47a4f430c0353c6dc75
Implements 2 helper functions for Color type (white() and black()) plus uses the new equality operators implemented in rust-azure.
Source-Repo: https://github.com/servo/servo
Source-Revision: 685412ec488ab4336c71ea303b4a9a30f214a1a3
CSS-TEXT-3 § 7.3.
`text-justify: distribute` is not supported.
The behavior of `text-justify: none` does not seem to match what Firefox
and Chrome do, but it seems to match the spec.
Closes#213.
r? @mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 7359f99f201a359aaebf334a1787d1975c9fa7d4
This patch also makes Servo not crash when
`generated_containing_block_rect()` is called on a list item (as, for
example, GitHub does), and for good measure I added the fix to other
flows as well.
r? @mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 221a343883f510c7743908136438f5ed40bd17ed
Only the one-value syntax is supported for now.
r? @mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: c8e68fa45c43856f7ffbdde25b6e68571ad288bf
Fixes#4125
Conforming to section 5.5 (Rounded Corners/Overlapping Curves) of "CSS Background and Borders Module Level 3", border radii on elements whose border curves would have overlapped are uniformly scaled down to the point that they no longer do.
http://dev.w3.org/csswg/css-backgrounds/#corner-overlap
Source-Repo: https://github.com/servo/servo
Source-Revision: 6dc2b895b877b2455ac8cbc5239b9c2f314f4fda