Commit Graph

18 Commits

Author SHA1 Message Date
Andrew Shu
177dc05ce7 servo: Merge #11569 - compositing: Remove CompositorThread struct (from talklittle:remove_struct_10261); r=metajack
<!-- Please describe your changes on the following line: -->
Remove `CompositorThread` struct, since it wraps only `IOCompositor`. Use `IOCompositor` directly.

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

<!-- Either: -->
- [ ] There are tests for these changes OR
- [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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 6c5f5d35f56f75e5a235836c042a55b67da553d6
2016-06-03 02:44:07 -05:00
Kyle Headley
50159e7ca3 servo: Merge #11443 - Remove CompositorEventListener trait (from kyleheadley:remove_trait_11339); r=asajeffrey
<!-- 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 #11339 (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [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. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: c641ec97f02bf03a97f3562b9d138b14ebe1406c
2016-06-01 14:06:41 -05:00
Ms2ger
3c417f7fd7 servo: Merge #11410 - Remove the script listener thread (from Ms2ger:script-listener-thread); 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 --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 refactoring

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: 1640ade0b3f703b54c2c2285271d44a037f7eabc
2016-05-25 06:10:17 -05:00
Ms2ger
fab379648f servo: Merge #11337 - Don't block the script listener thread on window.close() (from Ms2ger:compositor-exit-wait); r=pcwalton
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 no tangible effect

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

This does not appear to have any effect. I believe this has been the case
since e84106535175211526729e532058a7514a0de372, when the helper thread was
introduced.

It was added in a7ef1cd35e9347a285f245041db4eb94047f4ab0, where it blocked the
script thread rather than this helper thread.

Source-Repo: https://github.com/servo/servo
Source-Revision: 220bdfec2e869035127e872e12d303aefb545579
2016-05-25 01:03:38 -05:00
Ms2ger
26ae32381e servo: Merge #11364 - Move CompositorMsg to script_traits (from Ms2ger:CompositorMsg); 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 --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 refactoring

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: cd1396fa9ae72bebf13115ed0d752fb21ce0df19
2016-05-24 06:48:46 -07:00
Ms2ger
d7fd10831e servo: Merge #11334 - Remove pub uses from compositor_thread.rs (from Ms2ger:pub-use-compositor_thread); r=Manishearth
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 refactoring

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: 208337976d0b913e00fe9c090c6868027092a0a1
2016-05-23 08:17:38 -07:00
Ms2ger
0394c65700 servo: Merge #11243 - Move constellation into its own crate (from Ms2ger:constellation); 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 --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 refactoring

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: 872565bb4bd2883c6fe926da74e3b3e2b74e6d34
2016-05-18 02:11:46 -07:00
Fabrice Desré
9b3ea75b7f servo: Merge #10842 - Webrender no nativewindow (from fabricedesre:webrender-no-nativewindow); r=Manishearth
@glennw this fixed the panic when using webrender and no native display is available.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5ef355cf439f410f249f0565623eb439afd59456
2016-04-25 19:11:15 -07:00
Zhen Zhang
96985a9d7a servo: Merge #9968 - Implement scroll, scrollLeft, scrollTop and friends, addressing issue #9650 (from izgzhen:scroll); r=asajeffrey
This is a work in progress to solve https://github.com/servo/servo/issues/9650. Thanks a lot for helping the review.

- [x] scroll
- [x] scrollTo
- [x] scrollBy
- [x] scrollTop (setter and getter)
- [x] scrollLeft (setter and getter)

The setters will be implemented in another PR after this is merged.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8d988f20c12e0a5267e79650a90310951c66ca77
2016-04-20 18:10:26 +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
4e4d53e567 servo: Merge #9663 - compositing: Stop compositing unnecessarily after each animation frame (from pcwalton:browser-html-jank-fix); r=glennw
Instead, schedule a delayed composite after each frame of an animation.

The previous code would cause jank, because the following sequence
frequently occurred:

1. The page uses `requestAnimationFrame()` to request a frame.

2. The compositor receives the message, schedules a composite,
dispatches the rAF message to the script thread, composites, and goes to
sleep waiting for vblank (frame 1).

3. The script makes a change and sends it through the pipeline.
Eventually it gets painted and is sent to the compositor, but the
compositor is sleeping.

4. The compositor wakes up, sees the new painted content, page flips,
and goes to sleep (frame 2). Repeat from step 1.

The problem is that we have two composition frames, not just one. This
halves Web apps' framerate!

This commit fixes the problem by scheduling the composite in step 2 to
12 ms in the future. We already have this delayed-composition
functionality in the form of the scrolling timer, which I repurposed and
renamed to the "delayed composition timer" for this task. This change
gives the page 12 ms to prepare the frame, which seems to usually be
enough, especially with WebRender.

Note that simply removing the scheduled composite after rAF is not the
correct solution. If this is done, then pages that call rAF and don't
modify the page won't receive future rAFs, since the compositor will be
sleeping and won't be notified of vblank.

Fixes a bunch of jank in browser.html. The remaining jank seems to be a
problem with browser.html itself.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 9d47b344d9d0cf6faa3430bb32bdb4ba3eb11cf7
2016-02-25 03:26:02 +05:00
Glenn Watson
3b05a50ca8 servo: Merge #9589 - Add WebRender integration to Servo (from glennw:webrender); r=pcwalton
WebRender is an experimental GPU accelerated rendering backend for Servo.

The WebRender backend can be specified by running Servo with the -w option (otherwise the default rendering backend will be used).

WebRender has many bugs, and missing features - but it is usable to browse most websites - please report any WebRender specific rendering bugs you encounter!

Source-Repo: https://github.com/servo/servo
Source-Revision: ab07b06823ea9748a6091aee2281495f86f00bce
2016-02-19 00:24:06 +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
Joshua Holmer
b1044557fd servo: Merge #9295 - Move AnimationState to script_traits (from shssoichiro:move-animationstate); r=KiChjang
Resolves #9223

Source-Repo: https://github.com/servo/servo
Source-Revision: b26c7bd7ea92bdbf7cdcaa0e3d826a880b9cd0ca
2016-01-14 06:00:05 +05:00
Maciej Skrzypkowski
eaf5e802e6 servo: Merge #9289 - Move FrameTreeId type to gfx_traits #9221 (from mskrzypkows:move_FrameTreeId); r=KiChjang
Fixes #9221.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3c6e16c9add63b421deae422cf98a65fabadb410
2016-01-14 01:36:47 +05:00
John DeSilva
375ff63a25 servo: Merge #9230 - Move Epoch to gfx_traits (from Aesthetikx:move_epoch_to_gfx_traits); r=KiChjang
Resolves #9222. Moved Epoch from components/msg/compositor_msg to
components/gfx_traits/lib. Updated use statements to reflect the move.

Source-Repo: https://github.com/servo/servo
Source-Revision: e89dd05a169aa16267bdb2dbfe5bca01ad6cfe84
2016-01-11 08:49:23 +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