Commit Graph

109 Commits

Author SHA1 Message Date
Matthew Kuo
e672faf985 servo: Merge #9363 - Remove remaining unused imports (from mattkuo:clean-imports); r=KiChjang
Closes #9361

Source-Repo: https://github.com/servo/servo
Source-Revision: 6a38d55ceafca08d6ce83c8cbfa5f55835f9e141
2016-01-18 10:35:06 +05:01
Emilio Cobos Álvarez
643caf9158 servo: Merge #9107 - webgl: Track the current program, implement some uniform functions, and nits (from emilio:webgl-uniforms-and-nits); r=simartin
Was done while implementing sequence arguments.

Depends on #9056.

Source-Repo: https://github.com/servo/servo
Source-Revision: c13e84010d1dd33c5532cdfa2937dddd4db4dd26
2016-01-13 21:45:59 +05:01
Ms2ger
5418f19918 servo: Merge #9275 - Remove some unused extern crates (from Ms2ger:extern-crate); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: 0b5dda3e9c38f6cd4ec9b82f023bf3698addc65f
2016-01-13 20:47:35 +05:01
Josh Leverette
57e4f9695b servo: Merge #9240 - Refactor WebGLPaintTask to prevent creating extra IPC channels #9228 (from coder543:Refactoring); r=ecoal95
Closes #9228

I think this code will actually do what is desired now. I had to rebase off of master since WebGLPaintTask was renamed to WebGLPaintThread in a commit since last night.

I'm sorry this has been so much trouble so far. I'm still learning how things are done around here. I didn't even think about trailing whitespace, but now I know about the test-tidy tool.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6b1e73c1c0cf3fe2c935df0de667145bc6130461
2016-01-12 17:04:32 +05:01
rohan.prinja
d440ee6a41 servo: Merge #9201 - task -> thread (from ajnirp:8512-task-thread); r=jdm
for #8512

Source-Repo: https://github.com/servo/servo
Source-Revision: d3e2f94f2024f4735f836588ed11303a0abafdf8

--HG--
rename : servo/components/canvas/canvas_paint_task.rs => servo/components/canvas/canvas_paint_thread.rs
rename : servo/components/canvas/webgl_paint_task.rs => servo/components/canvas/webgl_paint_thread.rs
rename : servo/components/compositing/compositor_task.rs => servo/components/compositing/compositor_thread.rs
rename : servo/components/gfx/font_cache_task.rs => servo/components/gfx/font_cache_thread.rs
rename : servo/components/gfx/paint_task.rs => servo/components/gfx/paint_thread.rs
rename : servo/components/layout/layout_task.rs => servo/components/layout/layout_thread.rs
rename : servo/components/net/image_cache_task.rs => servo/components/net/image_cache_thread.rs
rename : servo/components/net/resource_task.rs => servo/components/net/resource_thread.rs
rename : servo/components/net/storage_task.rs => servo/components/net/storage_thread.rs
rename : servo/components/net_traits/image_cache_task.rs => servo/components/net_traits/image_cache_thread.rs
rename : servo/components/net_traits/storage_task.rs => servo/components/net_traits/storage_thread.rs
rename : servo/components/script/script_task.rs => servo/components/script/script_thread.rs
rename : servo/components/util/task.rs => servo/components/util/thread.rs
rename : servo/tests/unit/gfx/font_cache_task.rs => servo/tests/unit/gfx/font_cache_thread.rs
rename : servo/tests/unit/net/resource_task.rs => servo/tests/unit/net/resource_thread.rs
rename : servo/tests/unit/util/task.rs => servo/tests/unit/util/thread.rs
2016-01-10 15:20:04 +05:01
Emilio Cobos Álvarez
88ab59b131 servo: Merge #9210 - webgl: Create the paint task object in the thread (from emilio:webgl-task-in-thread); r=jdm
This avoids problems like:
https://github.com/servo/servo/issues/9006#issuecomment-170007845

