Commit Graph

455 Commits

Author SHA1 Message Date
Patrick Walton
60d1c35a15 servo: Merge #5588 - layout: During inline layout, make place_between_floats use the same line height computation logic as final block size assignment (from pcwalton:line-height-float-placement-redux); r=glennw
Basically, the easiest way to describe the effect of this change is "float placement takes line height into account". It didn't before, which could lead to lines overlapping floats or floats taking up too much vertical space.

Improves Wikipedia.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: d8507cce8c3969a08974f44a9f397e75cbe3131d
2015-04-09 16:47:03 -05:00
Anthony Ramine
a2b4701232 servo: Merge #5611 - Cleanup CharacterData (from nox:cleanup-characterdata); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 51dd6984f7cc292d77b2330d404ffcff34981214
2015-04-09 10:10:20 -05:00
Patrick Walton
97d037a497 servo: Merge #5583 - layout: Don't take collapsible top margin into account when determining the float ceiling (from pcwalton:float-ceiling-top-margin-redux); r=mbrubeck
As the float ceiling is relative to the border box, not the margin box,
of the parent flow, top margin must not be included.

This exposed a pre-existing bug whereby margins are discarded if a block
contains only floats and no content, affecting the tests
`float_intrinsic_height.html` and `margins_inside_floats_a.html`. As a
workaround, some invisible content has been added to the bodies of both
tests.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 1c884dc76bef440f8ccd344fab874e2e2161683b
2015-04-08 18:04:14 -05:00
Patrick Walton
3b9ca814fe servo: Merge #5493 - layout: Simplify and improve the correctness of whitespace stripping in text layout, and unify the inline layout paths for pre- and normally-formatted text (from pcwalton:jumpiness); r=mbrubeck
This fixes a lot of "jumpiness" and removes the `new_line_pos` stuff.

Closes #2260.

r? @mbrubeck
cc @metajack

Source-Repo: https://github.com/servo/servo
Source-Revision: d3478954fd8e3a8374104984efb91a918b5dbb7e
2015-04-08 17:13:36 -05:00
Patrick Walton
82d073fe9e servo: Merge #5587 - layout: Position and size list images properly in the block direction (from pcwalton:list-style-image-sizing-redux); r=glennw
Improves Wikipedia.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 267badae69d476bbac63a687bb8fb63bf336aec2
2015-04-08 04:48:30 -05:00
Patrick Walton
afca24ff6f servo: Merge #5584 - layout: Remove the bogus assign_block_size_for_inorder_child_if_necessary logic from table wrapper flows (from pcwalton:fix-a-float-redux); r=glennw
As far as I can tell, this is a cut-and-paste of old buggy code from
block flows. Delegating to the correct block flow code fixes the sidebar
float placement on Guardians of the Galaxy.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: f4da0f0e94259e12adeb193fd9ecf6813457b883
2015-04-08 03:57:36 -05:00
Patrick Walton
d1d786d7b2 servo: Merge #5552 - layout: Correctly take the inline size of cleared floats into account when estimating the inline size of block formatting contexts (from pcwalton:block-formatting-context-cleared-floats); r=glennw
The speculated inline-size of the preceding floats was forced to zero at
the wrong time if the float was itself cleared, causing it to overwrite
the speculated value. Shuffling the code around a bit fixes the problem.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 07520de97047916f0d15c7a63b3de20eac50f010
2015-04-07 04:51:13 -05:00
Ms2ger
1ddced1a45 servo: Merge #5535 - Stop using int/uint in net_traits (from Ms2ger:int-net); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: c070ad61963963de2e0d2b35aedb1e187bbb7d4b
2015-04-06 13:17:40 -05:00
Matt Brubeck
ccd55002ce servo: Merge #5461 - Implement the :focus pseudo-class selector and element.focus/blur (from mbrubeck:focus); r=jdm
Fixes #5460. This supports for simple focusable elements that are their own DOM anchors, like text `input` fields.

