Commit Graph

74 Commits

Author SHA1 Message Date
Dzmitry Malyshau
383313b6ed servo: Merge #17908 - WR multi-document update - try 2 (from kvark:wr); r=emilio
<!-- Please describe your changes on the following line: -->
Combines #17892 with the patch to detach style_traits from webrender_api

---
<!-- 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
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix  #17907

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

<!-- 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: e5527362f761ad082ca37a033bf5c3f8f196bcfb
2017-07-29 07:38:23 -05:00
Wes Kocher
4ec19a5a45 Backed out changeset c424ad1c5f94 for build failures a=backout CLOSED TREE
MozReview-Commit-ID: 2wv9vOLQSHp
2017-07-28 16:20:27 -07:00
Dzmitry Malyshau
51b7ea167f servo: Merge #17892 - WR multi-document update (from kvark:wr); r=glennw
<!-- Please describe your changes on the following line: -->
The PR updates WR version to support multiple documents (https://github.com/servo/webrender/pull/1509) but doesn't take advantage of this new feature yet.
It also makes Servo to use `DevicePixel` from WR instead of rolling out another one.

---
<!-- 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
- [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 _____ no extra 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 12a49dc0be8a8acd12440dd7191b349ca17de7c8
2017-07-28 13:26:52 -05:00
Alan Jeffrey
c296f05349 servo: Merge #17499 - Fixed scaling artefacts in paint worklets caused by zoom and hidpi (from asajeffrey:script-paint-worklets-zoom); r=glennw
<!-- Please describe your changes on the following line: -->

This PR renders paint worklet canvases at the device pixel resolution, rather than the CSS pixel resolution.

It's a dependent PR, building on #17239, #17326 and #17364.

---
<!-- 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 #17454
- [X] These changes do not require tests because we don't run reftests with zoom enabled

<!-- 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: 9fcbeb3ca2ea0d11d4787c649e82918f7672694d
2017-07-20 17:09:06 -07:00
Paul Rouget
a0cc71347a servo: Merge #17684 - allow_navigation: use channel to send response (from paulrouget:fix_allow_navigation); r=paulrouget
From the embedder perspective, this makes things easier in term of synchronicity.

---
<!-- 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: 495faf3201141980acbf16c186252fa96d1cc3ea
2017-07-16 23:58:48 -07:00
Paul Rouget
0d88825a33 servo: Merge #17726 - Remove WindowNavigateMsg (from paulrouget:rm_WindowNavigateMsg); r=jdm
Two reasons:

- We want to be able to jump further in history from the embedder.
- We don't want to have an extra translation step in the compositor, where `WindowNavigateMsg` is translated to `TraversalDirection`

---
<!-- 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: 2913d65b755d2ebc12f89f8a5734b823d77f8b50
2017-07-14 07:16:18 -07:00
Paul Rouget
249f9faa5e servo: Merge #17685 - remove no-op InitializeCompositing message (from paulrouget:rm_InitializeCompositing); r=jdm
I think this is no-op.

---
<!-- 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: 43e2720f86ddb710843724969a6b3e1892a01829
2017-07-13 07:46:32 -07:00
Martin Robinson
7b0a6b5e35 servo: Merge #17694 - Upgrade to the latest version of WebRender (from glennw:webrender-update); r=glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: 173181a491f18a292ea80acbc25dd561e6e678d8
2017-07-12 21:52:27 -07:00
Tremoneck
8b8c897f8d servo: Merge #17652 - Move Ctrl-F12 keybindings outside of libservo (from Tremoneck:debug_key_mover); r=paulrouget
<!-- Please describe your changes on the following line: -->

Creates a new WindowEvent called ToggleProfiller, when this Event is queued the profiler is toggled.
When Crtl + F12 are pressed the Event is queued.

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

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

Source-Repo: https://github.com/servo/servo
Source-Revision: ee95bda3bff01d4ca0e1987a0355d01238d60cf6
2017-07-11 01:17:20 -07:00
Glenn Watson
86896c26ce servo: Merge #17398 - Improve decisions in compositor over when to draw a frame (from glennw:opt-composite); r=jdm
This patch fixes a couple of issues in the compositor:

1) Remove the delayed composition code. Previously, this would schedule
   a composite for 12ms in the future. This doesn't really make any sense
   with WR. There's no point in doing a composite unless WR has provided
   a new frame to be drawn. This fixes issues in several benchmarks where
   we were doing multiple composite / renders per rAF, which is a waste
   of CPU time. This *does* make the framerate slower in some cases (such
   as a slow rAF callback) but it's more correct - otherwise we were just
   compositing the same frame multiple times for no real benefit.

2) Inform the window of the current animation state of the compositor.
   Specifically, if an animation (or rAF) is currently active, the
   window system switches to use event polling, and does not block on
   the OS-level event loop. In the case of active animation, we just
   assume that we want to be running as the vsync interval and not
   blocking. This means the compositor thread only sleeps on vsync
   during animation, which reduces OS scheduling and results in much
   smoother animation.

