aboutsummaryrefslogtreecommitdiffstats
path: root/components/canvas_traits/lib.rs
Commit message (Collapse)AuthorAgeFilesLines
* Move `*_traits` and other shared types to `shared`Martin Robinson2023-11-031-26/+0
| | | | | | | | | | | | This is the start of the organization of types that are in their own crates in order to break dependency cycles between other crates. The idea here is that putting these packages into their own directory is the first step toward cleaning them up. They have grown organically and it is difficult to explain to new folks where to put new shared types. Many of these crates contain more than traits or don't contain traits at all. Notably, `script_traits` isn't touched because it is vendored from Gecko. Eventually this will move to `third_party`.
* Strict import formatting (grouping and granularity) (#30325)Samson2023-09-111-1/+2
| | | | | * strict imports formatting * Reformat all imports
* remove `extern crate` (#30311)Samson2023-09-081-7/+0
| | | | | | | | | | | * remove extern crate * Update components/script_plugins/lib.rs Co-authored-by: Martin Robinson <mrobinson@igalia.com> --------- Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* Proxy all WR interactions for layout/font/script/canvas threads to the ↵Josh Matthews2020-06-091-2/+0
| | | | | | | compositor thread. There is now a single RenderApi that is used, and all transactions are serialized through the compositor.
* Convert all uses of UpdateResources api to use webrender transactions.Josh Matthews2020-05-111-0/+1
|
* Remove dependency of constellation on canvasKunal Mohan2020-02-061-0/+14
| | | | | | move `ConstellationCanvasMsg` to canvas_traits and start canvas paint thread to components/servo. This, however, does not remove dependency for conditional compilation options.
* Update MPL license to https (part 4)Jan Andre Ikenmeyer2018-11-191-1/+1
|
* Move prepare_pixels helper functions to canvas_traitsAnthony Ramine2018-11-161-0/+1
|
* `cargo fix --edition-idioms`Simon Sapin2018-11-081-9/+0
|
* Format remaining filesPyfisch2018-11-061-4/+6
|
* Remove components/nonzero, use std::num::NonZero insteadSimon Sapin2018-06-161-1/+0
|
* Update to gleam 0.5Anthony Ramine2018-05-051-0/+1
|
* Use ByteBuf for the canvas messagesAnthony Ramine2018-03-261-0/+1
| | | | | The type Vec<u8> is super unefficient to work with in Serde if all you want to represent is a simple blob.
* Replace all uses of the `heapsize` crate with `malloc_size_of`.Nicholas Nethercote2017-10-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Servo currently uses `heapsize`, but Stylo/Gecko use `malloc_size_of`. `malloc_size_of` is better -- it handles various cases that `heapsize` does not -- so this patch changes Servo to use `malloc_size_of`. This patch makes the following changes to the `malloc_size_of` crate. - Adds `MallocSizeOf` trait implementations for numerous types, some built-in (e.g. `VecDeque`), some external and Servo-only (e.g. `string_cache`). - Makes `enclosing_size_of_op` optional, because vanilla jemalloc doesn't support that operation. - For `HashSet`/`HashMap`, falls back to a computed estimate when `enclosing_size_of_op` isn't available. - Adds an extern "C" `malloc_size_of` function that does the actual heap measurement; this is based on the same functions from the `heapsize` crate. This patch makes the following changes elsewhere. - Converts all the uses of `heapsize` to instead use `malloc_size_of`. - Disables the "heapsize"/"heap_size" feature for the external crates that provide it. - Removes the `HeapSizeOf` implementation from `hashglobe`. - Adds `ignore` annotations to a few `Rc`/`Arc`, because `malloc_size_of` doesn't derive those types, unlike `heapsize`.
* Use wrappers in the nonzero crate so users don’t need unstable featuresSimon Sapin2017-10-131-2/+0
|
* Use NonZeroU32 in canvas_traitsSimon Sapin2017-10-131-2/+3
|
* Revert "Auto merge of #18114 - emilio:revert-webgl-refactor, r=nox"Anthony Ramine2017-08-161-418/+8
| | | | | This reverts commit 4d10d39e8fe841c5fe2ac58da2daaa13c10c140e, reversing changes made to ee94e2b7c0bd327abe8f9545b2a1f792f67a2bdd.
* Revert "Auto merge of #17891 - MortimerGoro:webgl_move, r=glennw,emilio"Emilio Cobos Álvarez2017-08-161-8/+418
| | | | | This reverts commit 90f55ea4580e2a15f7d70d0491444f18b972d450, reversing changes made to 2e60b27a2186a8cba4b952960155dfcf3f47d7db.
* Improve WebGL architecture.Imanol Fernandez2017-08-151-418/+8
|
* Upgrade to the latest version of WebRenderMartin Robinson2017-07-131-3/+3
|
* Remove explicit dependencies on serde_deriveSimon Sapin2017-06-161-1/+1
|
* Bump euclid to 0.14.Nicolas Silva2017-06-141-6/+3
|
* Kill the plugins crate and its clippy supportAnthony Ramine2017-02-211-2/+0
| | | | | | Sometimes clippy gets outdated by months, and its current support setup means that each Servo component need to opt into it by depending on the plugins crate manually, and not all components do that.
* webgl: Add support for premultiplying alpha.Eric Anholt2017-01-281-3/+7
| | | | Now the affected testcase only fails due to unpack alignment.
* Update rustc to 1.16.0-nightly (7821a9b99 2017-01-23).Ms2ger2017-01-241-2/+0
|
* WebVR API Implementation, r=larsbergstromImanol Fernandez2017-01-091-1/+2
|
* Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06)Simon Sapin2017-01-061-1/+0
|
* Remove azure(canvas) dependency from canvas_traitsRoman Zaynetdinov2016-12-251-136/+0
|
* canvas: Cleanup CanvasData and layout and script messages.Emilio Cobos Álvarez2016-11-071-4/+9
|
* Remove #![feature(rustc_attrs)]Anthony Ramine2016-11-031-1/+0
|
* Remove #![feature(custom_derive)]Anthony Ramine2016-11-031-1/+0
|
* Use heapsize_derive instead of heapsize_pluginSimon Sapin2016-11-031-3/+3
|
* Remove gfx_traits::color.Ms2ger2016-10-311-13/+8
|
* Remove old rendering backend.Glenn Watson2016-10-181-1/+1
| | | | | | | | | | | | | | 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 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.
* Update to Rust 1.14.0-nightly (19ac57926 2016-10-08)Anthony Ramine2016-10-091-1/+5
| | | | A cargo bump and a switch to serde_derive is needed to do this rustup.
* Fix canvas image tests when using webrender.Glenn Watson2016-08-301-0/+18
| | | | | | When webrender is enabled, image decoding doesn't pre-multiply by alpha, but the canvas code expects the image data to be pre-multiplied form.
* Remove #[serde(bound = "")] attributesDavid Tolnay2016-08-121-1/+0
| | | | These were fixed in serde_codegen 0.8.0 by serde-rs/serde#456.
* Update Rust to 1.12.0-nightly (9316ae515 2016-07-24)Eduard Burtescu2016-07-261-0/+1
|
* Move util::vec::byte_swap to canvas_traitsAnthony Ramine2016-07-041-0/+13
|
* Make canvas send their data themselves to other canvasAnthony Ramine2016-06-161-0/+2
|
* Remove references to unused crates.Zbynek Winkler2016-04-221-2/+0
| | | | The cleanup is based on info from using "-W unused-extern-crates".
* #10211: Stop re-exporting webrender_traits WebGL types from canvas_traitsJan-Fabian Humann2016-03-301-4/+2
|
* canvas_traits: Remove unused layers dependencyEmilio Cobos Álvarez2016-03-231-4/+0
|
* canvas: Remove all the canvas layerization infrastructureEmilio Cobos Álvarez2016-03-231-18/+0
| | | | | | | It was never complete, and with webrender as a backend the way we render WebGL contexts has changed a bit. This should remove quite a bit of overhead.
* Deny unsafe code in more crates.Ms2ger2016-03-181-0/+2
|
* Add WebRender integration to Servo.Glenn Watson2016-02-181-177/+17
| | | | | | | | 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!
* Say farewell to in-tree HeapSizeOfAnthony Ramine2016-02-041-2/+2
|
* webgl: Improve debuggingEmilio Cobos Álvarez2016-01-131-0/+77
| | | | Now we can keep track of errors more easily.
* webgl: Implement Uniform1f, Uniform1fv, and Uniform4fEmilio Cobos Álvarez2016-01-131-1/+2
| | | | | | I was going to implement Uniform4fv with sequences, (since it practically implemented), but we can't until we support Float32Array args because codegen doesn't know how tu differenciate between both.
* Issue #8738: bufferSubData and texImage2D argument sanity checks.Simon Martin2015-12-261-1/+1
|