Requires servo/rust-selectors#20.  r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: b63fb0c0a7e9cd9208d66319c910750aaaac844c
2015-04-04 18:21:48 -06:00
Manish Goregaokar
2674bab6a8 servo: Merge #5465 - Split out shared networking code into net_traits crate (from gilles-leblanc:issue-4476-b); r=jdm
Fixes #4476

Source-Repo: https://github.com/servo/servo
Source-Revision: d707d1b78e3393a1ed164af8ec855bd0ff119e55
2015-04-03 13:00:46 -06:00
aditya
74d1cce38e servo: Merge #5491 - Fix issue 5466 (from ChimeraCoder:fix-issue-5466); r=Manishearth
@kenpratt and I moved the URL and IFrame fields from Reflow to LayoutTask, as described in #5466.

This is my first attempt at Rust, so let me know how this is!

Source-Repo: https://github.com/servo/servo
Source-Revision: e4da29b28b6efce3f84f00ef7d2d1716954c500d
2015-04-02 14:18:42 -06:00
Ms2ger
636126329a servo: Merge #5486 - Stop using int/uint in layout (from Ms2ger:int); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: d999fb9db0d572f63165fa8aa2e24023903b6332
2015-04-02 08:06:41 -06:00
Patrick Walton
129f56bffe servo: Merge #5429 - layout: Stop rebuilding all inline-block flows unconditionally, and bubble intrinsic inline sizes as necessary when doing incremental reflow (from pcwalton:inline-block-incremental-reflow); r=mbrubeck
r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: dd3a58b92427bfd6e33903042272b372b49e9193
2015-04-01 12:03:45 -06:00
Patrick Walton
f855998d89 servo: Merge #5278 - gfx: Perform more aggressive caching in FontContext::get_layout_font_group_for_style() (from pcwalton:font-group-caching); r=glennw
There are several optimizations here:

* We make font families atoms, to allow for quicker comparisons.

* We precalculate an FNV hash of the relevant fields of the font style
  structure.

* When obtaining a platform font group, we first check pointer equality
  for the font style. If there's no match, we go to the FNV hash. Only
  if both caches miss do we construct and cache a font group. Note that
  individual fonts are *also* cached; thus there are two layers of
  caching here.

15% improvement in total layout thread time for Facebook Timeline.

r? @glennw (since you last worked on `get_layout_font_group_for_style()` IIRC)

Source-Repo: https://github.com/servo/servo
Source-Revision: ba0d28e0023fce2003d64b9caf97fcdbeb7cdb28
2015-04-01 10:00:52 -06:00
Nicholas Nethercote
e21739b385 servo: Merge #5441 - Use usize rather than u64 in MemoryReport (from servo:heap-unclassified); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 8976bbfe7d8fa061ee7270e4b3553f7fde6050e6
2015-03-31 15:03:56 -06:00
Matt Brubeck
fbb7cce487 servo: Merge #5349 - Don't add margin/border/padding twice to position (from mbrubeck:placement-size); r=pcwalton
I think this should have been changed in #3618 but was missed. r? @pcwalton

I wasn't able to come up with a good test case for this, partly because of other bugs related to floats and formatting contexts.

Source-Repo: https://github.com/servo/servo
Source-Revision: b79d06c8d2363ebd6bdb171a943d1c932a6cea68
2015-03-31 14:15:59 -06:00
Patrick Walton
b4a63e5dbd servo: Merge #5400 - layout: Implement CSS transitions per CSS-TRANSITIONS § 2 (from pcwalton:transitions-redux); r=glennw
Transition events are not yet supported, and the only animatable
properties are `top`, `right`, `bottom`, and `left`. However, all other
features of transitions are supported. There are no automated tests at
present because I'm not sure how best to test it, but three manual tests
are included.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: ebdf1d494b6c986e6dfcb7d8fd3f0ffa126523ed
2015-03-31 10:39:56 -06:00
Patrick Walton
ef9ecd4603 servo: Merge #5393 - layout: Stop going to the DOM to determine the root flow's background color (from pcwalton:root-flow-color-reform); r=glennw
This allows us to do layout off the main thread, which is necessary for
transitions.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 46d4ef81674d1de4b9066185c7e63c32b04c167e
2015-03-30 11:40:14 -06:00
Brandon DeRosier
9063ce2f56 servo: Merge #5422 - Use box syntax instead of Box::new() (from bdero:bdero/box-syntax); r=jdm
Closes #5417