See that conversation for more details.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0002048ed9be66bd4132caf094e37d2c4587201f
2016-01-09 04:38:11 +05:01
Emilio Cobos Álvarez
59d74cdb1f servo: Merge #9044 - Update offscreen_gl_context (from emilio:offscreen-gl-up); r=jdm
cc: https://github.com/ecoal95/rust-offscreen-rendering-context/pull/46
Source-Repo: https://github.com/servo/servo
Source-Revision: da8952b7023a92b7a69bd4423905594f4baa8f29
2015-12-23 20:06:37 +05:01
David Zbarsky
b089820bd0 servo: Merge #8997 - Implement WebGL scissor method (from dzbarsky:scissor); r=dzbarsky
Source-Repo: https://github.com/servo/servo
Source-Revision: 1695c0ad27e4c9c062e26a5db154521e400ecbd9
2015-12-16 10:36:32 +05:01
David Zbarsky
fb2993ff72 servo: Merge #8761 - Implement some more WebGL functions (from dzbarsky:gl_functions); r=dzbarsky
r? @ecoal95

Source-Repo: https://github.com/servo/servo
Source-Revision: 89d9aad1e1e3cd93b12088f09aad1193e7298ba4
2015-12-14 07:56:20 +05:01
Tetsuharu OHZEKI
f225b3c342 servo: Merge #8937 - Fix some warnings (from saneyuki:warning); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 2977795e39989ca776f7e36169db2dc05294f74b
2015-12-11 22:23:47 +05:01
Tetsuharu OHZEKI
1541b677a4 servo: Merge #8922 - Fix warnings: Use Vec.extend_from_slice instead of Vec.push_all (from saneyuki:warning); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: d01233a7b417c87b18d31f10709ed83141887b94
2015-12-11 04:28:58 +05:01
Roman Klauke
f19fc89d4a servo: Merge #8920 - remove the "core" feature attribute from canvas (from romankl:core-feature); r=Ms2ger
The core feature is marked as stable and gives this nice warning:
```
servo/components/canvas_traits/lib.rs:7:12: 7:16 warning: this feature is stable. attribute no longer needed, #[warn(stable_features)] on by default
/servo/components/canvas_traits/lib.rs:7 #![feature(core)]
```
This commit removes the usage of this feature.

Source-Repo: https://github.com/servo/servo
Source-Revision: 996c0a60b81e7d7e0fbfea81a546771ea9327df6
2015-12-11 02:10:37 +05:01
David Zbarsky
dcbe691e75 servo: Merge #8740 - Implement IsPointInPath for Canvas (from dzbarsky:ispointinpath); r=frewsxcv
Source-Repo: https://github.com/servo/servo
Source-Revision: 98972d04342602610a7465de7b0639e2b9c1dcf3
2015-12-06 06:50:23 +05:01
Emilio Cobos Álvarez
e5c2fafa8f servo: Merge #8788 - webgl: Fix texturing (from emilio:fix-webgl-texturing); r=jdm
These two tiny changes were making WebGL textures not work.

It was not seen in our texturing test since it only used one texture,
we render to a texture by default, and that texture was bound to
`gl::TEXTURE_2D`.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2cfcc26d9e5cc732a7594f0c0d96d4174c6b0a8a
2015-12-04 21:43:26 +05:01
Simon Sapin
b2ea85ccbd servo: Merge #8800 - Fix warnings (from servo:warnings); r=metajack
Fixing unused attributes warnings required updating serde_macros
which required updating to rustc 1.6.0-nightly (a2866e387 2015-11-30)
which required updating some other dependencies.

Fix #8709.

Source-Repo: https://github.com/servo/servo
Source-Revision: 32b90cdb6ff8f24dfd93aa44c2bae9c4f15429e0
2015-12-04 05:08:38 +05:01
Simon Martin
09ba3087f9 servo: Merge #8712 - Issue #8462: Add support for BufferSubData, CompressedTexImage2D and CompressedSubTexImage2D and reenable individual webgl WPT tests (from simartin:issue_8462); r=ecoal95
Fixes https://github.com/servo/servo/issues/8462

Source-Repo: https://github.com/servo/servo
Source-Revision: 5ee6fe120d43506e263cb4482b3a468d967a8386
2015-12-04 00:38:14 +05:01
Simon Sapin
d4a1557a4b servo: Merge #8757 - Use skia and deps from crates.io (from servo:skia); r=mbrubeck
This makes the initial download for skia go from a 300 MB git repository to a 5 MB tarball. This should help with issues like #6132 and #7687.

Fix https://github.com/servo/skia/issues/70

This builds, but the at the moment causes a number of tidy errors for duplicated crates.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8b95d7b8d860ec4c0834192083361a9fb78ddbeb
2015-12-03 12:29:29 +05:01
Guillaume Gomez
732bf0a03c servo: Merge #8692 - Ensure crate are alphabetically sorted (from GuillaumeGomez:patch-1); r=Wafflespeanut
cc @nox

