bors-servo
33e2a7b362
Merge pull request #3492 from pcwalton/clear-generated-content-table
...
layout: Support any `display` property in generated content, and allow
Reviewed-by: glennw
2014-09-26 22:24:32 -06:00
bors-servo
94b7c486b1
Merge pull request #3486 from glennw/inline-fixes
...
Improve acid2. Fix line height calculation. Text fragments get correct enclosing element style.
Reviewed-by: pcwalton
2014-09-26 21:57:35 -06:00
Glenn Watson
71758643dc
Remove unneeded clones and add some comments.
2014-09-27 13:51:10 +10:00
Patrick Walton
47fc64052c
layout: Support any display
property in generated content, and allow
...
tables to clear floats.
Improves the GitHub header.
2014-09-26 14:09:25 -07:00
Glenn Watson
26cf00ef4e
Don't render backgrounds for text fragments.
2014-09-26 18:28:40 +10:00
Patrick Walton
36f3f5a0ab
layout: Block formatting contexts should contain all their floats.
...
Improves Pinterest considerably.
2014-09-26 00:39:07 -07:00
Glenn Watson
cf79e64a5a
Improve acid2. Fix line height calculation. Text fragments get correct enclosing element style.
...
* Enabled acid2 on mac + linux. Updated the reference image. The only difference from the
real acid2 now is the paint order and a 1 pixel horizontal offset on the nose.
* Change line-height to be calculated correctly.
* Apply enclosing element style to text fragments.
2014-09-26 17:12:22 +10:00
Patrick Walton
5b4380389e
layout: Enhance the heuristic that guesses the inline size of block
...
formatting contexts.
The widths of block formatting contexts depend on the floats prior to
them. To avoid a circular dependency between width assignment and height
assignment, we must guess their widths during the assign-widths pass.
The old code simply used the size of the last float, whether
left-floated or right-floated, but this proved insufficient to handle
layouts like those seen on Reddit. The new heuristic keeps track of both
left and right floats independently and sums the width of all left and
right floats to determine the width of a block formatting context. This
is still insufficient to properly lay out Reddit, but the results are
much more acceptable.
A fully correct approach will require that blocks be laid out again if
the initial guess proved to be incorrect. A `TODO` is in the code to
handle this case.
2014-09-25 17:50:24 -07:00
Patrick Walton
9f4c2de211
layout: Unify the block-size computation for blocks and floats.
...
The float code was old and did not support most of CSS 2.1. So unifying
the two paths both simplifies code and improves functionality.
Improves the Reddit sidebar.
2014-09-25 16:43:24 -07:00
Cameron Zwarich
ce2484a7ce
Fix trailing whitespace tidy errors
2014-09-25 13:48:07 -07:00
Patrick Walton
62bb9093d7
layout: Float table wrappers directly instead of generating a block
...
wrapper around them.
Fixes Wikipedia tables leaking out.
Along the way, I refactored tables' width calculation significantly.
This was necessary in order to properly handle floated tables, as some
of the logic had to be ported over from block flows.
2014-09-25 08:06:03 -07:00
Patrick Walton
fffc7aaf38
layout: Consider relatively positioned blocks as possible block
...
formatting contexts, and translate floats out of block formatting
contexts.
These improve Reddit.
2014-09-24 22:03:06 -07:00
Patrick Walton
d9f836bc75
Merge pull request #3458 from pcwalton/whitespace-nowrap
...
layout: Implement `white-space: nowrap`.
2014-09-23 20:22:33 -07:00
glennw
98222cf24c
Merge pull request #3459 from glennw/small-caps
...
Add support for small-caps font-variant.
2014-09-24 09:49:05 +10:00
Patrick Walton
9aacd4c10c
layout: Implement white-space: nowrap
.
...
Improves the Reddit header.
2014-09-23 15:47:45 -07:00
Patrick Walton
4546d5d23c
Merge pull request #3460 from glennw/inline-block-padding
...
Fix inline context padding on inline-block.
2014-09-23 07:47:29 -07:00
Manish Goregaokar
fcb25a35ec
Rename macros crate to plugins
2014-09-23 17:37:27 +05:30
Glenn Watson
32c02fc048
Fix inline context padding on inline-block.
...
Fixes categories bar on wikipedia - ref #2554 .
2014-09-23 15:40:08 +10:00
Glenn Watson
0dd1b85739
Add support for small-caps font-variant.
...
Ref: 2554.
2014-09-23 14:21:41 +10:00
Patrick Walton
3bb4020ff8
layout: Adjust the position of block formatting contexts based on float
...
placement.
Improves Reddit considerably.
Closes #3456 .
2014-09-22 18:04:15 -07:00
Patrick Walton
34b3408a89
layout: Translate floats when clearing non-floated blocks.
...
Improves CNN layout considerably.
Closes #3439 .
2014-09-22 14:14:20 -07:00
Glenn Watson
87d18b90a6
Add support for min-width and max-width to images.
...
This fixes the images on the homepage of github.
2014-09-22 14:03:10 +10:00
Keegan McAllister
dc86e83654
Eliminate warnings
2014-09-20 13:00:55 -07:00
Keegan McAllister
a640a7c5c3
Upgrade to rustc 0.12.0-pre (4d2af3861 2014-09-17 15:51:11 +0000)
2014-09-20 13:00:06 -07:00
Keegan McAllister
8a7eefefd5
Remove most of FlowList
...
This needs to be reworked for DST. Until then, DList<FlowRef> will do.
2014-09-20 12:56:52 -07:00
Tetsuharu OHZEKI
de0866ab42
Use Untraceable<T> to hold LayoutDataRef instead of manual Encodable implementation.
2014-09-20 15:19:01 +09:00
Patrick Walton
c51b8a07ac
Merge pull request #3430 from pcwalton/inline-block-percentage-height
...
layout: Make percentage heights propagate through inline flows.
2014-09-19 23:05:55 -07:00
Patrick Walton
ccda8f204a
Merge pull request #3420 from glennw/table-debug
...
Adds support for table layout trace and updates viewer for tables.
2014-09-19 19:50:47 -07:00
Patrick Walton
0604d0c6b1
layout: Handle floated blocks with percentage heights correctly.
...
Improves the top menu in Wikipedia.
2014-09-19 17:56:07 -07:00
Patrick Walton
39d7bf93d6
layout: Make percentage heights propagate through inline flows.
...
I found this random bug during an attempt to improve Wikipedia.
2014-09-19 17:20:56 -07:00
Patrick Walton
08e004d106
Merge pull request #3424 from SimonSapin/font-size-absolute
...
Add font-size absolute size keywords. Fix #3417
2014-09-19 15:17:55 -07:00
Patrick Walton
b4db9aeaeb
Handle generated content with display: block
correctly during flow
...
construction.
The iteration was incorrect here. Although it accidentally worked
before, it will cause problems when we have incremental style
recalculation.
The `after_block_iteration` reftest will become interesting once we have
incremental style recalc.
2014-09-19 12:25:37 -07:00
Josh Matthews
f139eb5176
Merge pull request #3401 from pcwalton/refactor-layout
...
layout: Remove `layout/extra.rs`.
2014-09-19 10:51:02 -04:00
Simon Sapin
010d87b93e
Remove min/max functions from util::geometry. Use std::cmp instead.
2014-09-19 13:56:35 +01:00
Simon Sapin
415bbaeb2e
Fix dimensionality of Au
...
Previously, we implemented:
Au * Au -> Au
Au / Au -> Au
Au % Au -> Au
... which are inconsistent. It should be:
Au * Au -> SquaredAu
Au / Au -> i32
Au % Au -> i32
or:
Au * i32 -> Au
Au / i32 -> Au
Au % i32 -> Au
I picked the latter.
Also, the multiplicative identity does not make sense
when multiplication take two different types.
2014-09-19 13:54:57 +01:00
Glenn Watson
818f70e319
Fix img with display: block. Fixes text/image overflow on wikipedia.
...
Ref: #2554
2014-09-19 17:59:48 +10:00
Glenn Watson
fd176d5387
Fix padding on tables. This fixes the TOC on wikipedia pages.
...
Ref: #2554
2014-09-19 14:58:24 +10:00
Glenn Watson
0d0d2365aa
Adds support for table layout trace and updates viewer for tables.
2014-09-19 14:48:53 +10:00
Matt Brubeck
f35941d91d
Fix line splitting in white-space: pre
flows
...
The newline position from one line was getting used repeatedly, causing extra
"phantom" newlines in the following lines. Fixes #3413 .
2014-09-18 14:25:12 -07:00
Patrick Walton
f5c0124363
layout: Remove layout/extra.rs
.
...
Also, rename a few methods in layout that arguably had confusing names.
2014-09-18 11:33:04 -07:00
Patrick Walton
5e5f77a354
Try to unbreak the build by removing unused import
2014-09-18 10:56:58 -07:00
Clark Gaebel
670ca9894e
Fixed #3386 .
2014-09-18 09:20:23 -07:00
Clark Gaebel
1b251db732
Merge pull request #3379 from cgaebel/bucketed-timing
...
Added more complex profiling metadata.
2014-09-18 09:12:34 -07:00
Patrick Walton
22bca83509
Merge pull request #3404 from glennw/inline-block-fix
...
Include margin in inline block intrinsic width. Fixes [edit] links on wikipedia. Also improves google homepage.
2014-09-18 07:51:11 -07:00
Josh Matthews
9607b468bc
Revert "script: Use atom comparison in more places, especially for attributes." for persistent test failures.
...
This reverts commit 874db26104
.
2014-09-18 09:20:19 -04:00
Glenn Watson
6bc65f3b07
Include margin in inline block intrinsic width. Fixes [edit] links on wikipedia.
2014-09-18 16:07:28 +10:00
Clark Gaebel
6bc63d47cd
Added more complex profiling metadata.
2014-09-17 15:41:27 -07:00
Matt Brubeck
a939cc50bb
Fix doctest errors in rustdoc comments
...
Mostly this disables doctest for comments that are not actually tests.
2014-09-17 14:46:37 -07:00
Patrick Walton
874db26104
script: Use atom comparison in more places, especially for attributes.
...
75% improvement in style recalc for Guardians of the Galaxy.
2014-09-17 13:17:12 -07:00
Manish Goregaokar
11ba79894a
Merge pull request #3374 from Manishearth/lint_unrooted_jsmanaged
...
Add lint for ensuring proper rooting of JS<T>; r=jdm
2014-09-17 18:17:19 +05:30