Source-Repo: https://github.com/servo/servo
Source-Revision: 39556cc8328793478c0e34ff99e2d36d1ab4f5cb
2015-03-29 17:10:01 -06:00
Ms2ger
9cc3654446 servo: Merge #5443 - Use more usize (from Ms2ger:int); r=saneyuki
Source-Repo: https://github.com/servo/servo
Source-Revision: a0a1304be08250511e20ed8b378bbf6a34c22bf4
2015-03-29 16:16:01 -06:00
Ms2ger
196299eae1 servo: Merge #5437 - Remove some int/uints (from Ms2ger:int); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 7d0d8514565d898123411ece56bfb09e578dbe1c
2015-03-29 03:49:01 -06:00
Ms2ger
b244a0a2c4 servo: Merge #5416 - Remove some int/uints (from Ms2ger:int); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 674e52afa1012cb342629dab4d3abae975a16fe9
2015-03-28 13:58:02 -06:00
Fabrice Desré
0cfb43fdbd servo: Merge #5380 - Suppress unused import warnings (from fabricedesre:no-unused-import); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 26c77d6662255e6da4ac86c3efb64bd4eba86697
2015-03-26 08:51:51 -06:00
Nicholas Nethercote
511ce78c9b servo: Merge #5348 - Rename lots of profiling-related things (from nnethercote:profiler-renaming); r=jdm
```
------------------------------------------------------------------------
BEFORE                              AFTER
------------------------------------------------------------------------
util::memory                        util::mem
- heap_size_of                      - heap_size_of (unchanged)
- SizeOf                            - HeapSizeOf
  - size_of_excluding_self            - heap_size_of_children

prof::mem                           prof::mem
- MemoryProfilerChan                - ProfilerChan
- MemoryReport                      - Report
- MemoryReportsChan                 - ReportsChan
- MemoryReporter                    - Reporter
- MemoryProfilerMsg                 - ProfilerMsg
  - {R,UnR}egisterMemoryReporter      - {R,UnR}egisterReporter
- MemoryProfiler                    - Prof
- ReportsForest                     - ReportsForest (unchanged)
- ReportsTree                       - ReportsTree   (unchanged)
- SystemMemoryReporter              - SystemReporter

prof::time                          prof::time
- TimeProfilerChan                  - ProfilerChan
- TimerMetadata                     - TimerMetadata (unchanged)
- Formatable                        - Formattable [spelling!]
- TimeProfilerMsg                   - ProfilerMsg
- TimeProfilerCategory              - ProfilerCategory
- TimeProfilerBuckets               - ProfilerBuckets
- TimeProfiler                      - Profiler
- TimerMetadataFrameType            - TimerMetadataFrameType (unchanged)
- TimerMetadataReflowType           - TimerMetadataReflowType (unchanged)
- ProfilerMetadata                  - ProfilerMetadata (unchanged)
```
In a few places both prof::time and prof::mem are used, and so
module-qualification is needed to avoid overlap, e.g. time::Profiler and
mem::Profiler. Likewise with std::mem and prof::mem. This is not a big
deal.

Source-Repo: https://github.com/servo/servo
Source-Revision: d784d9c488be4533a3590a154addd366d15a5864
2015-03-25 21:18:48 -06:00
Ms2ger
d5a21a4ab1 servo: Merge #5362 - Remove old_path usage from layout (from Ms2ger:layout-old-path); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 04d78b6fdbe7c205877d18a0cb85cfd058f5d1f5
2015-03-25 17:03:49 -06:00
Patrick Walton
2b712314fc servo: Merge #5344 - layout: Stop copying the guts of style objects when calculating replaced widths and heights (from pcwalton:dont-copy-style-guts); r=mbrubeck
50% layout improvement in a photo gallery demo I'm working on.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 2a9f29f3824479da357d5cded2dc0847e6854813
2015-03-24 11:42:55 -06:00
Nicholas Nethercote
dab428b57b servo: Merge #5335 - Move profiler code from util into a new crate profile (from nnethercote:profile-crate); r=glennw
- Most of util::memory has been moved into profile::mem, though the
  `SizeOf` trait and related things remain in util::memory. The
  `SystemMemoryReporter` code is now in a submodule
  profile::mem::system_reporter.

