summaryrefslogtreecommitdiff
path: root/src/image.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/image.rs')
-rw-r--r--src/image.rs13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/image.rs b/src/image.rs
index 4ce6f1e1..781f32fb 100644
--- a/src/image.rs
+++ b/src/image.rs
@@ -9,7 +9,7 @@ use crate::drawing_ctx::DrawingCtx;
use crate::element::{set_attribute, ElementTrait};
use crate::error::*;
use crate::href::{is_href, set_href};
-use crate::layout::{self, StackingContext};
+use crate::layout::{self, Layer, LayerKind, StackingContext};
use crate::length::*;
use crate::node::{CascadedValues, Node, NodeBorrow};
use crate::parsers::ParseValue;
@@ -92,13 +92,13 @@ impl ElementTrait for Image {
let overflow = values.overflow();
- let image = layout::Image {
+ let image = Box::new(layout::Image {
surface,
is_visible,
rect,
aspect: self.aspect,
overflow,
- };
+ });
let elt = node.borrow_element();
let stacking_ctx = StackingContext::new(
@@ -109,6 +109,11 @@ impl ElementTrait for Image {
values,
);
- draw_ctx.draw_image(&image, &stacking_ctx, acquired_nodes, values, clipping)
+ let layer = Layer {
+ kind: LayerKind::Image(image),
+ stacking_ctx,
+ };
+
+ draw_ctx.draw_layer(&layer, acquired_nodes, values, clipping)
}
}