Commit graph

18505 commits

Author SHA1 Message Date
bors-servo
3de14d9ca0 Auto merge of #11835 - servo:diy-as-unsafe-cell, r=nox
Use our copy of RefCell for style data

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

This allows removing `#![feature(as_unsafe_cell)]` in geckolib and make progress towards #11815.

---
<!-- 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 part of #11815.

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require new tests because they don’t introduce no functional changes.

<!-- 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11835)
<!-- Reviewable:end -->
2016-06-23 09:19:28 -05:00
Simon Sapin
6807bb615f Add commit hash to be reverted in FIXME comment. 2016-06-23 16:14:33 +02:00
Simon Sapin
f7f81e0ed0 Use our copy of RefCell for style data.
This allows removing `#![feature(as_unsafe_cell)]` in geckolib
and make progress towards #11815.
2016-06-23 16:13:49 +02:00
bors-servo
14dc1199df Auto merge of #11831 - Ms2ger:bloom, r=SimonSapin
Make the STYLE_BLOOM global private.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11831)
<!-- Reviewable:end -->
2016-06-23 07:45:04 -05:00
bors-servo
0080a14859 Auto merge of #11830 - Manishearth:stylo-column-width, r=emilio
Support column-width property in geckolib

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11830)
<!-- Reviewable:end -->
2016-06-23 06:55:15 -05:00
Ms2ger
4381107c21 Make the STYLE_BLOOM global private. 2016-06-23 13:52:26 +02:00
Manish Goregaokar
e3d5f4d09a
Support column-width property in geckolib 2016-06-23 16:55:08 +05:30
bors-servo
bb3d7ee00f Auto merge of #11699 - broesamle:issue10947_Test-body-scroll-quirksA, r=izgzhen
Tests for scroll_area on body element in quirks mode.

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

see #10947
Node::scroll_area should check if the element is potentially scrollable

Three tests use `document.scrollingElement` which was not supported at
the time of writing. They are, hence, expected to FAIL.

The last expected FAIL should be fixed by #10947.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11699)
<!-- Reviewable:end -->
2016-06-23 06:05:40 -05:00
Martin Broesamle
8701a4495b Tests for scroll_area on body element in quirks mode.
see #10947
Node::scroll_area should check if the element is potentially scrollable

Three tests use `document.scrollingElement` which was not supported at
the time of writing. They are, hence, expected to FAIL.

The last expected FAIL should be fixed by #10947.

Edited some comments, message texts.
2016-06-23 10:14:03 +02:00
bors-servo
44b0bddf41 Auto merge of #11822 - Ms2ger:sharedcontext, r=nox
Avoid creating a LayoutContext in parallel::assign_inline_sizes.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11822)
<!-- Reviewable:end -->
2016-06-23 03:03:02 -05:00
bors-servo
053c2aee0a Auto merge of #11827 - servo:geckolib-no-const-fn, r=emilio
Generate geckolib structs with -no-bitfield-methods

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

This makes rust-bindgen not generate a bunch of methods that were not used, including `const fn` ones.

This helps with #11815 since `const fn` is unstable.

(Note that running `regen_style_structs.sh` without changing it made a bunch of unrelated changes to `structs_*.rs`, probably because I had a different Gecko version. I first made a commit of that, then added `-no-bitfield-methods`, regenerated, made another commit, then removed the first commit with `git rebase -i master@{u}`.)

r? @emilio

---
<!-- 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 part of #11815 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require new tests because they’re only removing dead code.

<!-- 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11827)
<!-- Reviewable:end -->
2016-06-22 17:06:30 -05:00
Simon Sapin
cdd4a1dfeb Generate geckolib structs with -no-bitfield-methods
This makes rust-bindgen not generate a bunch of methods that were not
used, including `const fn` ones.

This helps with #11815 since `const fn` is unstable.
2016-06-22 23:36:04 +02:00
bors-servo
0fb5d634a0 Auto merge of #11816 - servo:stable-style, r=nox
Make the style crate (almost) build with a stable compiler

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

The bulk of this is adding cargo features to make derived implementations of `heapsize` and `serde` traits optional.

"Almost" because `std::intrinsics::discriminant_value` is currently unstable and doesn’t have any stable replacement that I know of. For now, this PR conditionally replaces it with `unimplemented!()`.

r? @nox

