Commit graph

36788 commits

Author SHA1 Message Date
Josh Matthews
ed74b898a5 Cancel animations that affect nodes that do not participate in layout. 2018-12-10 08:59:17 -05:00
Josh Matthews
037d8dd924 Add a test for dealing with multiple image loading tasks when the list of available images is usable. 2018-12-10 08:52:41 -05:00
bors-servo
a04200ae79
Auto merge of #22398 - servo-wpt-sync:wpt_update_09-12-2018, r=jdm
Sync WPT with upstream (09-12-2018)

Automated downstream sync of changes from upstream as of 09-12-2018.
[no-wpt-sync]

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22398)
<!-- Reviewable:end -->
2018-12-10 00:08:36 -05:00
WPT Sync Bot
b509d28773 Update web-platform-tests to revision 2d5385793ade85b7268ee86db4535a1baeb508ab 2018-12-09 22:15:04 -05:00
bors-servo
ddfc799f4d
Auto merge of #22218 - CYBAI:sw-up-to-date, r=jdm
Implement NavigationPreloadManager for ServiceWorker

---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix part of #19302 .
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22218)
<!-- Reviewable:end -->
2018-12-09 19:21:31 -05:00
bors-servo
f370fdfc9c
Auto merge of #22391 - atouchet:prt, r=jdm
Minor pull request template cleanup

<!-- Please describe your changes on the following line: -->
Some minor changes to improve the consistency of the pull request template.

---
<!-- 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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22391)
<!-- Reviewable:end -->
2018-12-09 16:26:50 -05:00
bors-servo
9e4d22e530
Auto merge of #22393 - servo-wpt-sync:wpt_update_08-12-2018, r=jdm
Sync WPT with upstream (08-12-2018)

Automated downstream sync of changes from upstream as of 08-12-2018.
[no-wpt-sync]

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22393)
<!-- Reviewable:end -->
2018-12-09 14:18:22 -05:00
bors-servo
d81798696d
Auto merge of #22272 - georgeroman:kill_test_processes_on_any_error, r=jdm
Kill test processes whenever any error occurs

<!-- 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 #21822

<!-- 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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22272)
<!-- Reviewable:end -->
2018-12-09 10:36:13 -05:00
WPT Sync Bot
c5c7a1f47a Update web-platform-tests to revision 5349c6a6327372f856ecbe07d863d468a4236726 2018-12-08 22:18:48 -05:00
Alex Touchet
6dce40dc53
Minor pull request template cleanup 2018-12-08 13:11:37 -08:00
bors-servo
d17d5adb6d
Auto merge of #22390 - cdeler:fixup-linux-mint-issue-with-bootstrap, r=jdm
Fixup the issue related with an incorrect distro version string handling

The original fixes for #21732 had a mistake.
The fix don't work on the LinuxMint with version 19:
```
  File "./mach", line 96, in <module>
    main(sys.argv)
  File "./mach", line 24, in main
    sys.exit(mach_bootstrap.bootstrap_command_only(topdir))
  File "/home/user/workspace/skv/servo/python/mach_bootstrap.py", line 239, in bootstrap_command_only
    bootstrap(context, force)
  File "/home/user/workspace/skv/servo/python/servo/bootstrap.py", line 380, in bootstrap
    distro, version = get_linux_distribution()
  File "/home/user/workspace/skv/servo/python/servo/bootstrap.py", line 349, in get_linux_distribution
    major, minor = version.split('.')
ValueError: need more than 1 value to unpack
```
I've fixed that

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #21732

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22390)
<!-- Reviewable:end -->
2018-12-08 13:44:47 -05:00
cdeler
8e1ef08127 Fixup the issue related with an incorrect distro version string handling 2018-12-08 21:26:15 +03:00
bors-servo
8fb1b567fa
Auto merge of #22386 - cdeler:fix-mach-bootstrap-LinuxMint, r=jdm
Use the base Ubuntu distro instead of LinuxMint in './mach bootstrap'

I'm LinuxMint user.

I couldn't install all dependencies via `./mach bootstrap` due to error, described in this ticket: https://github.com/servo/servo/issues/21732

