Граф коммитов

1449 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez 13ef7eb69b servo: Merge #19757 - style: Remove -servo-text-decorations-in-effect (from emilio:bye-custom-cascade); r=nox
It is bogus, because it depends on the display property as it's cascaded, but
the display property can change afterwards, for example, if we get blockified
because we're the root element or a flex item.

Replace it with a normal field instead.

Also, it carries some weight, because it's the last property that uses this
concept of "derived" property, and "custom cascade". So we can remove some code
after this.

Compute it after the cascade process in StyleAdjuster.

Source-Repo: https://github.com/servo/servo
Source-Revision: f2036e7661a3f865b38d8296cc1b8ab98e60f679

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0206357b95137b0ebb8533d71d7a705faf781e60
2018-01-15 05:14:49 -06:00
Emilio Cobos Álvarez 03f7906492 servo: Merge #19769 - layout: Simplify the pseudo-element setup (from emilio:simplify-layout-construct); r=nox
It's kind of a mess. See individual commits for details.

Source-Repo: https://github.com/servo/servo
Source-Revision: 032fd388e4efdd9ecc682877d017b9d2f78e29e2

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f365989a4d7c713caf92ed0ef34a228a6243644e
2018-01-15 04:14:13 -06:00
CYBAI ca2729f9fa servo: Merge #19709 - style: Remove -servo-display-for-hypothetical-box from longhand (from CYBAI:servo-display-out-of-mako); r=emilio
This is a sub-PR of #19015
r? emilio

For the `fn set_original_display` inside `properties.mako.rs`, I removed `is_item_or_root` first to see how the tests result is. If it's needed, I'll add it back.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #19697
- [x] These changes do not require tests

Source-Repo: https://github.com/servo/servo
Source-Revision: 1b46e2e7597e90a41c6bfb3bd7008bdd922c93c6

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : fd06f9afbcc05acfe20eb48096e421d7dd5b3c2e
2018-01-14 08:27:14 -06:00
Pyfisch 6343bde1af servo: Merge #19716 - Use a ToLayout trait for converting from style to webrender types (from pyfisch:conversions); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 1a4df8f87668d5f5f24f4faeca43fb592a8edfe0

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 07094f447f924cc0f0800906665d968ee41e2f90
2018-01-11 03:41:43 -06:00
Pyfisch 30dce265cf servo: Merge #19686 - Create own file for background calculations in layout (from pyfisch:layout-background); r=emilio
See #19676

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 8e226fe9ff412cff087069f17d1bc634cf5fa994

--HG--
rename : servo/components/layout/display_list_builder.rs => servo/components/layout/display_list/builder.rs
rename : servo/components/layout/webrender_helpers.rs => servo/components/layout/display_list/webrender_helpers.rs
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3ea1341671593aa486b39b2dc570a7afc56cc5a2
2018-01-07 08:53:18 -06:00
Pyfisch 6137e455a9 servo: Merge #19699 - Correctly place images with background-position: center (from pyfisch:background-position-fix); r=emilio
Add a regression ref test.
See also #19680.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 12a74de5a181c03852550d04632548011f8e7cb9

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 917c23a500ce0f8a31814a58d8f23be155c431cc
2018-01-05 06:37:38 -06:00
Emilio Cobos Álvarez 15c20a101d servo: Merge #18893 - style: Remove TNode::set_can_be_fragmented and TNode::can_be_fragmented (from emilio:bye-can-be-fragmented); r=SimonSapin
Replace them instead by a computed value flag, the same way as the
IS_IN_DISPLAY_NONE_SUBTREE flag works.

Source-Repo: https://github.com/servo/servo
Source-Revision: 83a8891bd4d04ccb3f2f7b292d53f2847380b94c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e866663b660580644a022356b6226f5ec3e336d4
2018-01-05 05:11:00 -06:00
Pyfisch d50101b22b servo: Merge #19691 - Remove mention of some old issues (from pyfisch:cleanup-issues); r=emilio
* #228 was done (confirmed by mbrubeck)
* #2012 fixed TODO item
* servo/webrender#28 (zoom does work)

<!-- Please describe your changes on the following line: -->
See #19685

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: d1c72fde33338fb2042957c3ccafb31540adee92

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 160f69f3147dd8ecb6471c64080cf73def1c2778
2018-01-05 00:25:12 -06:00
Pyfisch 24b5e64ac1 servo: Merge #19681 - Format parts of layout (from pyfisch:rustfmt-display-lists); r=emilio
Formats the following files:
* components/layout/display_list_builder.rs
* components/layout/webrender_helpers.rs

Remove outdated options from rustfmt.toml.
Configure rustfmt to place binary operators
at the end of line (to match ./mach test-tidy).

Rationale: I am tired of indenting my patches by hand trying my best to do it correctly and match the surrounding code. Just to be told that either my indentation is wrong or that I should switch to block indentation for this function because it looks better.

The new formatting passes `./mach test-tidy`. Compared to the old formatting it is a lot more consistent but also tends to spread the code across more lines. The diff is this big because a lot of code used visual indentation.

See also #8553

Source-Repo: https://github.com/servo/servo
Source-Revision: 3692f13dcbba64741e2f8d15fc1e225667437ef6

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 03e42b8bf9b41ecf90a607bcfe8b3b5647fca017
2018-01-03 19:49:02 -06:00
Pyfisch bc58b3d036 servo: Merge #19675 - Implement correct corner clipping for background color (from pyfisch:issue19649); r=emilio
Add one regression ref test.

See also #19649

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors

- [x] There are tests for these changes

Source-Repo: https://github.com/servo/servo
Source-Revision: ef4246537da6888de0d7a4274ebd26faf52c9bf2

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9880251ac005d85b228c627d278b6886fb262566
2018-01-03 13:03:49 -06:00
Pyfisch 92b150e06c servo: Merge #19651 - Unify background placement code (from pyfisch:background-placement); r=emilio
Merges the implementations for background-image placement
from gradients and images. Add missing parts and fix bugs.

Now supported are the CSS properties:

* background-attachment (except for local value, see #19650)
* background-clip
* background-origin
* background-position-x/y
* background-repeat
* background-size

It should be noted that backgrounds are not clipped to
rounded border corners.
(This was done before but worked only in simple cases)
See: #19649

This solves the following issues:
closes #19626
closes #16657
closes #19482 (examples from http://lea.verou.me/css3patterns/ are rendered perfectly but the round border is completely ignored now)
closes #19577

- `./mach build -d` does not report any errors
- `./mach test-tidy` does not report any errors

I enabled a few tests with the first commit but I have written about a dozen manual tests I will try to turn into ref tests either before or after this patch lands.

@bors-servo try

The relationship between the different inputs is visualized in this flowchart:
![flowchart-background](https://user-images.githubusercontent.com/2781017/34394430-5a06c72c-eb59-11e7-9d51-3d23e2215f07.png)

Source-Repo: https://github.com/servo/servo
Source-Revision: 691bff86b6f57da37c2e0af99aa7f72fc1b4f9d6

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4f9cad4730e7c98c724e7dedc48b8f7bb7ba8cce
2018-01-02 08:47:24 -06:00
Pyfisch 643bbbf5a0 servo: Merge #19652 - Fix division by zero in gradient stop calculation (from pyfisch:issue18435); r=emilio
Check if total_length is zero and return 0.0 instead
of NaN in this case.

Closes #18435

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #18435 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [x] These changes do not require tests because simple bugfix/no idea for good test

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 1ce6d8ea2d2bbb4d6f095ac62514eca942599e83

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e30331dc8bdbe4af4687be81956e31850d4e5613
2018-01-01 09:38:07 -06:00
Pyfisch 12c64e4849 servo: Merge #19655 - Remove solved FIXMEs about border radii (from pyfisch:border-radii-comments); r=emilio
cc pcwalton

cgaebel: Is this [comment] still accurate?

    // TODO(cgaebel): Support border radii even in the case of multiple border widths.
    // This is an extension of supporting elliptical radii. For now, all percentage
    // radii will be relative to the width.

[comment]: 446536b9c3/components/layout/display_list_builder.rs (L659-L661)

Source-Repo: https://github.com/servo/servo
Source-Revision: 657d8a2ede97e7f7fedee5ada97c833abe5a8d9e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 17007da85fd7ed378445e95ab4a1cc745f54ecd7
2018-01-01 08:19:36 -06:00
tigercosmos aa58e15a76 servo: Merge #19622 - pretty print tree (from tigercosmos:x2); r=shinglyu
<!-- Please describe your changes on the following line: -->
```
│  │  │  │  │  │  │         floatspec-out=L 0px R 0px
│  │  │  │  │  │  │         overflow=Overflow { scroll: TypedRect(0px×0px at (0px,0px)), paint: TypedRect(0px×0px at (0px,0px)) }
│  │  │  │  │  │  │         damage=BUBBLE_ISIZES
│  │  │  │  │  │  │  └─ ↑↑ Fragment for block:
│  │  │  │  │  │  │  │         SpecificFragmentInfo::Table(2671) []
│  │  │  │  │  │  │  │         border_box=LogicalRect(H LTR, i0px×b0px, @ (i0px,b0px))
│  │  │  │  │  │  │  │         damage=REPOSITION | STORE_OVERFLOW | BUBBLE_ISIZES | REFLOW_OUT_OF_FLOW | REFLOW
│  │  │  │  ├─ Block(1268a9710)
│  │  │  │  │         sc=StackingContextId(0)
│  │  │  │  │         pos=LogicalRect(H LTR, i720px×b36px, @ (i152px,b2636.883333333333px))
│  │  │  │  │         floatspec-in=L 0px R 0px
│  │  │  │  │         floatspec-out=L 0px R 0px
│  │  │  │  │         overflow=Overflow { scroll: TypedRect(750px×36px at (-15px,0px)), paint: TypedRect(750px×36px at (-15px,0px)) }
│  │  │  │  │         children=1
│  │  │  │  │         damage=BUBBLE_ISIZES
│  │  │  │  │  ├─ ↑↑ Fragment for block:
│  │  │  │  │  │         SpecificFragmentInfo::Generic(2673) []
│  │  │  │  │  │         border_box=LogicalRect(H LTR, i720px×b36px, @ (i0px,b0px))
│  │  │  │  │  │         border_padding=LogicalMargin(H LTR, i:0px..0px b:6px..0px)
│  │  │  │  │  │         damage=REPOSITION | STORE_OVERFLOW
│  │  │  │  │  ├─ Block(128554f10)
│  │  │  │  │  │         sc=StackingContextId(0)
│  │  │  │  │  │         pos=LogicalRect(H LTR, i750px×b30px, @ (i0px,b6px))
│  │  │  │  │  │         floatspec-in=L 0px R 0px
│  │  │  │  │  │         floatspec-out=L 0px R 0px
│  │  │  │  │  │         overflow=Overflow { scroll: TypedRect(750px×30px at (-15px,0px)), paint: TypedRect(750px×30px at (-15px,0px)) }
│  │  │  │  │  │         children=6
│  │  │  │  │  │         damage=BUBBLE_ISIZES
│  │  │  │  │  │  ├─ ↑↑ Fragment for block:
│  │  │  │  │  │  │         SpecificFragmentInfo::Generic(2361) []
│  │  │  │  │  │  │         border_box=LogicalRect(H LTR, i750px×b30px, @ (i-15px,b0px))
│  │  │  │  │  │  │         margin=LogicalMargin(H LTR, i:-15px..-15px b:0px..0px)
│  │  │  │  │  │  │         damage=REPOSITION | STORE_OVERFLOW
│  │  │  │  │  │  ├─ TableWrapperFlow: Block(128555410)
│  │  │  │  │  │  │         sc=StackingContextId(0)
│  │  │  │  │  │  │         pos=LogicalRect(H LTR, i750px×b0px, @ (i-15px,b0px))
│  │  │  │  │  │  │         floatspec-in=L 0px R 0px
│  │  │  │  │  │  │         floatspec-out=L 0px R 0px
│  │  │  │  │  │  │         overflow=Overflow { scroll: TypedRect(0px×0px at (0px,0px)), paint: TypedRect(0px×0px at (0px,0px)) }
│  │  │  │  │  │  │         children=1
│  │  │  │  │  │  │         damage=BUBBLE_ISIZES
```

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #12675 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 7aae164fcdb8ab308bfa0806e1123e9b7eb73a7c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ce4a8508aef07608aa4f7c7a530c422a7acccbf2
2017-12-25 07:56:42 -06:00
Yati Sagade cda0c94d8c servo: Merge #19256 - Paint worklets: Implement timeout for worklet painter threads (from yati-sagade:master); r=asajeffrey
When a paint worklet thread takes too long, we would like to move on,
since we have a ~16ms budget for rendering at 60fps. At the moment, there
is no provision in the paintworklet spec to signal such timeouts to the
developer. ajeffrey opened an [issue][1] for this, but it got punted to
v2 of the spec. Hence we are silently timing out unresponsive paint
scripts.

The timeout value is chosen to be 10ms by default, and can be overridden
by setting the SERVO_PAINT_WORKLET_TIMEOUT_MS environment variable.

In the absence of such a timeout, the reftest in this commit would fail
by timing out the testrunner itself, since the paint script never
returns. From my discussions with ajeffrey, this should do until we spec
out a way to signal timeouts to the script developer.

This fixes #17370.

[1]: https://github.com/w3c/css-houdini-drafts/issues/507

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 54f8cc37c5a7874607128e3518fd0982f7065565

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0234a7fd5437d1c2a9c0424b9e2bb51d309a4490
2017-12-22 04:50:16 -06:00
Nazım Can Altınova af3cd13ada servo: Merge #19576 - style: Move text-align outside of the mako file (from canaltinova:text-align); r=Manishearth,emilio
I will need this refactoring before my next job. I didn't actually fix the FIXME's along the way. My other PR probably will cover these.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

Source-Repo: https://github.com/servo/servo
Source-Revision: a9c17970c19a993920ce1ba2ff9faebd033c52b4

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 8ee32ab5b3c274a73fb1f27fe2a85c78a47ae30d
2017-12-18 12:12:52 -06:00
Pyfisch 238056272d servo: Merge #19568 - layout: background-origin attribute for gradients (from pyfisch:background-origin-gradients1); r=mbrubeck
Fixes the glitches mentioned in #19554.
Now gradient tiles are placed in the whole bounding box.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [X] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: dbfcb7bc39715211928a550d2807cb2ba1e161e7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ebd1706316e9488589f7f82d3db4014dc01956bd
2017-12-15 15:54:59 -06:00
Matt Brubeck 8172baeffb servo: Merge #19565 - Turn flow::base and friends into methods (from mbrubeck:base); r=emilio
This feels more idiomatic in modern Rust, and replaces code like this:

`flow::base(&**root_flow).restyle_damage`

with this:

`root_flow.base().restyle_damage`.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they are refactoring only

Source-Repo: https://github.com/servo/servo
Source-Revision: 53968fef6112a3c934d527e4034d53b7a6174721

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f2f831dc700343ba9a03a977ad847938174d490d
2017-12-15 12:44:50 -06:00
Pyfisch b2df8f0384 servo: Merge #19554 - layout: support tiled gradients (from pyfisch:tiled-gradients1); r=mbrubeck
Use background-size, background-position properties to render
CSS gradients.

Some cleanup in display_list_builder.rs related to gradient
calculations.

Adds two wpt tests for tiled gradients.

Note: For now even gradients with background-repeat: no-repeat
are repeated. Sometimes the gradient is not repeated everywhere.

Resolves partially #19482. (See the mentioned website for example gradients with these features)
See also: #16657 and #10412

Some glitches can be seen in the attached file. I am unsure what the exact intended semantics of [`push_gradient`](https://doc.servo.org/webrender_api/struct.DisplayListBuilder.html#method.push_gradient) are and want to ask the webrender team before building in "workarounds" for the missing gradients.
![half-rhombes](https://user-images.githubusercontent.com/2781017/33958051-b16f964a-e043-11e7-8218-b28388e2cf8d.png)

Source-Repo: https://github.com/servo/servo
Source-Revision: 6ee8e6a1684d6dbc65933da11ce1a2c8ba660442

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 96cc2524eaba5602eba84d6aa314e5ddaa9a9dc1
2017-12-14 13:20:34 -06:00
Matt Brubeck cf3a9680c8 servo: Merge #19562 - Make layout depend on style/servo feature (from mbrubeck:feature); r=emilio
This fixes an error when running commands like `./mach check -p layout`.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they change build metadata only

Source-Repo: https://github.com/servo/servo
Source-Revision: bc9062b689706f481f5865e38e856cce0eeccb61

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e59c9eb9a54d3095ba945500deb80efd404e1f8b
2017-12-14 11:55:25 -06:00
Emilio Cobos Álvarez a0e7854c60 servo: Merge #19556 - Move list quotes out of mako (from emilio:quotes-mako); r=emilio
Rebase of https://github.com/servo/servo/pull/19154.

Source-Repo: https://github.com/servo/servo
Source-Revision: 26feea3be5bc70fed7a642ca768187d29469fee0

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7e29dfb2e654d65b512942e77f2bb48c449df9b9
2017-12-14 01:39:38 -06:00
CYBAI 1fe45bc205 servo: Merge #19548 - style: Move outline-style outside of mako (from CYBAI:move-outline-style-out-of-mako); r=emilio
This is a sub-PR of #19015
r? emilio

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #19546
- [x] These changes do not require tests

Source-Repo: https://github.com/servo/servo
Source-Revision: 714c1b2455bc6f651e982b5efec85e3bf711f708

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c435362b7e4d8abcae2548a7bfd07e7e77328e8a
2017-12-13 19:30:26 -06:00
Matt Brubeck e9500aa84a servo: Merge #19537 - style: Use the ? operator for Option (from mbrubeck:try); r=nox
This is stable in Rust 1.22 (#19532).

---

- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because it is refactoring only

Source-Repo: https://github.com/servo/servo
Source-Revision: 5f4f355cea4a24992ac9efa97f4a6e1837008e0b

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3a61f3b466e9f3c80f94b7ecb30f70f85efa55b3
2017-12-09 10:50:55 -06:00
Keith Yeung 755f12989a servo: Merge #19522 - Remove border_collapse field in InternalTable (from KiChjang:remove-border-collapse-field); r=emilio
This field doesn't seem to serve a purpose after #18252.

Source-Repo: https://github.com/servo/servo
Source-Revision: fd785f2424bacd6f60cb1937648fed28a43b0f36

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b67e4a7581ff797e73348c8f7e8d35639f974d15
2017-12-08 16:02:09 -06:00
Simon Sapin a869d43078 servo: Merge #19510 - Update some dependencies, remove heapsize from the build (from servo:heapsize); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 07bd84ecc8dc9ba56df873453696993118e18583

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 92be8729bbeadf778435c95878ddef5c3195879c
2017-12-08 07:49:54 -06:00
Bastien Orivel 6af9f7520e servo: Merge #19514 - Bump string_cache, html5ever and xml5ever (from Eijebong:bump); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 4016551e89e1cbb9dae988e6fca33a26f1537f02

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 863e0f8b0de4f227501bd226fe5eaa8e7b4f67cb
2017-12-07 13:43:13 -06:00
Glenn Watson aae0c25865 servo: Merge #19414 - Update WR (AA on transformed box-shadows, resource leak fixes) (from glennw:update-wr-leaks); r=wafflespeanut
Source-Repo: https://github.com/servo/servo
Source-Revision: e64647188879b8269b62c1d5c8aa05732ab9d96d

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 5a0d09d3ae5f2ac49d71d8add1303ee51ed77533
2017-12-07 00:57:40 -06:00
Emilio Cobos Álvarez f6572324f9 servo: Merge #19500 - style: Make all keywords CamelCase for consistency (from emilio:camel-case-all-the-way); r=nox
style: Make all keywords CamelCase for consistency.

Source-Repo: https://github.com/servo/servo
Source-Revision: b24778202a4d886a990ee493adfb6851ac4be40c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9d8fcab8dc2664b0282591a370d6f17e93e00a58
2017-12-05 19:35:25 -06:00
Bastien Orivel 2c7fc91a30 servo: Merge #19494 - Update smallvec to 0.6 (from Eijebong:smallvec); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: c20fd7d58a36496ea7d12ea3284172712da006b0

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 20803a41dd88a558e75d008dd808939d0a71429b
2017-12-05 13:44:19 -06:00
Boris Chiou 0f040a0d3f servo: Merge #19388 - stylo: Implement Servo_ParseTransformIntoMatrix (from BorisChiou:stylo/dommatrix/parser); r=emilio,heycam
This is an inter-dependent patch of Bug 1408310.

DOMMatrix needs to convert a specified transform list into a matrix, so we rewrite
to_transform_3d_matrix by generics for both specified and computed transform lists.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1408310](https://bugzilla.mozilla.org/show_bug.cgi?id=1408310).
- [X] These changes do not require tests because we can count on the wpt tests for DOMMatrix on Gecko side.

Source-Repo: https://github.com/servo/servo
Source-Revision: 823da9e34aacca750942c0fb53a29d6ca16c394d

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 15f0da28648677213a6642cf2b377a3d7f3e7073
2017-11-27 20:13:34 -06:00
Dzmitry Malyshau 38716187af servo: Merge #19360 - WR update to 4595561c49939cb21be9554c1b85c244508bde73 (from kvark:wr-fix); r=jdm
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #19347

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because: no new logic

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

cc @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 964b9b42cb81af0abda6b8f0231f4bef6a9a40d9

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 10f3089f0d50b57b040b43b9c9d6a0ceebc5efdc
2017-11-23 14:03:19 -06:00
Emilio Cobos Álvarez 9f3b446bd0 servo: Merge #19317 - style: Move property allowance tests to PropertyId::parse_into (from emilio:property-allowed-in); r=SimonSapin
It's not only more consistent (since we have a proper ParserContext there), but
also fixes a bunch of bugs where Gecko accidentally exposes and allows setting
internal state because of conversions from nsCSSPropertyID to PropertyId.

This adds the extra complexity of caring about aliases for longer, but that's
probably not a big deal in practice, since we have PropertyDeclarationId.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3864f320e8c6ff707d5b11fe46d67c0677cd112a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 41922d46e6c30b5ec9f5adebceac0978ab35b6e0
2017-11-21 07:47:52 -06:00
Emilio Cobos Álvarez c5a664a70b servo: Merge #19264 - style: Remove unused argument in element_needs_traversal (from emilio:unused-arg); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: bd6caef234f9a1c29cc01c907255a4f307fbc827

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9cc9fff568acbbfddb185ff5aa5c2f59320f65f8
2017-11-17 10:03:05 -06:00
Glenn Watson 50ab9887d8 servo: Merge #19260 - Update WR (opaque image optimizations, property binding optimizations) (from glennw:update-wr-bindings-opaque); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: e61a4d04e9982df94c402916da1cddfd6d0fdfa7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 6d6759456f21c2d066de4c69a13ee21eb346ef96
2017-11-16 18:38:48 -06:00
Emilio Cobos Álvarez a3e33c465d servo: Merge #19186 - style: Derive more stuff (from emilio:derive-more-stuff); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: fad4d7ae49140b8919f9b823542b440aeb0ecc9e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : d3487bd26d29b440d247d272ca553a0164bc15d8
2017-11-12 09:41:04 -06:00
Emilio Cobos Álvarez d2bfb199ac servo: Merge #19176 - layout: Fixup indentation of ThreadSafeLayoutNodeHelpers::flags (from emilio:indentation-fixup); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 26ff6111ffb820993bc0e0468565ff66c6ca16e2

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3d58b8bcdc4002b2d5aaab9194a29985c24669dd
2017-11-10 07:28:29 -06:00
Glenn Watson 3c9c93667c servo: Merge #19169 - Update WR (dotted border fix, better AA for split primitives) (from glennw:update-ww-aa-dots); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: a1331169f6113440de37cade877ae799f72e4053

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0a776aa4586a20c302707725f337b629525af1ad
2017-11-09 17:28:07 -06:00
Glenn Watson 2c8b1ecf94 servo: Merge #19130 - Update WR (blur and subpixel text optimizations, recording fix) (from glennw:update-wr-blur-subpx); r=KiChjang
Source-Repo: https://github.com/servo/servo
Source-Revision: 8b892ee0ee1ee55ed189347e0ef528edfaa74f61

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 43ae3f21e83f8e4850752984dfc9508a89b28d8c
2017-11-06 23:04:20 -06:00
Manish Goregaokar b12480e8c5 servo: Merge #18750 - Make transforms generic (from Manishearth:transform-generic); r=emilio,xidorn
This makes the specified and computed value of transform share a generic
backing enum.

This will eventually be a complete fix for
https://bugzilla.mozilla.org/show_bug.cgi?id=1391145 , and also
incidentally fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1405881

Currently WIP -- the generic transform exists and is used, but this
currently misses some animation and glue cases.

Source-Repo: https://github.com/servo/servo
Source-Revision: c494d25e24d515509a5d8bb86a30669ee01742b9

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 83a87a9b3d9271cfcf20745f66ef43ab4b8d4d12
2017-11-02 17:02:07 -05:00
Bastien Orivel b5ec6408a9 servo: Merge #18967 - Bump bitflags to 1.0 (from Eijebong:bitflags2.0); r=mbrubeck
See #18809

Still haven't had time to test it but it should fix the tests failures that appeared in m-c

Source-Repo: https://github.com/servo/servo
Source-Revision: fe4139b779b3af749ec1426ddf4e1393c7b85442

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9a0549d7dd8a99315ba3f8eec5d0f9fdf9eb4c0f
2017-10-30 18:25:45 -05:00
Martin Robinson 817c6e81c6 servo: Merge #19057 - Update WR to use the new sticky positioning API (from mrobinson:update-wr-sticky-api); r=glennw
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they do not change behavior.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: b6475cf433747a8b0cd177f0a16abae9d795e41c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3bea17293608156c3579a8b2988265f7b3a65010
2017-10-30 15:58:07 -05:00
Connor Brewster 5bbcc8eb3d servo: Merge #19044 - style: Move text-overflow outside of mako (from cbrewster:text_overflow_nomako); r=emilio
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes are apart of #19015 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because refactoring.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 7f8842f7a9be0a6673654c7b98be4ed529cb7abe

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : a75a0a99145017926be98620faf0fe1d1930ee2a
2017-10-30 14:04:52 -05:00
Glenn Watson c61e4cfff1 servo: Merge #19022 - Update WR (line decorations, pre-mul borders, mac fonts) (from glennw:update-wr-wavy); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: a814fc578f16237f883ebd923f4802e73bfc53d0

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : dc4e02b0cd220ee1dbac8f9031b46e5cfa2eadc0
2017-10-25 16:56:38 -05:00
Emilio Cobos Álvarez 376c2cc64f servo: Merge #19002 - style: Move background-repeat and mask-repeat outside of mako (from emilio:kill-more-mako); r=jdm
style: Move background-repeat and mask-repeat outside of mako.

Source-Repo: https://github.com/servo/servo
Source-Revision: 347176df257978bdb1c413f632c9fc870de4ff76

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 51c80c970679cba11be073bbec0a487f03587f4b
2017-10-24 12:02:05 -05:00
Martin Robinson 8a53b5bc4a servo: Merge #18951 - Wait as late as possible to assign ClipIds (from mrobinson:later-id-assignment-for-clip-scroll-nodes); r=glennw,emilio
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they should not change behavior.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: f26aa3b016beb5717d8a53477c162dd832b24d7e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : afcd2a0b7b9b5d21776cb7fcc775f9046f8b94e9
2017-10-24 09:46:08 -05:00
Matt Brubeck aca60f24b9 servo: Merge #18968 - Use try syntax for Option where appropriate (from mbrubeck:try); r=emilio
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they are refactoring only

Source-Repo: https://github.com/servo/servo
Source-Revision: 2b03a9974c61d1481d4b40351ff1305ad0b26588

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ff1d2ee734428d0ff4590fcf8dd03de2bc2302b6
2017-10-21 03:31:21 -05:00
Glenn Watson 0e9020d337 servo: Merge #18956 - Update WR (box shadows + per-corner radii, elliptical clips) (from glennw:update-wr-ellipse-bs); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: d6042707a660ec0377ff2db038e089cf509ac886

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : fc7037055f96846ffd66a7ca1e2bde459736e464
2017-10-20 16:47:30 -05:00
Nikhil Shagrithaya 751695e701 servo: Merge #18946 - Update h5e version (from cynicaldevil:update-h5e); r=nox
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 91077ee4185b4917f5f67bf7ebe7ea03ca3e7241

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 8086d3b411e9c203784fd3f8b210079d3a251a3d
2017-10-20 08:49:09 -05:00
Sebastian Hengst bfad5a393e Backed out changeset e64e659c077d: servo PR #18809 and revendor for reftest failures, e.g. in layout/reftests/bugs/392435-1.html. r=backout on a CLOSED TREE
--HG--
extra : amend_source : c80f31aec994c03e9ada2840b097efb3f894014e
2017-10-19 23:23:30 +02:00
Bastien Orivel 6c1dbf46fe servo: Merge #18809 - Update bitflags to 1.0 in every servo crate (from Eijebong:bitflags); r=nox
It still needs dependencies update to remove all the other bitflags
versions.

- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because it's a dependency update

Source-Repo: https://github.com/servo/servo
Source-Revision: fe16c1d5c3c9084da0ccb85af599d6ec0f8ab20b

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : bb9d52a22bee6d1fe773718f649c977b07840719
2017-10-19 10:35:08 -05:00
Martin Robinson 54e8de2b45 servo: Merge #18933 - Use WebRender to compute text index on click events (from mrobinson:wr-text-index); r=jdm
This is the second half of switching over to WebRender for hit testing.
Now that WebRender gives us the location of the hit tested point in the
display item, we can use that to calculate text index.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they shouldn't change behavior.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 4cf2ce66fc4f970a47ab1fb4b9aa1a55282640f7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 365f452e9e708080adbbfe4b09ccd2dafeb3eb75
2017-10-19 02:36:32 -05:00
Glenn Watson 9fb0d6a2b2 servo: Merge #18926 - Update WR (box shadows, subpixel + alpha text) (from glennw:update-wr-bs); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 59d727b020f18260e0bacc9aed6ffa5b75b3f0b6

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : edf6011815d4f3c1d1a27c26285c8c99a044a4ec
2017-10-18 23:52:54 -05:00
Martin Robinson 87539b2edc servo: Merge #18921 - Fix duplicate stacking context creation for anonymous Flows (from mrobinson:incremental-stacking-context-ids); r=emilio
Anonymous nodes were previously creating duplicate stacking contexts,
one for each node in the anonymous node chain. This change eliminates
that for tables.

Additionally the use of stacking context ids based on node addresses is
no longer necessary since stacking contexts no longer control scrolling.
This is the first step in eliminating the dependency between node
addresses and ClipScrollNodes which causes issues like #16425.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they are covered by existing tests.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 865b9aea357d4b51696d4a0343521a0f2a20bcf1

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f732d8c55cc80ae35de430a34fb51e9856e34839
2017-10-18 21:34:23 -05:00
Nicholas Nethercote 5a62942911 servo: Merge #18938 - Replace all uses of the `heapsize` crate with `malloc_size_of` (from nnethercote:bug-1409255); r=SimonSapin
Servo currently uses `heapsize`, but Stylo/Gecko use `malloc_size_of`.
`malloc_size_of` is better -- it handles various cases that `heapsize` does not
-- so this patch changes Servo to use `malloc_size_of`.

This patch makes the following changes to the `malloc_size_of` crate.

- Adds `MallocSizeOf` trait implementations for numerous types, some built-in
  (e.g. `VecDeque`), some external and Servo-only (e.g. `string_cache`).

- Makes `enclosing_size_of_op` optional, because vanilla jemalloc doesn't
  support that operation.

- For `HashSet`/`HashMap`, falls back to a computed estimate when
  `enclosing_size_of_op` isn't available.

- Adds an extern "C" `malloc_size_of` function that does the actual heap
  measurement; this is based on the same functions from the `heapsize` crate.

This patch makes the following changes elsewhere.

- Converts all the uses of `heapsize` to instead use `malloc_size_of`.

- Disables the "heapsize"/"heap_size" feature for the external crates that
  provide it.

- Removes the `HeapSizeOf` implementation from `hashglobe`.

- Adds `ignore` annotations to a few `Rc`/`Arc`, because `malloc_size_of`
  doesn't derive those types, unlike `heapsize`.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [ ] These changes fix https://bugzilla.mozilla.org/show_bug.cgi?id=1409255

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because testing is on the Gecko side.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 4c538b642e4bdfbf42c522c5a59c258a6d14546e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f9a6feed1088d0b0be2b55d7f0c2ec9c594ac33b
2017-10-18 13:56:05 -05:00
Martin Robinson 86810648f3 servo: Merge #18704 - Switch to using WebRender hit testing (from mrobinson:wr-hit-testing); r=jdm,glennw,mbrubeck
This trades quite a bit of complicated code in Servo for few more
messages and a significant performance improvement. In particular,
WebRender can search the entire display list at once instead of
ping-ponging down the pipeline tree. This allows us to send mouse
events to the correct pipeline immediately.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they should not change behavior.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: ca08271345f78fa881c174545f5b69a8ccb78143

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 1a3b945e2f06ebc10dd9930ca19ef3f6500f94c4
2017-10-17 17:09:25 -05:00
Matt Brubeck aae71ef096 servo: Merge #18924 - Fix commonmark Markdown warnings in docs, part 1 (from mbrubeck:doc); r=Manishearth
Fixes warnings from rust-lang/rust#44229 when `--enable-commonmark` is passed to rustdoc.

This is mostly a global find-and-replace for bare URIs on lines by themselves in doc comments.

---

- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they are doc formatting changes only

Source-Repo: https://github.com/servo/servo
Source-Revision: 0e62a5829b7c29ae2667a21a439aff1e89201bf3

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : a3cb4b6d3c62220f728cae0ab3bc603fa403ba8b
2017-10-17 16:04:10 -05:00
Glenn Watson a099f50bcc servo: Merge #18890 - Update WR (details below): (from glennw:update-wr-clip-text-aa); r=jdm
* Add support for clip masks on text runs.
* Fix atomic ordering of items with multiple shadows.
* Update to bincode + ipc-channel with optimizations.
* Fix some plane splitting precision errors.
* Improve the anti-aliasing quality significantly.
* Add internal ClipChain support.
* Fix diacritic glyphs on Linux.

Source-Repo: https://github.com/servo/servo
Source-Revision: d3d2b0261a8aacd4f74e330f8c007a91f829a96e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7e4b2cb3c1826baf96fbd87667ed36f872c8e282
2017-10-16 12:54:02 -05:00
Simon Sapin 96ab77b884 servo: Merge #18870 - Use pointer casts instead of tramsutes to raw::TraitObject (from servo:cast); r=KiChjang
Casting `*const T` to `*const U` with `U: Sized` is allowed even if `T: ?Sized`. This safely extracts the data pointer out of a trait object, without relying on the memory representation of trait objects.

Source-Repo: https://github.com/servo/servo
Source-Revision: 86a5135ffaa60d4743b6f6950fc395c2615e85ba

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f9537801cc60eb748264f777462090141fe51307
2017-10-13 21:43:09 -05:00
Simon Sapin 19637cf3a3 servo: Merge #18854 - Make optional the usage of some unstable features (from servo:servo-unstable-feature); r=nox
With `--no-default-features --features default-except-unstable`, more crates can now be compiled on stable Rust. This will help integrate them in rustc’s regression testing and compiler performance benchmarking.

Source-Repo: https://github.com/servo/servo
Source-Revision: 78aaa85aec8184d0a2d70006c45034d7c2ec561a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 3490c14736cf026c4bd910423786ec46bbccfc5f
2017-10-13 12:26:39 -05:00
Simon Sapin 610a77ac31 servo: Merge #18839 - Remove some usage of unstable features (from servo:stabler); r=nox
`Box::new(x)` seems to compile to exactly the same assembly as `box x` in release mode:
https://play.rust-lang.org/?gist=55ec5dd02c22fa799375d6e2e1a6e970&version=nightly

Source-Repo: https://github.com/servo/servo
Source-Revision: fc4de5adf5bff7fabe9f32b960c405f249b5d035

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 029931b3a8d9c2e073038623375ebbc38eba348a
2017-10-12 05:18:00 -05:00
Jyotsna Prakash f83c955811 servo: Merge #18747 - Serializing childrenonly (from jdm:serializing-childrenonly); r=jdm
Rebased from #17896.

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #14975 (github issue number if applicable).
- [x] There are tests for these changes

Source-Repo: https://github.com/servo/servo
Source-Revision: e3624e62a4b247d7af5e783fcd4205d2914b6aab

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : a9cb84a19be11be5d2a4077d450a4f04deb24b67
2017-10-09 11:12:53 -05:00
Matt Brubeck d771fb8f2c servo: Merge #18754 - Use raw pointers instead of transmute for UnsafeFlow (from mbrubeck:unsafe-flow); r=nox
This makes the code depend a bit less on rustc implementation details.

r? pcwalton

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes do not require tests because they are refactoring only

Source-Repo: https://github.com/servo/servo
Source-Revision: 8338df1c7011ed150a8e7d6d3655895fecf1575c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : f93d7d30a9c9c5b81df34ba23f4146bcc4156e3e
2017-10-05 21:24:24 -05:00
Glenn Watson bf632baa47 servo: Merge #18735 - Update WR (clip masks on angle gradients, fix clips on transformed images) (from glennw:update-wr-angle-clips); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 22685465156a07eadca0edfcc5eca119f3ec4681

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 25611e482b0de27e05ed124c93899bd2251e01c2
2017-10-04 17:09:40 -05:00
Emilio Cobos Álvarez 72471d4342 servo: Merge #18698 - style: Remove the last of the explicit style fixups (from emilio:always-been-cleaning-up-ifdefs); r=mrobinson
No more `modify_style_for_foo` in `properties.mako.rs`!

Source-Repo: https://github.com/servo/servo
Source-Revision: 28b8f8eba5c77ffe4175dc6da1c56c87e0ae44d7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 1de87151f6b5701e62e8361a33495ce554a66658
2017-10-02 01:06:23 -05:00
Anthony Ramine c10df37830 servo: Merge #18635 - Rename JS<T> to Dom<T>, Root<T> to DomRoot<T>, and other things (from servo:RENAME-ALL-THE-THINGS); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 1282e0d8080ae15307ac8d35941754f9d60f0d76

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7b291b334b5797291cac309f71232069534f53d2
2017-09-26 03:20:05 -05:00
Emilio Cobos Álvarez d24a63355a servo: Merge #18620 - style: Remove UnsafeNode (from emilio:bye-unsafe-node); r=glennw
No longer needed since a while ago.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4628db14951667b7ffddb47bdcc0c5ed886cb3b1

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : bceb703e28667654cb67f7bdd04135503f9c8967
2017-09-24 20:04:58 -05:00
Manish Goregaokar 78e3a25f72 servo: Merge #18607 - stylo: Move font computation data into nsStyleFont and computed value of font-size (from Manishearth:stylo-font-nsstylefont); r=emilio
r=emilio https://bugzilla.mozilla.org/show_bug.cgi?id=1399228

Source-Repo: https://github.com/servo/servo
Source-Revision: 3db1776326619be91db4ae15005b52eefc289e8a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 26a368e1878b165a04d4455592bdf601ee7f644d
2017-09-23 13:26:02 -05:00
Alan Jeffrey 322859253d servo: Merge #18514 - Remove sources of panic when laying out an iframe without a nested browsing context (from asajeffrey:layout-dont-panic-if-no-iframe-bc); r=emilio
<!-- Please describe your changes on the following line: -->

At the moment, layout panics if it discovers an iframe without a nested browsing context. Under normal circumstances, this is reasonable, but it requires very tight synchronization between script, layout, the constellation and the compositor. In particular, if a layout is in progress when an iframe's browsing context is discarded, this can trigger panic.

This PR fixes this in two ways:

1. Making the pipeline and browsing context ids optional in layout's representation of an iframe.
2. Shutting down layout before discarding a browsing context, rather than after.

This is belt and braces.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #17482 and #18477
- [X] These changes do not require tests because the PR is fixing a panic caused by a race condition

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: c48ef50b7260df7f2e781e15bba37b08f0970062

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : d2bff55daaa2c40d23ef05e75b61f4979ae2cbe2
2017-09-22 09:34:12 -05:00
Michael Droettboom ef7217bd69 servo: Merge #18553 - Make tidy aware of Rust multiline strings (from mdboom:tidy-support-multiline-strings); r=wafflespeanut
<!-- Please describe your changes on the following line: -->
This makes the internal tidy script properly ignore the contents of Rust multiline strings.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #18551 (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: a8a25dac5226a12916c8fe17155d1dbb3b6cb565

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ec337ad33ec9033a2d3819f0fbc9a9778b23c073
2017-09-21 23:38:29 -05:00
Glenn Watson 16053bbf81 servo: Merge #18554 - Update WR (implement blur filter, text-shadow blend fixes, frame output fix) (from glennw:update-wr-blur); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 0fa7505d61e69714ca9d138055dda83630c600a1

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9a94dcc38539fea952a12e127aa0bb3c066a39ee
2017-09-19 01:02:47 -05:00
Alan Jeffrey bb5244cac3 servo: Merge #17862 - Implemented paint worklets drawing to a border (from asajeffrey:script-paint-worklet-border); r=pcwalton
<!-- Please describe your changes on the following line: -->

Allow paint worklets to draw to a border.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #17451.
- [X] These changes do not require tests because the existing css-paint-api test check this (but annoyingly, all fail for other reasons)

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: a5282cabe04ac836458652bcb2b5e40214d36390

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 6924fe28fb30379d26e2be76e73a1521ea16239c
2017-09-18 16:54:54 -05:00
Mateusz Naściszewski 95f1e8f405 servo: Merge #18506 - Fix issues with the combination of position:sticky and tables (from mrobinson:position-sticky-table); r=emilio
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #18441 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 1da581f49b039d5eda5fa618fc41905d444c4885

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 53f485d0076d89d20ea6611a08037285eb0ec62b
2017-09-18 04:18:17 -05:00
Emilio Cobos Álvarez 0ecfa025ee servo: Merge #18525 - style: various serialization fixes (from emilio:border-spacing); r=nox
This should close https://github.com/servo/servo/pull/18458, and fix https://bugzilla.mozilla.org/show_bug.cgi?id=1397619.

Source-Repo: https://github.com/servo/servo
Source-Revision: f95da332a388cc7a94ddfc363872f5c570c27885

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c613453a0f82cde6e26f1366cbae26aa3cf4fc31
2017-09-17 15:12:46 -05:00
Emilio Cobos Álvarez 5958fdc2b7 servo: Merge #18537 - style: Spring cleanup (from emilio:spring-cleanup); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 14529da2a3c9a84cdec5735fca09d0bcb5995348

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 08675ea399bb6360cd2bd5ac84c2aff08f5facfc
2017-09-17 13:35:45 -05:00
Martin Robinson a8bb4881b1 servo: Merge #18510 - Properly handle stacking context collection for truncated fragments (from mrobinson:truncated-fragment-stacking-context-collection); r=emilio
Before we did not properly descend intro truncated fragments when
collecting stacking contexts. This change makes sure that we descend
properly

Fixes #18254.
Fixes #17072.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #18254,  #17072 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 4911706f755f558529cb08f44b0e96be397874ee

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b59cd40b9b976c3fbb9a1030aa377557c0528da0
2017-09-15 19:00:24 -05:00
Martin Robinson 1ae369845a servo: Merge #18462 - Do some minor cleanups in display list building (from mrobinson:cleanup-building-state); r=emilio
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they should not change behavior.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: b2df99cb65a585907e59f70081c3b3c15317b11a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 2d097a39d50d6dd3ddb0906a48010b4ba4838305
extra : histedit_source : 77cb3fa9d2b4c7aff806f2e7aaf91cac62891a70
2017-09-15 12:43:40 -07:00
Corey Farwell 063db35806 servo: Merge #18494 - Implement `size_hint` for more iterators (from frewsxcv:frewsxcv-size-hint); r=jdm
```
implement size hint for
more iterators because why
not we like fast things
```

Source-Repo: https://github.com/servo/servo
Source-Revision: bb2030a49314433c1b31f853e4fa50afa241b596

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : fb164a6e8e51ebba14d97ee7600567b3b517dc30
2017-09-13 19:38:32 -05:00
Boris Chiou 31764d7b79 servo: Merge #18381 - stylo: Bug 1392161 - Introduce CSSPixelLength as computed::Length (from BorisChiou:stylo/transform/rounding); r=<try>
These are the inter-dependent patches of bug 1392161. We want to handle
extreme small lengths carefully for some properties, such as transform, so we
shouldn't use |Au| as the computed value of specified::Length. Now, we introduce
a new type, CSSPixelLength, which is a wrapper of CSSFloat, and it is the
computed value of specified::Length, so we can keep the fractional part
of computed::Length.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1392161](https://bugzilla.mozilla.org/show_bug.cgi?id=1392161).
- [X] These changes do not require tests because there is a wpt test for this, and I also add some others in Gecko.

Source-Repo: https://github.com/servo/servo
Source-Revision: ac1b49b1987d37b3c1ba67213b43c6d5fc373579

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : db63003d73f1e08f0f9d3a95ddd94f6b46497d6a
2017-09-13 05:20:20 -05:00
Glenn Watson 62380b3539 servo: Merge #18470 - Update WR (backface API changes) (from glennw:update-wr-bf); r=pcwalton
This does the minimal work to update to the API changes related
to backface support. It doesn't actually pass through any info
about the backface visibility flags yet.

Source-Repo: https://github.com/servo/servo
Source-Revision: cad3aff508fdf47036237ead519791f180e1ea3d

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 84188512c0b1edf23e0fb31e7ebfbeeb643bcaf4
2017-09-12 19:07:49 -05:00
Bobby Holley dd927d1f81 servo: Merge #18465 - Eliminate RestyleData (from bholley:kill_restyledata); r=emilio
https://bugzilla.mozilla.org/show_bug.cgi?id=1399011

Source-Repo: https://github.com/servo/servo
Source-Revision: 72f0fda836ff97d33169cd1fc0d23d2d07ad74c6

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 58ef9c5edac56e311c7067427c63cb7a6d2fe830
2017-09-12 13:16:26 -05:00
Martin Robinson 782581a0ff servo: Merge #18212 - Add support for position:sticky (from mrobinson:position-sticky); r=emilio
This leverages the position:sticky support in WebRender to bring basic
support for position:sticky in Servo. There are still some issues with
nested sticky flows as well as a few other corner cases. Tests are
imported from WPT and can be removed once we update to the latest
version.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: f1fab036ab16910587c3b0d7813c78b49562f6d9

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : ed17c2d64b6561650774fa06bcca00b3b837eeb8
2017-09-05 15:36:47 -05:00
Glenn Watson 1c314cf843 servo: Merge #18322 - Update WR (font instance API) (from glennw:update-wr-fonts-2); r=emilio
WR now has a concept of font templates and font instances. This
makes the WR font interfaces closer to Cairo and Gecko, and also
makes some future performance optimizations possible.

A font template is the font family, and data backing the font.
A font instance is a reference to a font template and per-instance
options, such as font size, anti-aliasing settings etc.

To update Servo in a minimally invasive way, I added a new font
cache call, that creates a font instance. This means that when
a font is created, and doesn't exist in the cache there are now
two calls to the font cache thread. We could refactor the font
cache to make this work in one call, which we should do in the
future. However, refactoring the font cache is a large chunk of
work by itself. The extra call is only when a font doesn't already
exist in the font context cache, so it should have minimal
performance impact.

Source-Repo: https://github.com/servo/servo
Source-Revision: f7d238d1f38e4d6798cf2f18d72e61b3dd35bd2c

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c85ae1d0c1a530c0fbe27fb76ba4b30f5c345f26
2017-08-31 21:59:30 -05:00
Anthony Ramine 455e5aed2c servo: Merge #18301 - Use generics for the vertical-align property (from servo:derive-all-the-things); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 174c37fddd3ba66797efdb8067c24003f32c04a7

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7b7ad6295863b794e6abd64a5c86eb6eecdf2370
2017-08-31 09:41:50 -05:00
Boris Chiou 20b3ff88fa servo: Merge #18234 - stylo: Bug 1390039 - Implement compute_distance for mismatched transform lists (from BorisChiou:stylo/transform/distance_mismatch); r=birtles,nox
Implement ComputeSquaredDistance for mismatched transform lists.
In order to do this, we have to convert a transform list into a 3d matrix,
so I move the code from layout module into style module for reusing it.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix [Bug 1390039](https://bugzilla.mozilla.org/show_bug.cgi?id=1390039).
- [X] These changes do not require tests because this is a Gecko feature and I add many tests in Gecko already.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3fa5d83ab798a9f1f88a73bf8618e6d7ccbb4b64

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : dd0b5e85f3be270d00657881351cd86286d436ff
2017-08-30 06:03:32 -05:00
Pu Xingyu 1befe06abf servo: Merge #18175 - layout: Stop call normal block size assignment for flex container (from stshine:no-floats-in-flexbox); r=mbrubeck
No need to call the `assign_block_size_block_base()` method of normal block in flex.rs since it is implemented for CSS2.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #14813 (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 7e363d60bb201a526eeebefbd57844cb1f070354

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c3f973af43e188358cc41301c3d04aed7dfdd5a4
2017-08-29 19:15:59 -05:00
Nick Price 9c37ee18c8 servo: Merge #18243 - [18224] Check if line_count is zero to calculate space around line (from DominoTree:18224); r=stshine
<!-- Please describe your changes on the following line: -->
Check line_count before attempting to calculate space around line

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #18224 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because changes are minimal and the error was triggered by a test

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 163f29ff63882a9ffd7d94825110e4f1dd0d28db

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0e8e678e774a9b491c0aef4a8b09b9b2d325ed4a
2017-08-26 17:07:28 -05:00
Keith Yeung 0df1f18fac servo: Merge #18252 - Remove border collapse argument from compute_border_and_padding (from KiChjang:remove-bc-arg); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 8f7bcdfef3ead441320f52b8570f8bf25f1840f2

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 13418ea5490e413bc1db8618dfba9012db992fa2
2017-08-26 16:09:16 -05:00
Bobby Holley 16249a5a0b servo: Merge #18238 - Replace the sequential/parallel distinction with a unified adaptive traversal (from bholley:adaptive_driver); r=emilio
https://bugzilla.mozilla.org/show_bug.cgi?id=1393632

Source-Repo: https://github.com/servo/servo
Source-Revision: 72c59ff830b256ca5bd6df7736a9d9acfc9d3e52

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : c20e0e7691cc57e8d96627501e64962588c3eea5
2017-08-25 12:23:41 -05:00
Emilio Cobos Álvarez 0742692421 servo: Merge #18215 - style: Only store applicable ::before / ::after pseudo styles during the traversal (from emilio:applicable-pseudo); r=heycam
This should help memory usage quite a bit.

Source-Repo: https://github.com/servo/servo
Source-Revision: 772a8464eb8dcd4fd50cd342b7c6fa165745dd1e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b775b7ef0f0ac287ccafe6a84b0511065e0f9751
2017-08-25 02:30:50 -05:00
Martin Robinson 4194cda069 servo: Merge #18188 - Allow overflow:scroll without a stacking context (from mrobinson:overflow-stacking-context); r=mbrubeck
Fix the long-standing bug where items that are positioned and have
overflow:scroll or overflow:auto automatically create stacking
contexts. In order to do this we need to fix another bug where display
list sorting can put a Clip or ScrollFrame definition after the first
time it is used in a display list.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 4725a05bfba0b588d19af8bc5cfe960bda1ea880

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 1c3dd60a7913ab76c637b8bd715ca2bf3d287243
2017-08-24 01:31:34 -05:00
Clément DAVID 14926dcf7c servo: Merge #18179 - Automatically verify that derive() lists are alphabetically ordered #… (from davidcl:master); r=jdm
<!-- Please describe your changes on the following line: -->
Automatically verify that derive() lists are alphabetically ordered #18172

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #18172 (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 474369618965569407d127b1e8c481e757cc59d3

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 421aa68def8e17f70580477a4203494db3b69382
2017-08-23 17:18:31 -05:00
Emilio Cobos Álvarez 35da4823c1 servo: Merge #18153 - stylo: Remove a lot of the restyle damage related complexity (from emilio:restyle-damage-cleanup); r=heycam
The only reason why we had the `existing_style_for_style_damage` bit is to apply
some optimizations that we don't have anymore.

I still want to reintroduce a few of them, at least for the non-eager
pseudo-element case... But I think I won't need this at all.

This allows us to remove a fair amount of Gecko code too.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 87206bd68ee6e870c10dc09d5a7b1f893805c379

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : fd4c11efdcb06c6cb19baec548999b80f58e5961
2017-08-20 07:00:25 -05:00
Xidorn Quan 5576112e59 servo: Merge #18136 - Use Option<RGBA> for color in shadow (from upsuper:shadow-color); r=emilio
This fixes [bug 1390697](https://bugzilla.mozilla.org/show_bug.cgi?id=1390697) by downgrading the support of currentcolor in shadow to what Gecko currently supports.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0b45a4f65174a436986c9bfd0ef99a629ab569b3

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : b8857843ec4f8c44237e77d0d772b0352bbd913d
2017-08-19 05:45:53 -05:00
Nikhil Shagrithaya 8e39425a51 servo: Merge #18056 - End TreeBuilder's reliance on DOM (from cynicaldevil:remove-treesink-dep-on-dom); r=nox
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->

Fixed h5e's TreeBuilder so that it does not use `same_tree` and `has_parent_node` methods: d8c2ea5cb6
<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 62d0de349debf54c32e865e813eac43fb83df7be

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 253819d3fda84fac003101f132bd629f93aa3fa8
2017-08-18 16:27:05 -05:00
Martin Robinson 1a27a5a33d servo: Merge #18123 - Improve containing block creation for position:absolute flows (from mrobinson:absolute-containing-blocks); r=pcwalton
Instead of only promoting flows with positioned fragments to containing
blocks, also do this for flows which have the transform, perspective or
filter properties set. This is what the spec requires and also fixes
some failing tests. It will allow us to stop creating stacking contexts
for overflow:hidden and overflow:scroll flows.

Fixes #18091.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #18091  (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 12607531d812ee87e0b4a70f961c1aa3ec4c414d

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : d7e86671954303af12faf807759c6a27d5570267
2017-08-17 19:42:20 -05:00
Anthony Ramine 8a8c2c50b0 servo: Merge #18118 - Revert "Auto merge of #18114 - emilio:revert-webgl-refactor, r=nox" (from servo:oops-webgl); r=emilio
This reverts commit 4d10d39e8fe841c5fe2ac58da2daaa13c10c140e, reversing
changes made to ee94e2b7c0bd327abe8f9545b2a1f792f67a2bdd.

Source-Repo: https://github.com/servo/servo
Source-Revision: fbabcaf614662a52eace21a64f27802c7eff4304

--HG--
rename : servo/tests/unit/style/rule_tree/mod.rs => servo/components/canvas/webgl_mode/mod.rs
rename : servo/components/canvas_traits/lib.rs => servo/components/canvas_traits/canvas.rs
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 921107267937fee7e9f6887bc9a7d129ff9af9f2
2017-08-17 00:26:08 -05:00
Martin Robinson fd09ee7305 servo: Merge #18112 - Use the is_absolute_containing_block method everywhere (from mrobinson:containing-block-helper); r=mbrubeck
This is a better approach than relying on
contains_positioned_fragments, because in the future other properties
will create absolute containing blocks.

<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they do not change behavior.

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 7806784eb4761bf9018d342d29594eb6c9058fc3

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 9ab92da9eafe287070c4e7082e04e7009970e31c
2017-08-16 19:18:48 -05:00
Emilio Cobos Álvarez 63addaeaca servo: Merge #18114 - Revert "Auto merge of #17891 - MortimerGoro:webgl_move, r=glennw,emilio" (from emilio:revert-webgl-refactor); r=nox
This reverts commit 90f55ea4580e2a15f7d70d0491444f18b972d450, reversing
changes made to 2e60b27a2186a8cba4b952960155dfcf3f47d7db.

Doing that per Josh's request, since it's causing very frequent intermittent OOMs on the android builders.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4d10d39e8fe841c5fe2ac58da2daaa13c10c140e

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 0474db248269e8cf2b094bfa04e32701137c46c8
2017-08-16 09:45:13 -05:00
Imanol Fernandez e89d06f1c7 servo: Merge #17891 - Improved WebGL architecture (from MortimerGoro:webgl_move); r=glennw,emilio
<!-- Please describe your changes on the following line: -->

Info about the big picture and the goals of the WebGL refactor in this thread: https://groups.google.com/forum/#!topic/mozilla.dev.servo/0WMGz60kKzQ

I tried to reduce this PR as much as possible as requested in the thread. I'll do separate PRs for other features (e.g.: Batch messages or use shared memory to improve frame times) or fixes.

Some tips to ease the review process:
- Most changes in DOM objects follow the same pattern (remove CanvasMsg wrapper and use the new sender method).
- WebGLCommands are the same ones as before (moved from webrender_api). So those lines are already reviewed.
- See WebGL traits in [components/canvas_traits/webgl.rs](https://github.com/servo/servo/pull/17891/files#diff-8701045d01505418701d0631d4d45562)
- See WebGLThread and WR External Image bridge in [components/canvas/webgl_thread.rs](https://github.com/servo/servo/pull/17891/files#diff-281554879f39a2a041f7a69d442a5d2e)
- The implementation submitted in this PR creates a single `WebGLThread` for all ScriptThread/Pipelines. See that in [components/canvas/webgl_mode/inprocess.rs](https://github.com/servo/servo/pull/17891/files#diff-250070c6c5a38c7f9fa0f5b3c101f68b)

The conformance tests will help to guarantee that we don't miss anything.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 90f55ea4580e2a15f7d70d0491444f18b972d450

--HG--
rename : servo/tests/unit/style/rule_tree/mod.rs => servo/components/canvas/webgl_mode/mod.rs
rename : servo/components/canvas_traits/lib.rs => servo/components/canvas_traits/canvas.rs
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : d476816b29986c4abfd61ff3c7b46aa189f2f50a
2017-08-15 16:00:10 -05:00
Simon Sapin ea9c8db790 servo: Merge #18046 - Upgrade to rustc 1.21.0-nightly (13d94d5fa 2017-08-10) (from servo:rustup); r=emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 7d9b82b9efa7b10a2e34d93df5ac535d99518f7a

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : e1b3d113c3edaea3c4c07f8b206f2e02922e3caf
2017-08-15 07:31:04 -05:00