Source-Repo: https://github.com/servo/servo
Source-Revision: 819a40bfb0fd2e1f4832fa3d773c266e9179ae21
2017-06-21 07:47:53 -07:00
Nicolas Silva
6e99a9e0a6 servo: Merge #17184 - Bump euclid to 0.14.x (from nical:euclid-bump); r=SimonSapin
- [x] `./mach build -d` does not report any errors (kinda, need webrender published and Cargo.toml fixed up)
- [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 is a refactoring in which the difference is mostly a compile-time/strong-typing thing with no change to the logic.

Source-Repo: https://github.com/servo/servo
Source-Revision: 18653f69581693a5bae1ce4e350e78bc16159b08
2017-06-14 07:25:05 -07:00
Gregory Terzian
168cec9a95 servo: Merge #17068 - Separate waking the event loop, from communicating with Compositor (from gterzian:remove_compositorproxy); r=asajeffrey
<!-- Please describe your changes on the following line: -->

@paulrouget first step of #15934, Glutin only for now, please take a look...

If this makes sense, I will also update the code for ports other than Glutin...

One question: one do I add the `warn!` macro to `servolib`? Also perhaps we would also want to add `box`, since I had to switch to using `Box::new`...

---
<!-- 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: 7e273d6c9b86d6ffbf216e84ae7326976888e5ef
2017-06-07 05:52:35 -07:00
Paul Rouget
224c3beb26 servo: Merge #17074 - remove no-op viewport code (from paulrouget:remove_viewport); 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 fix #16809 (github issue number if applicable).

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

<!-- 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: 86dcd5366f18ab01fa309c976a895effdd959fa8
2017-05-29 07:13:58 -05:00
Paul Rouget
d1044ecd05 servo: Merge #15794 - Notify embedder when history changes (from paulrouget:head_parsed_url); r=asajeffrey
Notify embedder when history changes

`WindowMethods::set_page_url` is only called when the embedder set the URL. It is not called when the page url is updated. I believe that instead we should just pass the URL to `head_parsed`.

---
<!-- 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 #15439 #15643 and #15642 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because I'm not sure how to test that

<!-- 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: dc594face82acc68d4de43e47026741c84153469
2017-04-25 14:14:31 -05:00
Glenn Watson
55e9f01078 servo: Merge #16073 - Update WR (gl trait, scroll roots) (from glennw:update-wr-glfns); r=mrobinson
Source-Repo: https://github.com/servo/servo
Source-Revision: c99289a928b30c874da2aa4d8aa869593bbb5e14
2017-03-23 03:43:49 -07:00
Paul Rouget
43008c33b4 servo: Merge #15795 - Let the embedder decide if servo should follow a link or not (from paulrouget:follow-link); r=asajeffrey
We want to give a chance to the embedder to handle a link itself.
Is it a problem that this will add a round trip to the main thread every time `load_url` is called?

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because I'm not sure how to test that

<!-- 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: 808ffffd1e8dab9ca6340a981b797434b34e2e36
2017-03-14 07:22:23 -07:00
Paul Rouget
ff38c40321 servo: Merge #15831 - introduce frame_size and window_rect (from paulrouget:winParams); r=glennw
follow up of https://github.com/servo/webrender/pull/951

---
<!-- 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 webrender/issues/833 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because I don't know how to test that feature

<!-- 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: 005f1b6326f24f0e42a01a76ec3c3de70bfaa533
2017-03-06 20:03:42 -08:00
Glenn Watson
681453b5e9 servo: Merge #15680 - Rename ScreenPx to DeviceIndependentPixel (from glennw:zoom-wip); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 03893e25cc00488dea540ce53865f7f696f8f262
2017-02-21 20:45:20 -08:00
Sam
252e8dcd12 servo: Merge #14141 - Implement home end key scrolling (from samuknet:home-end-key-scroll2); r=glennw
<!-- Please describe your changes on the following line: -->
* Refactor all scroll related code to use a new `ScrollLocation` struct which can either be a `delta` (as before) or a `Start` or `End` request, to represent the desire to scroll to the start and end of the page.
Effectively, everywhere a delta was used, there is now a `ScrollLocation` struct instead.

* Add key press listeners for HOME and END keys so as to cause a scroll to be queued with `ScrollLocation::Start` (in HOME case) or `ScrollLocation::End` (in END case).

* These changes depend on added support for the new `ScrollLocation` in webrender and webrender_traits. See https://github.com/servo/webrender/pull/540.

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

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

<!-- 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: 1706ffd6e5a02f26f69970b3b41536a8a85ef6fe
2017-01-23 07:26:00 -08:00
Ms2ger
b8100c8ddf servo: Merge #14961 - Move DevicePixel to script_traits (from Ms2ger:DevicePixel); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 5d3847dddc9bb7907abfa5d38a7927d6c656fbc1
2017-01-11 11:31:15 -08:00
Alan Jeffrey
965a687125 servo: Merge #14592 - Remove the util crate (from asajeffrey:util-goodbye); r=mbrubeck
<!-- Please describe your changes on the following line: -->

This PR removes the `util` crate.

* Replaced the `spawn_named` and `clamp` functions by appropriate uses of `std:🧵:Builder::spawn`, `std::cmp::min` and `std::cmp::max`.
* Moved `opts`, `prefs` and `resource_files` into a new `config` crate.
* Moved `remutex` and `geometry` into their own crates.

---
<!-- 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 they are refactorings

<!-- 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: 4eb653817f87e5fb47de34356f558eb76ecbca9f
2016-12-14 16:48:42 -08:00
Jansen Jan
b54cd9aa0a servo: Merge #13489 - Add support for fullscreen #10102 (from farodin91:fullscreen); r=jdm
<!-- Please describe your changes on the following line: -->

I'm start working on fullscreen support.
@jdm Should be the entry_point in ScriptReflow a Option if fullscreen is enabled or point on the entry_node? For example the RootNode.

---

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

<!-- Either: -->
- [x] 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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 8b69e73594647319e95bd0fd36c2addabcee1e5d
2016-12-09 09:52:34 -08:00
Emilio Cobos Álvarez
592972be51 servo: Merge #14246 - Urlmageddon (from emilio:servo-url); r=SimonSapin
<!-- Please describe your changes on the following line: -->

Still needs a bunch of code in net to be converted in order to get more
advantage of this for images and stuff, but meanwhile this should help quite a
bit with #13778.

Still wanted to get this in.

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 22aebdf5d41a3509cd6515ccf5edcdf33715a76d
2016-11-17 15:34:47 -06:00
Glenn Watson
89fec93361 servo: Merge #13711 - Remove old rendering backend (from glennw:remove-old-renderer); r=larsbergstrom
This removes paint threads, rust-layers dependency, and changes
optional webrender types to be required.

The use_webrender option has been removed, however I've left
the "-w" command line option in place for now so that wpt
runner can continue to pass that. Once it's removed from there
we can also remove the -w option.

Once this stage is complete, it should be fine to change the
display list building code to generate webrender display
lists directly and avoid the conversion step.

Source-Repo: https://github.com/servo/servo
Source-Revision: f96718d03da969510dc992699cb6f25c2e21ae1e
2016-10-17 19:22:20 -05:00
UK992
a6ebcb8483 servo: Merge #13205 - Tidy: Fix ordering use statements with braces (from UK992:tidy-sort); r=Wafflespeanut
This hack fixes https://github.com/servo/servo/issues/7412 and matches behavior with rustfmt.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3117787fd2a8b7748cfde1e9b8c5be3c00f2c599
2016-09-08 22:19:19 -05:00
Martin Robinson
4902811eaf servo: Merge #12817 - Update to euclid 0.8 (from servo:euclid); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 5b915c403d2e96bd2917e7df4f2a58a6668a0c0e
2016-08-11 20:12:29 -05:00
Josh Matthews
305ec755df servo: Merge #11950 - Support non-QWERTY keyboards (from jdm:keylayout2); r=emilio
Using the ReceivedCharacter event from glutin, we can obtain the actual key characters that the user is pressing and releasing. This gets passed to the script thread along with the physical key data, since KeyboardEvent needs both pieces of information, where they get merged into a single logical key that gets processed by clients like TextInput without any special changes.

Tested by switching my macbook keyboard to dvorak and looking at the output of keypress/keyup/keydown event listeners, as well as playing with tests/html/textarea.html. Non-content keybindings like reload work as expected, too - the remapped keybinding triggers the reload action.

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #4144
- [X] These changes do not require tests because I can't think of a way to test remapped keyboard input

Fixes  #11991.

Source-Repo: https://github.com/servo/servo
Source-Revision: 68fb9ebc413f9cfc1ad4ca578d904c164836db74
2016-07-06 02:51:50 -07:00
mrmiywj
0e207e74f6 servo: Merge #11735 - add reload keyboard shortcut (from mrmiywj:reload-page-shortcut); 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 #11686  (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because this cannot be automated tested.

<!-- 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: eeed5b6ec26f7d78a938abb2d4b6a1cce8bf2472
2016-06-23 10:58:54 -05:00
Jack Moffitt
b668a7f857 servo: Merge #11314 - Make Servo DPI aware on Windows (from metajack:window-hi-dpi); r=mbrubeck
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 --faster` 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 testing would be overly difficult

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

This implements system level DPI awareness for Windows. It has three
parts:

1. Add a application manifest which is copied alongside servo.exe during
build that declares our DPI awareness level. This is needed otherwise
DPI queries will return 96dpi and our application will be upscaled on
high DPI displays.

2. Rename hidpi_factor to avoid confusion with Glutin's hidpi_factor
which does something else.

3. Correctly convert windows sizes on window creation for
Windows. Unlike OS X, Windows uses device pixels for window creation.

Source-Repo: https://github.com/servo/servo
Source-Revision: 63bbc13fffeaa14f15ff9270f7d6355fab4d3d56
2016-05-20 22:41:07 -07:00
Paul Rouget
7a4d0e7568 servo: Merge #9811 - forcetouch events (from paulrouget:forceTouch); r=mbrubeck
https://developer.apple.com/library/mac/documentation/AppleApplications/Conceptual/SafariJSProgTopics/RespondingtoForceTouchEventsfromJavaScript.html

Not sure how we want to land that yet. Maybe reproduce the webkit events (as in this PR), or as touch/mousemouse events.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0ff8adb09778402e88fe0d0ad92f4b399ca8ca01
2016-04-05 20:37:05 +05:00
Michael Howell
f72d7780fc servo: Merge #8641 - No more headless compositor. Just the normal one (from notriddle:no_headless); r=glennw
Fixes #8573

Source-Repo: https://github.com/servo/servo
Source-Revision: aac2da75f40f4c55a4b450b6d9d134429fcf741e
2016-03-29 12:12:01 +05:00
Patrick Walton
47cd9725fa servo: Merge #10026 - compositing: In borderless mode, don't show the window until the page has loaded (from pcwalton:no-browserhtml-flash); r=metajack
This avoids a flash of unstyled content, which looks especially bad in
browser.html since unstyled content is white and browser.html has a
transparent background.

Closes #9996.

r? @metajack
cc @jdm since you had some concerns

Source-Repo: https://github.com/servo/servo
Source-Revision: 84d3ba075977c55d226bd6b70d695a292b2329c9
2016-03-16 23:16:59 +05:00
Patrick Walton
5f56102d3c servo: Merge #9851 - Implement support for overscrolling on the Mac (from pcwalton:overscroll); r=glennw
Requires tomaka/glutin#734, servo/webrender_traits#14, and
servo/webrender#217.

r? whoever (waiting on the landing of the above)

Source-Repo: https://github.com/servo/servo
Source-Revision: 881d6b4220f2391a22d4ea73b79415071626501f
2016-03-14 23:48:05 +05:00
Anthony Ramine
cca9a4d4c7 servo: Merge #9636 - Move util::cursor to style_traits (from nox:mv-cursor); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: f0d4c03bd9c9e181aa1225aec978c2f539e9aeb0
2016-02-16 16:20:20 +05:00
Darin Minamoto
c7566105d5 servo: Merge #9263 - Moved MouseButton from msg to script_traits (from DarinM223:move_mousebutton); r=KiChjang
Fixes #9250

Source-Repo: https://github.com/servo/servo
Source-Revision: 9118b64b4b610a95f48a88a198baac4eb31a04a0
2016-01-16 19:04:51 +05:00
rohan.prinja
c098aafd20 servo: Merge #9201 - task -> thread (from ajnirp:8512-task-thread); r=jdm
for #8512

Source-Repo: https://github.com/servo/servo
Source-Revision: d3e2f94f2024f4735f836588ed11303a0abafdf8
2016-01-10 15:19:04 +05:00
Matt Brubeck
ea7823d554 servo: Merge #8785 - Add slow path for hit testing of iframe behind positioned content layer (from mbrubeck:fixed-hit-test); r=pcwalton
Fixes browser.html blocker #8759. r? @pcwalton

This adds a slow path for cases where the compositor's layer-based hit testing is incorrect.  If the script task discovers that a mouse event should have been dispatched to an iframe, it bounces the event back to the constellation to be forwarded to the correct pipeline.

This isn't terribly slow (on the slow path, it adds one extra round-trip message between script and constellation), but if we want to optimize this better we could instead replace the compositor's layer hit testing with display list hit testing in the paint task.  This would be a more complicated change that I think we should save for a follow-up.

This only fixes mouse input for now.  A basically-identical change will be needed for touch-screen input, whether we stick with this approach or switch to the paint task.

Source-Repo: https://github.com/servo/servo
Source-Revision: bc62b5aadb62267582fbd65daa28438ce6c6ac9c
2015-12-04 02:24:22 +05:00
Matt Brubeck
f40955a353 servo: Merge #8232 - Correct event dispatching for multiple simultaneous touch points (from mbrubeck:glutin-touch); r=glennw
Instead of just converting the mouse into a single "touch" input, Servo can now listen for multi-touch events from Glutin, maintain a list of active touch points, and dispatch events for all of them.

r? @glennw (for the compositor changes) and @jdm (for the DOM changes)

Source-Repo: https://github.com/servo/servo
Source-Revision: 3fdaa6e3f32f6996c416e75119177b98d404adb2
2015-11-03 22:15:21 +05:00
meh
25a0a0463b servo: Merge #7552 - Add viewport configuration support to the compositor (from meh:viewport); r=glennw
This allows me to do stuff like this.

![this](https://cloud.githubusercontent.com/assets/40204/9701150/58d593ae-541d-11e5-9f57-8d379f5c9ceb.png)

Those are two compositors rendered on the same OpenGL context, I need this so I can split windows and render them without getting mad with textures and framebuffers, it will also allow me to render the proper parts of the chrome as different web pages without involving dozens of framebuffers and textures.

If I recall correctly I did talk to @glennw about this on IRC some time ago.

This pull request requires https://github.com/servo/gleam/pull/39 to be merged first tho.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8db8a86ab1e943b5102a05d6d31800579fdb7875
2015-10-14 10:29:45 -06:00
Ravi Shankar
62e8ea2732 servo: Merge #7698 - sorted the declarations in various files (from Wafflespeanut:sorting); r=frewsxcv
This is a direct extract from my abandoned PR for a lint (#7546), along with some rather clumsy modifications (only on `components/script/dom/mod.rs` and `components/style/lib.rs`), because I had to sort some of the files again to make peace with tidy, which hasn't been educated about sorting yet!

Source-Repo: https://github.com/servo/servo
Source-Revision: a7208869f2903e36f9b2f540b55b50283d7df466
2015-09-23 15:02:56 -06:00
Brandon Fairchild
704178a0dd servo: Merge #7662 - Check for multiple import blocks separated by whitespace (from nerith:import); r=frewsxcv
Fixes #7381.

Source-Repo: https://github.com/servo/servo
Source-Revision: a0d3c9223f09757124b1520c4f17e94fa8bbe249
2015-09-19 13:34:51 -06:00
farodin91
1184807bca servo: Merge #7500 - Implement viewport functions for window #1718 (from farodin91:viewport); r=jdm
@jdm r?
closes #6875

Source-Repo: https://github.com/servo/servo
Source-Revision: a844c0b0e8ca26e3bd76a42616e406fad8f7e5a5
2015-09-01 21:31:25 -06:00
Johann Tuffe
25ce9ab4be servo: Merge #7265 - Add alphabetical order check for use statements (from tafia:tidy-use); r=Ms2ger
close #7112

Source-Repo: https://github.com/servo/servo
Source-Revision: a5fbb2f2a6fa79755f975feff2435abb6a5dd0e9
2015-08-20 07:43:56 -06:00
Josh Matthews
d1f1ba555f servo: Merge #7203 - Add automated style nit checks to test-tidy (from jdm:style); r=Ms2ger
Expands on the work by @wilmoz and cleans up the existing errors. Closes #7180. Closes #7111.

Source-Repo: https://github.com/servo/servo
Source-Revision: e74825f9fde8e222f4ba9bb24b2c2a3864c73e5f
2015-08-16 08:37:40 -06:00
Connor Imes
d79eb1502e servo: Merge #7053 - Move net_error_list from net to net_traits. Fixes #7050 (from connorimes:move-net-error-list); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 44c4bb00c1cb8645ee2fc303848a5136108e594f
2015-08-07 01:55:20 -06:00
Bruno de Oliveira Abinader
e5a182f113 servo: Merge #6181 - Implement Msg::Status with serialized url upon mouseover (from brunoabinader:mouseover-status); r=larsbergstrom
Credits for Mike Blumenkrantz (@zmike), I just rebased against trunk and
fixed the url serialization.

Fixes #6178.

Source-Repo: https://github.com/servo/servo
Source-Revision: 82e476fd07564f2822a5af1f397751027ddf7258
2015-07-30 08:45:31 -06:00
Martin Robinson
633ad595be servo: Merge #6525 - Update to latest rust-layers (from mrobinson:simplify-display); r=glennw
The compositing context, painting context and display metadata have all
been collapsed into a single NativeDisplay class.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4674afe846df6720882da28cbd2c3087c17d0b22
2015-06-30 17:02:26 -06:00
Jesse Ruderman
12dff28fc2 servo: Merge #6495 - Add keyboard shortcuts to glutin browser (from jruderman:add_keyboard_shortcuts_2); r=metajack
Supersedes #6488. Changes since then:

* Fix a few places where we needed cfg(feature = "window") in order to compile without the feature.
* Zoom-in shortcut now works both with and without shift. (Uses a guard because I couldn't think of another way to do it without CTFE.)
* Back/forward shortcuts now correctly use Alt on non-Mac platforms.
* The back/forward shortcuts that use square brackets are now non-Windows, rather than Mac-only. This roughly matches XP_UNIX: http://hg.mozilla.org/mozilla-central/file/d4c4ce7f060c/browser/base/content/browser-sets.inc#l354

Source-Repo: https://github.com/servo/servo
Source-Revision: 420cf4c8dcbe4bba822bb6980b301416d9b5526e
2015-06-29 11:44:03 -06:00
ecoal95
87b4c78bcf servo: Merge #6423 - Use euclid from crates.io (from emilio:euclid); r=glennw
Sorry for not doing it yesterday, I couldn't.

cc @metajack @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 4ebb95ccd8e034007eacb447a054919ef4af2bf7
2015-06-18 20:50:22 -06:00
Mike Blumenkrantz
92f74c1837 servo: Merge #6219 - Favicon support: way more work than anyone expected or considered (from zmike:favicons_and_stringlOWWW-MY-HEAD); r=pcwalton
Getting these down to the embedding API level required that I redo the bindings generator again, so this is more commits than anticipated.

@mbrubeck @Manishearth @pcwalton but NOT @larsbergstrom so don't even look at this.

Source-Repo: https://github.com/servo/servo
Source-Revision: b0f3417cffb211d547853b8069e7a444a1d9964f
2015-06-03 00:27:41 -05:00