As LinuxMint is based on the stable Ubuntu, I've made a little fix for the `bootstrap` procedure.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #21732 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because I haven't found the tests for `./mach bootstrap` (please correct me if I'm wrong)

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22386)
<!-- Reviewable:end -->
2018-12-08 10:29:15 -05:00
o0Ignition0o
10c9128eb2 ./mach run -n on mac os. 2018-12-08 15:44:55 +01:00
bors-servo
5346f74215
Auto merge of #22376 - cbrewster:constellation_nll_cleanup, r=jdm
Cleanup constellation after nll

<!-- Please describe your changes on the following line: -->
This cleans up a couple cases where we had to add extra scopes to appease the borrowck, now that nll has landed, this cleans these up.

---
<!-- 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 cleanup

<!-- 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. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22376)
<!-- Reviewable:end -->
2018-12-08 07:53:37 -05:00
cdeler
7ceabcee0c Use the base Ubuntu distro instead of LinuxMint in './mach bootstrap' 2018-12-08 15:19:56 +03:00
bors-servo
ea0ad5b408
Auto merge of #22382 - servo:_, r=SimonSapin
Bug 1509027 - Use more restricted scope for Treeherder routes

https://bugzilla.mozilla.org/show_bug.cgi?id=1509027

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22382)
<!-- Reviewable:end -->
2018-12-08 06:33:29 -05:00
bors-servo
7fd5c96fc8
Auto merge of #22383 - servo-wpt-sync:wpt_update_07-12-2018, r=jdm
Sync WPT with upstream (07-12-2018)

Automated downstream sync of changes from upstream as of 07-12-2018.
[no-wpt-sync]

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22383)
<!-- Reviewable:end -->
2018-12-08 05:12:05 -05:00
CYBAI
235fb5952d Introduce NavigationPreloadManager for ServiceWorkerRegistration 2018-12-08 16:50:18 +08:00
WPT Sync Bot
6c2d26eb4b Update web-platform-tests to revision 6087baf4a83e7953112242be9fd6e719797ebdf6 2018-12-07 22:08:08 -05:00
Simon Sapin
d4442f0f73 Bug 1509027 - Use more restricted scope for Treeherder routes
https://bugzilla.mozilla.org/show_bug.cgi?id=1509027
2018-12-08 01:58:36 +01:00
bors-servo
3c19cd49ec
Auto merge of #22377 - ferjm:servo.media.update, r=jdm
Update servo-media. Fixes discarded frames during player setup

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22377)
<!-- Reviewable:end -->
2018-12-06 17:25:57 -05:00
Fernando Jiménez Moreno
0be42a45cd Update servo-media. Fixes discarded frames during player setup 2018-12-06 17:04:09 -05:00
Connor Brewster
aecb48d5d1 Cleanup constellation after nll 2018-12-06 11:59:09 -06:00
bors-servo
a2c4eba720
Auto merge of #22375 - servo-wpt-sync:wpt_update_05-12-2018, r=jdm
Sync WPT with upstream (05-12-2018)

Automated downstream sync of changes from upstream as of 05-12-2018.
[no-wpt-sync]

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22375)
<!-- Reviewable:end -->
2018-12-06 00:05:40 -05:00
WPT Sync Bot
f9972c83e3 Update web-platform-tests to revision 093a97b6ecc6484c201d704d38b47bef1964d59d 2018-12-05 23:54:15 -05:00
bors-servo
16e4eb6964
Auto merge of #22362 - servo:servoparser, r=SimonSapin
Use Utf8LossyDecoder instead of IncompleteUtf8

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22362)
<!-- Reviewable:end -->
2018-12-05 10:56:14 -05:00
Anthony Ramine
b4448a9fe7 Use Utf8LossyDecoder instead of IncompleteUtf8 2018-12-05 16:39:07 +01:00
bors-servo
08bbf4f93a
Auto merge of #22360 - servo-wpt-sync:wpt_update_04-12-2018, r=jdm
Sync WPT with upstream (04-12-2018)