Source-Repo: https://github.com/servo/servo
Source-Revision: dbff1ab33636bc7d60a4c97b63f39b59985726ce
2015-11-28 19:05:11 +05:01
Patrick Walton
a2c55b5db1 servo: Merge #8660 - Update ipc-channel to pick up the improved error reporting (from pcwalton:ipc-channel-errors); r=larsbergstrom
Intended to help diagnose intermittent failures.

r? @jdm or @larsbergstrom (or whoever)

Source-Repo: https://github.com/servo/servo
Source-Revision: 13a96fcaf78c299beb2021d3ae9dae8d9e916762
2015-11-25 07:02:15 +05:01
Simon Sapin
003146d5d2 servo: Merge #8343 - Fix some custom properties bugs (from servo:custom-properties); r=mbrubeck
Fix #7767.

Source-Repo: https://github.com/servo/servo
Source-Revision: faf2f34772fe06396a7b8542b00f0566832bc7ef
2015-11-07 05:33:36 +05:01
Manish Goregaokar
0869f53e87 servo: Merge #8241 - Update euclid to 0.3 (from Manishearth:euclid_up); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 0d699a2b4419632e31b35352c518e2ef5ffcc9a3
2015-10-28 21:32:15 +05:01
Nathan Froyd
f9be87f294 servo: Merge #8086 - add (un)premultiply tables for canvas {Get,Put}ImageData operations (from froydnj:premultiply-tables); r=jdm
Pretty straightforward use of lookup tables to replace a bunch of expensive float operations.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9a34decec295563d3b4050bc53daad142450e0d5
2015-10-21 17:48:49 -06:00
Corey Farwell
7ef53c6ece servo: Merge #7987 - Fix issues found by rust-clippy (from frewsxcv:clippy); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: eb7039d04d4c83800ba9d92dc251222f79b83040
2015-10-12 18:33:30 -06:00
Patrick Walton
82da2292ff servo: Merge #7802 - Handle zero-sized source surfaces properly, and upgrade ipc-channel to incorporate the fix for zero-sized shmem on Mac (from pcwalton:zero-size-source-surfaces); r=mbrubeck
Depends on servo/rust-azure#201 and pcwalton/ipc-channel#10.

Closes #7422.

