Commit Graph

466 Commits

Author SHA1 Message Date
Patrick Walton
ef81f7f477 servo: Merge #5691 - layout: Use the same code path for computing static positions of regular flows and static positions of hypothetical boxes (from pcwalton:hypothetical-box-reform); r=glennw
Before this change, Servo used one code path that computed the position
of flows with `position: static` or `position: relative` and another
separate code path that computed the position of flows with `position:
absolute` or `position: fixed`. The latter code attempted to duplicate
the former code to determine the static position of hypothetical boxes,
but this was both fragile and incorrect in the case of hypothetical
boxes nested inside floats. In fact, it's impossible to determine the
static position of an absolute flow relative to its containing block at
inline-size assignment time, because that static position could depend
on a float that cannot be placed until block-size assignment!

This patch changes block layout to use the same code path for static
positioning of regular flows and static positioning of absolute flows
where applicable. This both simplifies the code and improves its
efficiency, since it allows the `hypothetical_position` field and
`static_block_offsets` data structure to be removed. Moreover, it
improves correctness in the above case (which the new reftest checks).
This allows the sidebar in Facebook Timeline to be positioned properly.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: bdcf606f4802e5b1ab3ee251b45ee1e81800359a
2015-04-14 18:14:11 -05:00
Corey Farwell
1d84128a7b servo: Merge #5693 - Add/update comments with links to spec (from frewsxcv:spec-links); r=jdm
Extracted out of #5649

* add more hyperlinks to associated specification for structs/methods
* follow redirects and update links
* replace broken links
* removal of WHATWG multipage page name since the page name is not
  guaranteed to be stable

Source-Repo: https://github.com/servo/servo
Source-Revision: 3dc25af9e121db010e4385efb3863ba45b0e0bcf
2015-04-14 17:16:55 -05:00
Corey Farwell
a0f726ff70 servo: Merge #5677 - Update WHATWG links to use HTTPS (from frewsxcv:https); r=Ms2ger
Extracted this out of #5649

This commit was created with the following commands:

```
find . -iname "*.webidl" -type f -print0 | xargs -0 sed -i '' 's/http:\(.*\)whatwg.org/https:\1whatwg.org/g'
```

```
find . -iname "*.rs" -type f -print0 | xargs -0 sed -i '' 's/http:\(.*\)whatwg.org/https:\1whatwg.org/g'
```

Source-Repo: https://github.com/servo/servo
Source-Revision: 4997d3a112354a407365fede1ab1944834a2e13c
2015-04-14 02:57:41 -05:00
Aneesh Agrawal
e995123d66 servo: Merge #5642 - Switch Arc<Box<Image>> to Arc<Image> for perf boost (from aneeshusa:arc-box-image-to-arc-image); r=Ms2ger
Image used to be a trait, but no longer is, so boxing it is no longer
necessary. Fixes #5639.

Source-Repo: https://github.com/servo/servo
Source-Revision: b7f59a36461e6c9eb08b8e48760168d3cb26a400
2015-04-14 01:57:07 -05:00
Shing Lyu
5a29a7ef77 servo: Merge #5593 - 4873 - Support the image map processing for <img ismap/> inside an <a/> (from shinglyu:ismap); r=jdm
This implements issue 4873

Source-Repo: https://github.com/servo/servo
Source-Revision: 4fac8b6810d9d748fffc025cfd1bb1d2b6c5655d
2015-04-14 00:10:08 -05:00
James Gilbertson
33745aad78 servo: Merge #5553 - Use iterators for iterating through CSS rules (from luniv:css-rule-iterators); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 22e570a06e92bbc449eb01058e243443b536f467
2015-04-10 19:17:49 -05:00
Patrick Walton
8de8e51b33 servo: Merge #5641 - layout: Include padding in the content block-size when computing the block-size value when height: auto is specified for absolutely-positioned elements (from pcwalton:absolute-auto-height); r=mbrubeck
Improves "Edit links" on the Wikipedia sidebar.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 10c68e751912962ed1bbed137b00ce4511d46bda
2015-04-10 17:44:01 -05:00
Peter
6a12667ad3 servo: Merge #5608 - Adding cmdling argument for disabling style share cache, fix #5581 (from pgonda:cmdline-disable-style-sharing); r=Ms2ger
Let me know if I should fix anything, or how I could implement a test if needed.  I looked at some testing in servo/ports/command_line.rs but it did not seem to apply.

Thanks!

Source-Repo: https://github.com/servo/servo
Source-Revision: 875f07ff25eada654e5e7bf03ddce46f7d76f6c8
2015-04-10 03:06:11 -05:00
Glenn Watson
37c9d04f21 servo: Merge #5629 - Remove unneeded assert (code below handles it) and a warning. Fixes #5230 (from glennw:glyph-count); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: db4609d722039e9477848c5e53e45ff214cb84c4
2015-04-09 21:01:06 -05:00
Thomas Jespersen
91f1ec90ad servo: Merge #5572 - Only send unused buffers messages if there are actually any buffers (from laumann:remove-unnecessary-buffer-sends); r=glennw
Some debugging reveals that the send_back_unused_buffers() quite often sends empty vectors back to the paint task. This still incurs a communication overhead though. Instead check that the there actually are buffers to send back.

Source-Repo: https://github.com/servo/servo
Source-Revision: 80851f70552c24a45755bc9ff12530b4ff80d099
2015-04-09 20:28:31 -05:00
Patrick Walton
e270e9fa0f servo: Merge #5623 - layout: Lay out nested inline elements with different vertical-align values properly in simple cases (from pcwalton:nested-inline-vertical-align); r=glennw
This allows things like `<sup><span>Foo</span></sup>` to work and
improves Wikipedia.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: d7b6961104b517a22e01c192d4bb6a7ad5934ce8
2015-04-09 17:20:23 -05:00
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