Automated downstream sync of changes from upstream as of 04-12-2018.
[no-wpt-sync]

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22360)
<!-- Reviewable:end -->
2018-12-04 22:33:31 -05:00
WPT Sync Bot
b49ffaa0f7 Update web-platform-tests to revision 614fd870e47c9f4e76291e5af4e32b676c0acac0 2018-12-04 22:20:33 -05:00
bors-servo
063bd7ac19
Auto merge of #22357 - servo-wpt-sync:wpt_update_03-12-2018, r=jdm
Sync WPT with upstream (03-12-2018)

Automated downstream sync of changes from upstream as of 03-12-2018.
[no-wpt-sync]

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22357)
<!-- Reviewable:end -->
2018-12-04 14:03:00 -05:00
WPT Sync Bot
c930649cd6 Update web-platform-tests to revision 1abcb7058ecdaabd5fe9c27c90a73795d31d2a0a 2018-12-03 22:19:20 -05:00
Josh Matthews
bf564cae5d net: Log HTTP request headers. 2018-12-03 01:44:42 -05:00
bors-servo
5bdea7dc1c
Auto merge of #22352 - emilio:gecko-sync, r=emilio
style: Sync changes from mozilla-central.

See each individual commit for details.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22352)
<!-- Reviewable:end -->
2018-12-02 19:07:23 -05:00
Emilio Cobos Álvarez
3ff55f9aaf Update test expectations. 2018-12-02 19:06:56 -05:00
Emilio Cobos Álvarez
6722e71aba Fix formatting of inverse transform matrix. 2018-12-02 14:17:31 -05:00
Emilio Cobos Álvarez
46734f51b7 style: Use https for the MPL header URL. 2018-12-02 14:17:30 -05:00
Emilio Cobos Álvarez
2d85b54db0 style: Rustfmt. 2018-12-02 14:17:29 -05:00
Emilio Cobos Álvarez
c6dfe53483 Fix servo build. 2018-12-02 14:17:29 -05:00
Emilio Cobos Álvarez
edf4b0129b style: Make page-break-* Gecko-only. 2018-12-02 14:17:28 -05:00
Emilio Cobos Álvarez
efecd06a28 style: Use cbindgen for border-style and outline-style.
I'm pretty sure the FIXME I left in the outline-style code is a bug,
but I want to clean this up further and I didn't want to fix it without adding
a test.

Differential Revision: https://phabricator.services.mozilla.com/D12859
2018-12-02 14:17:27 -05:00
Emilio Cobos Álvarez
fd73f1665a style: Move BorderStyle to border.rs.
Differential Revision: https://phabricator.services.mozilla.com/D12858
2018-12-02 14:17:26 -05:00
Emilio Cobos Álvarez
374249fa54 style: Implement page-break-{before,after} as legacy shorthands for {before,after}.
This is all the style-system work needed for this.

This implements the concept of legacy shorthands, teaches tests to understand
it, and adds a few more tests for these properties in particular.

The WPT even caught a few WebKit / Blink bugs:

  https://bugs.chromium.org/p/chromium/issues/detail?id=906336
  https://bugs.webkit.org/show_bug.cgi?id=191803

This doesn't change the layout behavior for page-break-before: always, since
it'd stop breaking in multicol and such. Similarly, break-before / break-after:
column and page still behave the same, I'll file followups for those given
comment 22.

Differential Revision: https://phabricator.services.mozilla.com/D12211
2018-12-02 14:17:26 -05:00
Emilio Cobos Álvarez
a427e4f763 style: Introduce the concept of legacy shorthands.
We need this because there's a weird mapping between these properties' values
('always' maps to 'page').

See https://drafts.csswg.org/css-cascade-4/#legacy-shorthand.

Differential Revision: https://phabricator.services.mozilla.com/D12213
2018-12-02 14:17:25 -05:00
Emilio Cobos Álvarez
d0ac1b06d1 style: Introduce break-inside, and alias page-break-inside to it.
This property has no weird value mapping, so we can just do this.

Differential Revision: https://phabricator.services.mozilla.com/D12212
2018-12-02 14:17:24 -05:00
Shubham Kumaram
67414f4002 style: Change Text Rendering constants to enum classes in nsStyleConsts.h.
Differential Revision: https://phabricator.services.mozilla.com/D12839
2018-12-02 14:17:23 -05:00
Emilio Cobos Álvarez
dca315e648 style: Prevent exponential blowup of custom properties.
Put a hard cap on the value length instead of counting substitutions, because it
works best, see the comment.

