Commit graph

18482 commits

Author SHA1 Message Date
mrmiywj
909f0da3c2 add reload keyboard shortcut
rename the preference to shell.builtin-key-shortcuts.enabled
2016-06-23 17:37:56 +08: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
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
Josh Matthews
d4a5b45242 Add a signal handler for SIGSEGV that reports the current thread name and backtrace. 2016-06-20 18:32:46 -04:00
bors-servo
a94d3ee744 Auto merge of #11804 - Ms2ger:layout-thread-crate, r=jdm
Introduce a layout_thread crate; drop the dependency of layout on script.

<!-- 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/11804)
<!-- Reviewable:end -->
2016-06-20 17:00:13 -05:00
Brian Grinstead
5c2e8e83f2 Be clear in ports/cef/README.md about using build-cef 2016-06-20 14:46:23 -07:00
Matt Brubeck
25a19343b3 Remove REPAINT damage in Fragment::build_display_list
Previously, the code that called this function was responsible for this.
Some code paths neglected to do it.  This moves the damage removal to one
central location.
2016-06-20 13:39:36 -07:00
bors-servo
09a39af1c1 Auto merge of #11785 - connorimes:update-hbs-0.3.0, r=metajack
Update heartbeats-simple to 0.3.0

Updated heartbeats-simple dependency for native changes:
-Collapse libraries into one.
-Remove overriding of some default CMake behavior.
-Windows compatibility with compiler flags, locking, and sleeping in example (thanks Jack Moffitt and Vladimir Vukicevic).

---
<!-- 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 just a dependency update

<!-- 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/11785)
<!-- Reviewable:end -->
2016-06-20 15:28:22 -05:00
Matt Brubeck
8f7cfb1b06 Remove unnecessary mut in TableFlow 2016-06-20 13:19:42 -07:00
bors-servo
6166d8e74f Auto merge of #11544 - jdm:privatebrowsing, r=asajeffrey
Implement private browsing for mozbrowser

<!-- Please describe your changes on the following line: -->
Support the `mozprivatebrowsing` attribute on mozbrowser iframes. This separates the non-private and private sessions in terms of cookies, HSTS lists, cached HTTP credentials, HTTP connection pools, and web storage. The private session is shared between all private mozbrowsers, and lasts until shutdown.

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

<!-- 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/11544)
<!-- Reviewable:end -->
2016-06-20 14:32:17 -05:00
Ms2ger
6528bee84f Introduce a layout_thread crate; drop the dependency of layout on script. 2016-06-20 21:23:44 +02:00
Ms2ger
7414edab05 Move DISPLAY_PORT_SIZE_FACTOR to block.rs. 2016-06-20 21:23:43 +02:00
Ms2ger
55a93107ce Move LayoutThreadData to query.rs. 2016-06-20 21:23:42 +02:00
Sagar Muchhal
7e2b4d163b Propagate privacy information of iframes to corresponding pipelines. Make iframes of differing privacy values be considered cross-origin.
Make the constellation hand out separate private and public channels for the pipeline content to communicate with the resource thread as necessary.
2016-06-20 14:55:01 -04:00
bors-servo
ee8c5c5a67 Auto merge of #11754 - Ms2ger:wrapper-traits-prep2, r=nox
Move ServoLayoutNode and related structs to script.

<!-- 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/11754)
<!-- Reviewable:end -->
2016-06-20 12:54:20 -05:00
Ms2ger
b56821a01f Move CSSErrorReporter to script_layout_interface. 2016-06-20 19:08:13 +02:00
Ms2ger
9e2e0ff98c Move the remainder of layout_interface into script_layout_interface. 2016-06-20 19:08:12 +02:00
Ms2ger
2c50318ee7 Move is_image_data to script_layout_interface. 2016-06-20 19:08:11 +02:00
Ms2ger
65b93c20b7 Remove the layout_wrapper re-exports from layout::wrapper. 2016-06-20 19:08:10 +02:00
Ms2ger
0c506cf1df Remove the wrapper::ServoThreadSafeLayoutNode re-export. 2016-06-20 19:08:09 +02:00
Ms2ger
7bbabf2766 Remove unused re-exports from layout_interface. 2016-06-20 19:08:08 +02:00
Ms2ger
86bfd2cc9f Move LayoutRPC to script_layout_interface. 2016-06-20 19:08:07 +02:00
Ms2ger
68d603a6d0 Move TrustedNodeAddress to script_layout_interface. 2016-06-20 19:08:06 +02:00
Ms2ger
0616a60fd9 Move ServoLayoutNode and related structs to script. 2016-06-20 19:08:05 +02:00
Ms2ger
0c726cfe6b Make RecalcStyleAndConstructFlows generic over the LayoutNode implementation. 2016-06-20 19:08:04 +02:00
Ms2ger
a8bb3d8d22 Make ServoLayoutNode::debug_id() less convoluted. 2016-06-20 19:08:03 +02:00