---
<!-- 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 <s>fix</s> are part of #11815 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not <s>require tests</s> *have tests yet* because that requires https://github.com/servo/servo/issues/11806, but I still want to land this before it bitrots. (Tests should check that the build succeeds with a stable compiler.)

<!-- 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11816)
<!-- Reviewable:end -->
2016-06-22 09:43:20 -05:00
Simon Sapin
b103e8baa7 Remove some usage of unstable features in geckolib 2016-06-22 15:49:07 +02:00
Simon Sapin
3822bb269c Change style_traits to a single "servo" Cargo feature
... instead of fine-grained heap_size and serde-serialization ones.
2016-06-22 15:48:52 +02:00
Simon Sapin
00b6210519 Make the style crate almost build on stable Rust.
`discriminant_value` will need to be replaced with something else later.
2016-06-22 15:44:13 +02:00
Simon Sapin
ea73c8efac Make it possible to build the style_traits crate with a stable compiler.
Testing this on CI to make sure we don’t regress it is blocked on #11806
2016-06-22 15:40:53 +02:00
bors-servo
87d991ebd2 Auto merge of #11803 - jdm:catch-unwind, r=nox
Avoid unwinding into C stack frames

Fix the biggest cause of #6462 by wrapping lots of JS->Rust transitions in catch_panic, and calling resume_panic after all Rust->JS transitions return.

Known issue:
* Finalizers can be called in response to any JS engine allocation that triggers a GC, so it's possible for a Rust object's Drop implementation that panics to leave an interrupted panic in TLS. This is why 30d8009 is part of this PR; the underlying problem is that there's no clear place to resume the panic after it is interrupted.

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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11803)
<!-- Reviewable:end -->
2016-06-22 08:36:01 -05:00
Josh Matthews
b8853554db Wrap executions of Rust code called from JS in catch_unwind. Propagate the interrupted panic to the origin of the JS execution via TLS before resuming. Fix #6462. 2016-06-22 09:35:19 -04:00
Josh Matthews
a74ce64539 Avoid an unnecessary panic when the script task deals with a GC after the layout thread is unreachable. 2016-06-22 09:35:19 -04:00
Josh Matthews
fbf6c7fc2b Add a manual test for panicking while JS stack frames exist. 2016-06-22 09:35:19 -04:00
Ms2ger
577c2d2078 Store SharedStyleContext in AssignISizes. 2016-06-22 15:02:06 +02:00
Ms2ger
ea45e76840 Pass SharedStyleContext to assign_inline_sizes. 2016-06-22 14:50:04 +02:00
Ms2ger
ea15f69404 Pass SharedStyleContext to compute_inline_sizes. 2016-06-22 14:31:05 +02:00
Ms2ger
c33ac876ff Pass SharedStyleContext to propagate_and_compute_used_inline_size. 2016-06-22 14:29:36 +02:00
Ms2ger
21b8d2bd91 Pass SharedStyleContext to propagate_assigned_inline_size_to_children. 2016-06-22 14:28:14 +02:00
Ms2ger
959f8c11cd Pass SharedStyleContext to TableWrapperFlow::compute_used_inline_size. 2016-06-22 14:27:02 +02:00
Ms2ger
9731a001db Pass SharedStyleContext to compute_used_inline_size. 2016-06-22 14:26:52 +02:00
Ms2ger
018bebe90d Pass SharedStyleContext to compute_inline_size_constraint_inputs. 2016-06-22 14:22:21 +02:00
Ms2ger
5c12755fa6 Pass SharedStyleContext to initial_computed_inline_size. 2016-06-22 14:21:08 +02:00
Ms2ger
2a1e2f491a Pass SharedStyleContext to containing_block_inline_size. 2016-06-22 14:19:56 +02:00
Ms2ger
f20ea08a1b Pass SharedStyleContext to explicit_block_containing_size. 2016-06-22 14:17:33 +02:00
Ms2ger
6f4b8f2505 Store SharedStyleContext in AbsoluteAssignBSizesTraversal. 2016-06-22 14:09:54 +02:00
Ms2ger
e142b78850 Pass SharedStyleContext to calculate_absolute_block_size_and_margins. 2016-06-22 14:08:28 +02:00
Ms2ger
e6435b7ec4 Pass SharedStyleContext to adjust_fragments_for_collapsed_margins_if_root. 2016-06-22 14:07:06 +02:00
bors-servo
a0a62ed3fd Auto merge of #11819 - servo:glutin-feature, r=nox
Remove the glutin_app feature from the servo crate.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11819)
<!-- Reviewable:end -->
2016-06-22 04:51:46 -05:00
Ms2ger
bab5c27487 Remove the glutin_app feature from the servo crate.
The dependency is used unconditionally.
2016-06-22 09:55:29 +02:00
bors-servo
47387a5c44 Auto merge of #11752 - mbrubeck:cleanup, r=pcwalton
Minor code cleanup in layout