Differential Revision: https://phabricator.services.mozilla.com/D13352
2018-12-02 14:17:22 -05:00
Hiroyuki Ikezoe
f6b6825c31 style: Run background-color animations on the compositor.
Changes for nsIDOMWindowUtils.getOMTAValue is in the next commit with come test
cases.

Differential Revision: https://phabricator.services.mozilla.com/D13001
2018-12-02 14:17:21 -05:00
Emilio Cobos Álvarez
8bed8ae122 style: Remove the display: -moz-box overrides display: -webkit-box hack.
display: -moz-box is no longer exposed to content so this is not necessary.

See bug 1407701 for context.

Differential Revision: https://phabricator.services.mozilla.com/D12961
2018-12-02 14:17:21 -05:00
Emilio Cobos Álvarez
2e388e860d style: Align user-select behavior more with other UAs.
There's a few subtle behavior changes here, which I'll try to break down in the
commit message.

The biggest one is the EditableDescendantCount stuff going away. This
was added in bug 1181130, to prevent clicking on the non-editable div from
selecting the editable div inside. This is problematic for multiple reasons:

 * First, I don't think non-editable regions of an editable element should
   be user-select: all.

 * Second, it just doesn't work in Shadow DOM (the editable descendant count is
   not kept up-to-date when not in the uncomposed doc), so nested
   contenteditables behave differently inside vs. outside a Shadow Tree.

 * Third, I think it's user hostile to just entirely disable selection if you
   have a contenteditable descendant as a child of a user-select: all thing.

   WebKit behaves like this patch in the following test-case (though not Blink):

     https://crisal.io/tmp/user-select-all-contenteditable-descendant.html

   Edge doesn't seem to support user-select: all at all (no pun intended).

   But we don't allow to select anything at all which looks wrong.

 * Fourth, it's not tested at all (which explains how we broke it in Shadow DOM
   and not even notice...).

In any case I've verified that this doesn't regress the editor from that bug. If
this regresses anything we can fix it as outlined in the first bullet point
above, which should also make us more compatible with other UAs in that
test-case.

The other change is `all` not overriding everything else. So, something like:

  <div style="-webkit-user-select: all">All <div style="-webkit-user-select: none">None</div></div>

Totally ignores the -webkit-user-select: none declaration in Firefox before this
change. This doesn't match any other UA nor the spec, and this patch aligns us
with WebKit / Blink.

This in turn makes us not need -moz-text anymore, whose only purpose was to
avoid this.

This also fixes a variety of bugs uncovered by the previous changes, like the
SetIgnoreUserModify(false) call in editor being completely useless, since
presShell->SetCaretEnabled ended in nsCaret::SetVisible, which overrode it.

This in turn uncovered even more bugs, from bugs in the caret painting code,
like not checking -moz-user-modify on the right frame if you're the last frame
of a line, to even funnier bits where before this patch you show the caret but
can't write at all...

In any case, the new setup I came up with is that when you're editing (the
selection is focused on an editable node) moving the caret forces it to end up
in an editable node, thus jumping over non-editable ones.

This has the nice effect of not completely disabling selection of
-moz-user-select: all elements that have editable descendants (which was a very
ad-hoc hack for bug 1181130, and somewhat broken per the above), and also
not needing the -moz-user-select: all for non-editable bits in contenteditable.css
at all.

This also fixes issues with br-skipping like not being able to insert content in
the following test-case:

  <div contenteditable="true"><span contenteditable="false">xyz </span><br>editable</div>

If you start moving to the left from the second line, for example.

I think this yields way better behavior in all the relevant test-cases from bug
1181130 / bug 1109968 / bug 1132768, shouldn't cause any regression, and the
complexity is significantly reduced in some places.

There's still some other broken bits that this patch doesn't fix, but I'll file
follow-ups for those.

Differential Revision: https://phabricator.services.mozilla.com/D12687
2018-12-02 14:17:20 -05:00