- util::time has been moved entirely into profile::time.

Source-Repo: https://github.com/servo/servo
Source-Revision: d1268ec9c6633684270015e7b2619181aeb47b8b
2015-03-24 03:15:49 -06:00
Nicholas Nethercote
fbc81cab6e servo: Merge #5284 - Print trees in the memory profiler's output (from nnethercote:treeify-reports); r=jdm
Memory reports are much nicer to read when grouped into trees, which requires giving each report a path instead of a name.

Sample output:
```
Begin memory reports
|
|    2.51 MiB -- pages
|       2.51 MiB -- url(file:///home/njn/moz/servo/../servo-static-suite/wikipedia/Guardians%20of%20the%20Galaxy%20(film)%20-%20Wikipedia,%20the%20free%20encyclopedia.html)
|          2.51 MiB -- display-list
|
|  238.89 MiB -- resident-according-to-smaps
|     188.31 MiB -- anonymous (rw-p)
|      27.29 MiB -- /home/njn/moz/servo/components/servo/target/debug/servo (r-xp)
|       7.82 MiB -- other
|       6.65 MiB -- [heap] (rw-p)
|       3.55 MiB -- /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (r-xp)
|       1.42 MiB -- /lib/x86_64-linux-gnu/libc-2.19.so (r-xp)
|       1.13 MiB -- /home/njn/moz/servo/components/servo/target/debug/servo (r--p)
|       0.74 MiB -- /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0 (r-xp)
|       0.73 MiB -- /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20 (r-xp)
|       0.65 MiB -- /lib/x86_64-linux-gnu/libm-2.19.so (r-xp)
|       0.60 MiB -- /lib/x86_64-linux-gnu/libglib-2.0.so.0.4200.1 (r-xp)
|
|   71.08 MiB -- jemalloc-heap-active
|   59.11 MiB -- jemalloc-heap-allocated
|  180.00 MiB -- jemalloc-heap-mapped
|  232.87 MiB -- resident
|   54.43 MiB -- system-heap-allocated
| 3130.11 MiB -- vsize
|
End memory reports
```

Source-Repo: https://github.com/servo/servo
Source-Revision: bfb80f20b523867c94d7cda8b984ca14eb9587bf
2015-03-23 16:33:47 -06:00
Manish Goregaokar
5e87044185 servo: Merge #5296 - Replace unsafe_blocks by unsafe_code (from servo:unsafe_code); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 29a36adbe7d87fb38ba9bef3a718c6c823fb5977
2015-03-21 05:12:45 -06:00
Ms2ger
e3e15283b7 servo: Merge #5297 - Replace most usage of std::old_io::File (from Ms2ger:fs); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: ec60f29203c75b46d59253c7cbb4005fce7e4ad4
2015-03-20 17:00:44 -06:00
Ms2ger
bfd31316e6 servo: Merge #5288 - Fix various build warnings (from Ms2ger:warnings); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 0663cd632517c9a9c86db47456c5a4da637045ed
2015-03-20 11:00:54 -06:00
Ms2ger
94ceefff5b servo: Merge #5287 - Update some feature gates (from Ms2ger:gates); r=jdm
CC #5286.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6ffd459479dde59f471eb42ef0515dd964b6a9d9
2015-03-20 09:12:51 -06:00
Matt Brubeck
235ffcfd67 servo: Merge #5268 - Use append instead of extend where possible (from mbrubeck:append); r=jdm
The new `Vec::append` method is clearer and potentially faster.