r? @mbrubeck (don't r+ until the upstream dependencies have landed)

cc @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: e2048d57c4c0602c5a6b82db8cb76e6c3e5467fa
2015-10-01 00:08:34 -06:00
Ravi Shankar
7d512d50d1 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
f7fb1e4b4a 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
Jinwoo Song
2a438e5141 servo: Merge #7605 - Implement "transform: skew()" (from nox:skew); r=mbrubeck
Thanks to @Jinwoo-Song for the original commit, which I just rebased and cleaned up. Fixes #6237.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6a12f00d6d392651bae10365b4c806f36d704b21
2015-09-16 06:31:48 -06:00
Mathieu Rheaume
fe567c36c0 servo: Merge #7559 - Remove 'get_*' on getters as per RFC 0344 on canevas, compositing, devtools, gfx, layout, net, profile, servo and webdriver_server (from ddrmanxbxfr:RFC-0344-Work); r=nox
Hi guys,

I just gave a big pass of RFC-0344 as per issue #6224 .

Pretty much renamed all the get_* fn that were used to fetch values.

I hope I didn't rename too much.

As said in the issue discussion, I didn't touch at the scripts folder so we keep the unsafe ones pretty explicit.

I've ran the whole pass of test, everything seems to be still working right :).

Please give feedback on this PR.

Thanks for looking into it.

Source-Repo: https://github.com/servo/servo
Source-Revision: b05f4aa3aa3085e65cb75433ae37bf272216d033
2015-09-12 18:29:56 -06:00
ecoal95
96038bef64 servo: Merge #7442 - Add WebGL shader validation and translation (from emilio:shader-validation); r=jdm
r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 79328c11e320ad10a19d64d280df2e292eaf2e03
2015-08-30 09:29:42 -06:00
ecoal95
d21c34c8ad servo: Merge #6770 - Add multiple WebGL calls and improve error detection (from emilio:webgl-again); r=jdm
Since it probably won't merge until multiprocess lands, I plan to use this PR to keep improving WebGL support until it can land.

Main TODOs are integration of tests, since it seems https://github.com/KhronosGroup/WebGL/issues/1105 is going nowhere, adding missing calls and proper painting via native surfaces instead of readback.

I can't resolve conflicts right now because of time but I will do it soon.

Source-Repo: https://github.com/servo/servo
Source-Revision: a109a333f1f95d4fc677b29e3613b2615514c080
2015-08-25 09:23:00 -06:00
Johann Tuffe
5c3a5a67f5 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
João Oliveira
f0a3f70810 servo: Merge #7208 - replace .len() == 0 with is_empty() (from jxs:master); r=Ms2ger
closes #7198

Source-Repo: https://github.com/servo/servo
Source-Revision: 85022a4c347dca3f5d28cec3010f7e9410217df4
2015-08-14 00:51:59 -06:00
David Zbarsky
4db3b420d2 servo: Merge #7092 - Clean up and fix PutImageData (from dzbarsky:putimagedata); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 6a8bc8528498c0cbb2e50567d765a989cde2d115
2015-08-09 07:00:56 -06:00
David Zbarsky
68cd6176d8 servo: Merge #6975 - Fix getImageData with sizes < 1 pixel (from dzbarsky:get-tiny); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: dbce4c5bd8ec005ba78ac8c2f8754bd137c87f25
2015-08-09 06:32:30 -06:00
David Zbarsky
61399bbdb5 servo: Merge #6989 - Respect the composition op when drawing images (from dzbarsky:compositing); r=metajack
Source-Repo: https://github.com/servo/servo
Source-Revision: b9dcd49778b8ff6d2aef0ac2420c3a30b80432c1
2015-08-05 22:57:20 -06:00
David Zbarsky
aa9a39b034 servo: Merge #6954 - Implement strokeRect with zero-width or zero-height rects (from dzbarsky:stroke_rect); r=glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: eecd9752093540220eb52308b8fb3ceba0939e3c
2015-08-04 16:38:57 -06:00
Patrick Walton
d4fd20dc7c servo: Merge #6616 - script: Make most of 2D canvas and WebGL run over IPC (from pcwalton:canvas-webgl-ipc); r=jdm
To actually make the multiprocess communication work, we'll need to
reroute the task creation to the pipeline or the compositor. But this
works as a first step.

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 1764267379a00b96a1df89f3917299a0c6fd325c
2015-07-25 01:50:31 -06:00
Patrick Walton
77a86e3023 servo: Merge #6705 - canvas: Move to shared memory for images and canvas backing stores (from pcwalton:image-cache-shmem); r=jdm
The idea here is to land this before making images and canvas IPC-safe,
because this will shake out bugs relating to the shared memory. There
are currently test timeouts that are preventing multiprocess images and
canvas from landing, and I believe those are due to the inefficiency of
sending large amounts of data in the unoptimized builds we test with. By
moving to shared memory, this should drastically reduce the number of
copies and `serde` serialization.

Under the hood, this uses Mach OOL messages on Mac and temporary
memory-mapped files on Linux.

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: ed1b6a3513e7546b580693f554a081bc0c7c478a
2015-07-24 17:14:59 -06:00
Bogdan Cuza
5e266ea18c servo: Merge #6648 - Make tidy check for "*" in toml files (from boghison:tidytoml); r=jdm
This checks every .toml file for an asterisk and prints an error if found.

Source-Repo: https://github.com/servo/servo
Source-Revision: 58e9bc6583b6ebbeb27e3b28a6b271ee48cd695a
2015-07-20 14:43:05 -06:00
Martin Robinson
f7a684b3a0 servo: Merge #6591 - Upgrade to rustc 1.3.0-dev (fddfd089b 2015-07-10) (from servo:rustup_2015-07-10); r=larsbergstrom
Depends on https://github.com/jgraham/webdriver-rust/pull/12.

Fixes #6020.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9af229b83095f2f8cfe7b61003b85ddf781f4ea7
2015-07-14 13:40:22 -06:00
ecoal95
4f37e0ba01 servo: Merge #6380 - Refactor WebGL implementation to move logic inside the DOM interfaces (from emilio:webgl-refactoring); r=jdm
This improves the encapsulation and consistency in our WebGL
implementation.

Also allows to implement new methods such as `getShaderSource()`.

It will also allow us to use `delete()` in the destructors of them (note
that we will probably want to keep track of them from the context before).

Some concerns:

**Trait method repetition**:
I'm aware that the traits `WebGL{Buffer,Renderbuffer,Framebuffer,Texture}Helpers` are basically the same, but `delete()` and `id()` methods are everywhere. I've thought something like:

```rust
pub trait WebGLIdentifiable {
    type WebGLId; // id is sometimes i32 (see WebGLUniformLocation)
    fn id(&self) -> Self::WebGLId;
}

pub trait WebGLBindable {
    fn bind(&self);
}

pub trait WebGLDeletable {
    fn delete(&self);
}
```

But I'd want to know your opinion first.

**`renderer` repetition**:
Thought of moving the field: `renderer: Sender<CanvasMsg>` to `WebGLObject`, but I think it makes it way more complicated to read, and also a bit unnecessary, at least IMO (`WebGLObject` will never interact with the field directly). It would also mean that all `WebGLObject`s should have one, which is true at this moment, but maybe not with WebGL 2, for example.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0f8095b950dd144497919cfea65a1f154ed3ae9a
2015-07-06 09:12:59 -06:00
Ms2ger
18fd8097a2 servo: Merge #6459 - Update to rustc 2d0cbf3e3e25e092bd9e4c94d08e446b680869f0 (from servo:rustup_20150625); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 21b48fc44d0b32627918b4778fed16203eecdba5
2015-06-25 12:03:15 -06:00
ecoal95
b32a9cd993 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
Hyowon Kim
8d982b374e servo: Merge #6402 - Fill and stroke for all pattern types and check the zero size gradient (from hyowon:canvas_fill_stroke); r=pcwalton
Depends on servo/rust-azure#170 which has been already merged.
So this patch contains the update of rust-azure.
r? @nox
cc @yichoi

Source-Repo: https://github.com/servo/servo
Source-Revision: e1b28d893e54601bf497d0d5b83d77658ca16bac
2015-06-17 13:32:25 -06:00
Hyowon Kim
d09678524e servo: Merge #6355 - Implement drawing shadows in canvas (from hyowon:drawing_shadows); r=nox
https://html.spec.whatwg.org/multipage/#when-shadows-are-drawn
r? @nox
cc @mmatyas @yichoi

Source-Repo: https://github.com/servo/servo
Source-Revision: 48e1d45bffaf7679d1f9487038a104f373a90e5a
2015-06-16 05:30:20 -06:00
Simon Sapin
9f3f7f698e servo: Merge #6395 - Use cgl and gleam from crates.io (from SimonSapin:crates.io-cgl-gleam); r=metajack
r? @metajack

Source-Repo: https://github.com/servo/servo
Source-Revision: 5d89235c5696a65bcf93a5da5244093294eb4fbe
2015-06-15 15:08:43 -06:00
ecoal95
126dc71f5c servo: Merge #6357 - Add missing WebGL interfaces, and a few gl calls (from emilio:more-webgl); r=pcwalton
See the commit descriptions for more details.

Blocked on https://github.com/servo/gleam/pull/24

Source-Repo: https://github.com/servo/servo
Source-Revision: ceaca2e2885be89d47553090a45cf9048812e3b4
2015-06-13 15:05:08 -06:00
Corey Farwell
711c6ca962 servo: Merge #6349 - rust-geom API changes (from frewsxcv:geom-api-changes); r=pcwalton
Shouldn't be merged until these have merged:

https://github.com/servo/rust-geom/pull/81

https://github.com/ecoal95/rust-offscreen-rendering-context/pull/13

https://github.com/servo/rust-layers/pull/178

~~I'll also need to update the Cargo lock files once they merge~~

Source-Repo: https://github.com/servo/servo
Source-Revision: cfcd8589d06935f83b903f76477ea03e4d4652d0
2015-06-13 13:52:07 -06:00
Hyowon Kim
97b64f7e8d servo: Merge #6157 - Implement pattern fill style for canvas (from hyowon:canvas_pattern_fill); r=nox
Issue #6056
Depends on servo/rust-azure#160

Source-Repo: https://github.com/servo/servo
Source-Revision: 9474e62d38f61f2b3a385ca32d64cab975b014ce
2015-06-13 01:49:50 -06:00
Mátyás Mustoha
a48503b881 servo: Merge #6354 - Remove gfx_traits from the dependencies of [script] (from mmatyas:canvas_remdep); r=Ms2ger
It seems @hyowon uploaded her canvas shadow patch faster than me; I've handled the color dependency a bit different, this way `gfx_traits` is not required by the script module.

Source-Repo: https://github.com/servo/servo
Source-Revision: c8c7bd900dde73d4fddafea8239f44440f1c863b
2015-06-12 10:22:54 -06:00