Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Strict import formatting (grouping and granularity) (#30325) | Samson | 2023-09-11 | 1 | -8/+10 |
| | | | | | * strict imports formatting * Reformat all imports | ||||
* | remove `extern crate` (#30311) | Samson | 2023-09-08 | 1 | -0/+1 |
| | | | | | | | | | | | * 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> | ||||
* | Bump euclid to 0.22 | Martin Robinson | 2023-01-26 | 1 | -2/+2 |
| | | | | | | | | | | | | | - Also updates raqote to latest with an upgrade of font-kit to 0.11 applied on as a patch - Update lyon_geom to the latest version Major change: - All matrices are now stored in row major order. This means that parameters to rotation functions no longer should be negated. - `post_...()` functions are now named `then()`. `pre_transform()` is removed, so `then()` is used and the order of operations changed. | ||||
* | Skip missing glyphs when drawing 2d canvas text. | Josh Matthews | 2020-08-07 | 1 | -3/+25 |
| | |||||
* | Fix ./mach build --release --with-layout-2020 | Utsav Oza | 2020-06-10 | 1 | -6/+3 |
| | |||||
* | Enable textAlign, textBaseline and direction attributes for canvas | Utsav Oza | 2020-06-10 | 1 | -19/+16 |
| | |||||
* | Implement CanvasRenderingContext2D.font property | Utsav Oza | 2020-06-10 | 1 | -0/+1 |
| | |||||
* | Query layout to resolve canvas font property value | Utsav Oza | 2020-06-10 | 1 | -1/+1 |
| | |||||
* | Basic implementation of canvas.fillText | Utsav Oza | 2020-06-10 | 1 | -0/+29 |
| | |||||
* | Revert "Add a simple implementation of CanvasRenderingContext2d.fillText" | Paul Rouget | 2020-03-24 | 1 | -81/+0 |
| | | | | Windows crash: https://github.com/servo/servo/issues/26015 | ||||
* | Add a simple implementation of CanvasRenderingContext2d.fillText | kaiakz | 2020-03-19 | 1 | -0/+81 |
| | |||||
* | Make fill_rect() draw patterns correctly | pylbrecht | 2020-03-03 | 1 | -25/+6 |
| | |||||
* | Refactor arc() and ellipse() to use lyon_geom::Arc | pylbrecht | 2020-02-26 | 1 | -82/+57 |
| | |||||
* | Add missing CompositionStyle::Clear | pylbrecht | 2020-01-27 | 1 | -0/+1 |
| | |||||
* | Remove duplication for creating gradient stops | pylbrecht | 2019-12-17 | 1 | -16/+16 |
| | |||||
* | Add transform to Pattern::Surface to properly draw images | pylbrecht | 2019-12-17 | 1 | -6/+32 |
| | |||||
* | Consider empty gradients in `is_zero_size_gradient()` | pylbrecht | 2019-12-17 | 1 | -2/+4 |
| | |||||
* | Handle `BlendMode::Clear` in `GenericDrawTarget::fill()` | pylbrecht | 2019-12-17 | 1 | -0/+1 |
| | |||||
* | Add a layer to store Pattern related information | pylbrecht | 2019-12-17 | 1 | -164/+246 |
| | | | | | | | | Some information of `canvas_data::Pattern` was lost by converting it to `raqote::Source` due to the fact that Raqote did not store this information (e.g. linear gradient's start/end points). We introduce another layer to keep this information for later use (like in `is_zero_size_gradient()`). | ||||
* | Implement "repeat-x" and "repeat-y" for images | pylbrecht | 2019-12-17 | 1 | -47/+68 |
| | |||||
* | Set images' ExtendMode based on available information | pylbrecht | 2019-12-17 | 1 | -1/+6 |
| | |||||
* | Handle overlapping gradient stops for linear gradients | pylbrecht | 2019-12-17 | 1 | -3/+10 |
| | | | | | | | | | | | From `addColorStop(offset, color)`s spec: If multiple stops are added at the same offset on a gradient, they must be placed in the order added, with the first one closest to the start of the gradient, and each subsequent one infinitesimally further along towards the end point (in effect causing all but the first and last stop added at each point to be ignored) https://www.w3.org/html/test/results/2dcontext/annotated-spec/canvas.html#testrefs.2d.gradient.interpolate.overlapu | ||||
* | Use push_layer_with_blend() only when necessary | pylbrecht | 2019-12-17 | 1 | -5/+36 |
| | | | | | push_layer_with_blend() comes at a performance cost, so we only use it on blend modes that require it. | ||||
* | Make arc() wrap angles mod 2pi | pylbrecht | 2019-12-17 | 1 | -1/+8 |
| | |||||
* | Make arc() use `anticlockwise` argument | pylbrecht | 2019-12-17 | 1 | -1/+2 |
| | |||||
* | Make fill() handle all composition operations | pylbrecht | 2019-12-17 | 1 | -30/+5 |
| | |||||
* | Make fill() draw uncovered pixels as (0,0,0,0) for certain composition ops | pylbrecht | 2019-12-17 | 1 | -7/+42 |
| | |||||
* | Respect direction when drawing arcs | pylbrecht | 2019-12-17 | 1 | -2/+5 |
| | |||||
* | Respect FilterMode when drawing images | pylbrecht | 2019-12-17 | 1 | -10/+29 |
| | |||||
* | Add check for handling equal radial gradients | pylbrecht | 2019-12-17 | 1 | -1/+8 |
| | |||||
* | Add check to handle zerosize linear gradients | pylbrecht | 2019-12-17 | 1 | -1/+6 |
| | |||||
* | Use tolerance > 0 in Path::contains_point() | pylbrecht | 2019-12-17 | 1 | -1/+1 |
| | |||||
* | Create raqote::SolidSource with premultiplied color | pylbrecht | 2019-12-17 | 1 | -30/+30 |
| | | | | SolidSource expects a premultiplied color. | ||||
* | Fix conversion of image data slice | pylbrecht | 2019-12-17 | 1 | -1/+1 |
| | |||||
* | Handle empty paths in PathBuilder::get_current_point() | pylbrecht | 2019-12-17 | 1 | -12/+8 |
| | | | | | The case of calling get_current_point() on empty paths has not been handled and caused panics. | ||||
* | Apply transformation in Path::contains_point() | pylbrecht | 2019-12-17 | 1 | -2/+5 |
| | |||||
* | Don't reuse PathBuilder after calling finish() | pylbrecht | 2019-12-17 | 1 | -0/+1 |
| | |||||
* | Implement DrawTarget::snapshot() | pylbrecht | 2019-10-11 | 1 | -1/+1 |
| | |||||
* | Implement Path::transformed_copy_to_builder() | pylbrecht | 2019-10-11 | 1 | -7/+10 |
| | |||||
* | Show warn! for shadow drawing operations | pylbrecht | 2019-10-11 | 1 | -1/+1 |
| | |||||
* | Implement LinearGradient and RadialGradient | pylbrecht | 2019-09-17 | 1 | -64/+42 |
| | |||||
* | Implement ColorBurn | pylbrecht | 2019-09-17 | 1 | -1/+1 |
| | |||||
* | Update raqote | pylbrecht | 2019-09-17 | 1 | -2/+1 |
| | |||||
* | Add naive implementation for ellipse() | pylbrecht | 2019-09-17 | 1 | -7/+136 |
| | | | | | rust-azure's ellipse() C++ implementation copy/pasted and kind of ported to Rust. Obviously needs refactor to turn it into idiomatic Rust. | ||||
* | Don't use catch all in match | pylbrecht | 2019-09-01 | 1 | -1/+1 |
| | |||||
* | Use raqote's implementation of Path::contains_point() | pylbrecht | 2019-09-01 | 1 | -8/+2 |
| | |||||
* | Implement create_gradient_stops() | pylbrecht | 2019-08-29 | 1 | -2/+14 |
| | |||||
* | Refactor Path::contains_point() using any() | pylbrecht | 2019-08-25 | 1 | -21/+8 |
| | |||||
* | Implement PathBuilder::get_current_point() | pylbrecht | 2019-08-25 | 1 | -1/+13 |
| | |||||
* | Implement Path::contains_point() | pylbrecht | 2019-08-25 | 1 | -2/+23 |
| |