r? @pcwalton

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11752)
<!-- Reviewable:end -->
2016-06-21 17:51:26 -05:00
bors-servo
bc5a52b328 Auto merge of #11784 - heycam:atom, r=bholley
Look at nsIAtom.mHash directly rather than call Gecko_HashAtom.

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

We hash Gecko-backed atoms pretty often.  Using bindgen to access to the stored hash in nsIAtom helps with perf a little.

r? @bholley

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

<!-- 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11784)
<!-- Reviewable:end -->
2016-06-21 16:33:44 -05:00
bors-servo
239b221b43 Auto merge of #11817 - zmike:master, r=metajack
embedding README updates

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

More current directions for running/testing cef.

@jdm @larsbergstrom @metajack literally anyone

---
<!-- 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: -->
- [ ] There are tests for these changes OR
- [ X] These changes do not require tests because I said so

<!-- 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11817)
<!-- Reviewable:end -->
2016-06-21 14:15:17 -05:00
Mike Blumenkrantz
0a081972d5 embedding README updates
this provides some more current directions for testing
2016-06-21 15:00:46 -04:00
bors-servo
9dbf7b413e Auto merge of #11814 - jdm:fancy-logo, r=metajack
Add a border to the logo to differentiate from background color.

By @zmike from https://github.com/servo/servo/pull/11473#issuecomment-223118097.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11814)
<!-- Reviewable:end -->
2016-06-21 10:43:11 -05:00
bors-servo
5c8a855d0e Auto merge of #11809 - ConnorGBrewster:remove_pipeline_to_frame_map, r=asajeffrey
Remove pipeline_to_frame_map

<!-- Please describe your changes on the following line: -->
I think storing the `FrameId` on the `Pipeline` is cleaner than maintaining an extra `HashMap`. If not, I am ok with not making this change.

---
<!-- 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 do not require tests because refactoring.

<!-- 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11809)
<!-- Reviewable:end -->
2016-06-21 08:53:15 -05:00
Josh Matthews
e7d0f04a88 Add a border to the logo to differentiate from background color. 2016-06-21 09:41:36 -04:00
Connor Brewster
b8059558e3
Remove pipeline_to_frame_map 2016-06-21 07:18:11 -06:00
bors-servo
b9b289c4be Auto merge of #11789 - Coder206:uri, r=asajeffrey
URI to URL

<!-- 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 #11450 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes (Windows 10 was never able to run them...)

<!-- 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11789)
<!-- Reviewable:end -->
2016-06-20 20:57:52 -05:00
bors-servo
2c4c2d8779 Auto merge of #11530 - jdm:sigsegv, r=metajack
Obtain backtraces automatically from segfaults

<!-- Please describe your changes on the following line: -->
This enables more meaningful output from observing hard crashes outside of GDB through the judicious use of a SIGSEGV signal handler.

---
<!-- 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 #9371 (github issue number if applicable).
- [X] There are tests for these changes OR

<!-- 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11530)
<!-- Reviewable:end -->
2016-06-20 20:08:50 -05:00
bors-servo
993df6a359 Auto merge of #11807 - bgrins:patch-1, r=jdm
Be clear in ports/cef/README.md about using build-cef

<!-- Please describe your changes on the following line: -->
I believe ./mach build-cef is required, so just updating the document to be clear

---
<!-- 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 it's documentation change

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11807)
<!-- Reviewable:end -->
2016-06-20 19:21:31 -05:00
Patrick Trottier
97eb594cc2 URI to URL
trying to pass test - uri
2016-06-20 20:18:42 -04:00
Josh Matthews
99e436eb05 Add a test that forces a crash. This makes it easy to manually check the output of a segfault with a complicated backtrace; the actual automation doesn't help us except to verify that the crash continues to happen as excepted. 2016-06-20 18:32:48 -04:00