Source-Repo: https://github.com/servo/servo
Source-Revision: 646f82147946c3221a6de0e575b4750dc61d5610
2015-03-18 21:39:49 -06:00
Glenn Watson
d2d07c92d9 servo: Merge #5254 - Fixes positioning of inline blocks that generate stacking contexts (from glennw:ib-stacking-context); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: e0ead847812ddeb8577f9263bb969d4a17839f19
2015-03-18 19:45:47 -06:00
Matt Brubeck
d96c8f2368 servo: Merge #5266 - Rename DList to LinkedList everywhere (from mbrubeck:linked_list); r=metajack
Fixes deprecation warnings.  Also removes a workaround for a fixed bug in Rust.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2346c9b94055f84a536808e40ad0b596ee21fbf4
2015-03-18 16:28:09 -06:00
Ms2ger
f4ea3a3dd0 servo: Merge #5256 - Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-de (from servo:rustup_20150311); r=jdm
...v.

Relies on:
* https://github.com/servo/rust-geom/pull/72
* https://github.com/servo/rust-glx/pull/10
* https://github.com/servo/gleam/pull/15
* https://github.com/servo/rust-mozjs/pull/137
* https://github.com/servo/rust-core-text/pull/35
* https://github.com/servo/rust-io-surface/pull/28

Source-Repo: https://github.com/servo/servo
Source-Revision: 99cf9dbfc107bacb84dfe5afa9539a0ede3beac2
2015-03-18 11:25:00 -06:00
Patrick Walton
7ac5751923 servo: Merge #5134 - layout: Implement 2D CSS transforms per CSS-TRANSFORMS § 5, 6, 7, and 8 (from pcwalton:transforms); r=SimonSapin
r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 203240c1d82b780ce49261d8b47e6cbe6af50950
2015-03-17 13:39:51 -06:00
Matt Brubeck
45863dd25d servo: Merge #5233 - Fixes for positioning of RTL blocks (from mbrubeck:rtl-position); r=SimonSapin
This fixes a bug in finding the top left corner of an RTL block in physical coordinates.  (The old code used the `start` point of the `position` rect, which is not always the top left.)

It also fixes the setting of `position.start.i` in certain mixed LTR/RTL cases.

There is still a bug related to `position.size` for RTL blocks with margins.  See the FIXME comments for details.

r? @pcwalton or @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: b255b49e2e2246ff8bf7f8751088bfe0a0ee41a2
2015-03-17 12:33:53 -06:00
Nicholas Nethercote
9f66ff8f0d servo: Merge #5193 - Add memory reporting infrastructure and use it to measure the display list (from nnethercote:measure-display-list); r=jdm
These changeset implements the beginnings of fine-grained measurement of Servo's data structures.

@pcwalton, @jdm: are you likely reviewers for this?

Source-Repo: https://github.com/servo/servo
Source-Revision: f093620922621e1877393b03968ed0ce767fdf12
2015-03-16 21:33:50 -06:00
Glenn Watson
244761ab60 servo: Merge #5226 - Fixes for compositor layers being removed and reftest timeouts (from glennw:fix-compositor-layers); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: 0888a3a16d4f5eafe4f8008ec060764645f3bee5
2015-03-16 16:57:50 -06:00
Jack Moffitt
ed752d9109 servo: Merge #5228 - Fix memory leak in flow tree by adding weak refs (from metajack:memory-debug); r=pcwalton
Cycles were being created in the flow tree since absolutely positioned
descendants had pointers to their containing blocks. This adds
WeakFlowRef (based on Weak<T>) and makes these backpointers weak
references. This also harmonizes our custom Arc<T>, FlowRef, to be
consistent with the upstream implementation.

Fixes #4915.

Source-Repo: https://github.com/servo/servo
Source-Revision: f5ddbcf19fcd477dee61d6c03434ef7cfca188bf
2015-03-16 13:16:03 -06:00
Mikko Perttunen
9d54446033 servo: Merge #5173 - Consider media attribute on link and style tags (from cyndis:media-attr); r=jdm
Don't add a stylesheet if the current device does not match the media
query specified in a link or style tag.

Cheers,
cyndis

Source-Repo: https://github.com/servo/servo
Source-Revision: 660ea05ddb3b17b0bb914cb09968cbcf7c6b1aec
2015-03-16 09:54:56 -06:00
Diego Marcos
1186910591 servo: Merge #5220 - Fixes the problem with canvas not being rendered when displayed as block level elements (from dmarcos:issue4595); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1e1c97adb3cb44351df913daf8265de2edc74704
2015-03-16 06:57:53 -06:00
James Gilbertson
cbc7058cb2 servo: Merge #5180 - Fix broken viewport percentage length units after a viewport resize (from luniv:viewport-length-cached-values-invalidation); r=SimonSapin
When a viewport is resized, the computed values for a style containing viewport percentage length units become stale. However, there's no way for those styles to be invalidated after a resize. As a solution, this commit invalidates the computed values cache after a resize has occurred, which is probably over-kill.

A better solution would probably be to track under what conditions computed values remain valid, and invalidate them as indicated.

Source-Repo: https://github.com/servo/servo
Source-Revision: a50807051b0ff9a46ce6f76189617534b8294276
2015-03-13 09:36:50 -06:00
Patrick Walton
33d4762cb0 servo: Merge #4417 - layout: Implement border-spacing per CSS 2.1 § 17.6.1 and the legacy cellspacing attribute per HTML5 § 14.3.9 (from pcwalton:border-spacing); r=larsbergstrom
Table layout code has been refactored to push the spacing down to
rowgroups and rows; this will aid the implementation of
`border-collapse` as well.

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 8e811229bae6b338fabcd7df602079730c942889
2015-03-12 13:03:49 -06:00
Patrick Walton
707a4d89ff servo: Merge #5160 - layout: Implement ordered lists, CSS counters, and quotes per CSS 2.1 § 12.3-12.5 (from pcwalton:counters-redux); r=SimonSapin
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.

Reconstructed from #5138 via raw diffing.

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: fd1bb49a65dd998c8ef9890a1576aaf62ddfdba1
2015-03-09 23:24:47 -06:00
Matt Brubeck
73d14319ca servo: Merge #5143 - Layout fixes for RTL child flows in LTR parents (from mbrubeck:rtl); r=pcwalton
...and vice-versa.  This is not a complete fix for all mixed-direction layout cases, but it fixes enough problems to make some simple test cases pass, like tha attached reftest.

There are FIXME comments for many of the remaining issues.  In particular, this does not yet handle RTL layout of fixed/absolute elements, nor does it completely fix the overconstrained_block reftest.

r? @SimonSapin or @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 2df4dd9e098671fdbe2951f6669473e7737d6ed3
2015-03-09 15:54:51 -06:00
James Gilbertson
179b3f3f55 servo: Merge #5154 - Implement 'vw', 'vw', 'vmin', 'vmax' CSS length units (from luniv:viewpoint-percent-lengths); r=SimonSapin
Spec: http://dev.w3.org/csswg/css-values-3/#viewport-relative-lengths
Source-Repo: https://github.com/servo/servo
Source-Revision: a557b51c28aaba398fd85f86af909ec623e2350f
2015-03-05 18:55:02 -07:00
Dan Fox
f81c6d46cc servo: Merge #5135 - Fix 5120 rename layout util (from iamdanfox:fix-5120-rename-layout-util); r=jdm
A simple rename/refactor (https://github.com/servo/servo/issues/5120)

My first servo contribution!

Source-Repo: https://github.com/servo/servo
Source-Revision: 7fc37dfaa76c9265e6d2145fe5ef2fba5f6bd013
2015-03-05 11:09:58 -07:00
Bryan Bell
81d904ddd7 servo: Merge #5128 - For inline-block correctly use min-width (from bjwbell:inline-block_fix_min-width); r=jdm
With inline-block elements set the width to max(min width,
specified width) instead of only using the specified width.

Fixes https://github.com/servo/servo/issues/4945

Source-Repo: https://github.com/servo/servo
Source-Revision: 9d58c086e72a7d2fc8655506d35f30069bbadbbd
2015-03-03 22:24:44 -07:00