summaryrefslogtreecommitdiffstats
path: root/glow
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2021-10-14 16:07:22 +0700
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2021-10-14 16:07:22 +0700
commit03b34931383e701c39c653a7662a616fe21a0947 (patch)
tree8c0773d50b615dbc62210db8919ecb97ca912bd9 /glow
parent3aae45c1913e6a6f60b009f19d00d10add7ad11e (diff)
downloadiced-03b34931383e701c39c653a7662a616fe21a0947.tar.gz
iced-03b34931383e701c39c653a7662a616fe21a0947.tar.bz2
iced-03b34931383e701c39c653a7662a616fe21a0947.zip
Remove trait-specific draw logic in `iced_native`
Diffstat (limited to 'glow')
-rw-r--r--glow/src/backend.rs12
-rw-r--r--glow/src/window/compositor.rs10
2 files changed, 9 insertions, 13 deletions
diff --git a/glow/src/backend.rs b/glow/src/backend.rs
index 9a9457cf..b8e4bd4b 100644
--- a/glow/src/backend.rs
+++ b/glow/src/backend.rs
@@ -5,10 +5,8 @@ use crate::{Settings, Transformation, Viewport};
use iced_graphics::backend;
use iced_graphics::font;
-use iced_graphics::Layer;
-use iced_graphics::Primitive;
+use iced_graphics::{Layer, Primitive};
use iced_native::alignment;
-use iced_native::mouse;
use iced_native::{Font, Size};
/// A [`glow`] graphics backend for [`iced`].
@@ -47,13 +45,13 @@ impl Backend {
///
/// The text provided as overlay will be rendered on top of the primitives.
/// This is useful for rendering debug information.
- pub fn draw<T: AsRef<str>>(
+ pub fn present<T: AsRef<str>>(
&mut self,
gl: &glow::Context,
+ primitive: &Primitive,
viewport: &Viewport,
- (primitive, mouse_interaction): &(Primitive, mouse::Interaction),
overlay_text: &[T],
- ) -> mouse::Interaction {
+ ) {
let viewport_size = viewport.physical_size();
let scale_factor = viewport.scale_factor() as f32;
let projection = viewport.projection();
@@ -70,8 +68,6 @@ impl Backend {
viewport_size.height,
);
}
-
- *mouse_interaction
}
fn flush(
diff --git a/glow/src/window/compositor.rs b/glow/src/window/compositor.rs
index b8157f78..36e591cd 100644
--- a/glow/src/window/compositor.rs
+++ b/glow/src/window/compositor.rs
@@ -3,7 +3,6 @@ use crate::{Backend, Color, Error, Renderer, Settings, Viewport};
use core::ffi::c_void;
use glow::HasContext;
use iced_graphics::{Antialiasing, Size};
-use iced_native::mouse;
/// A window graphics backend for iced powered by `glow`.
#[allow(missing_debug_implementations)]
@@ -59,14 +58,13 @@ impl iced_graphics::window::GLCompositor for Compositor {
}
}
- fn draw<T: AsRef<str>>(
+ fn present<T: AsRef<str>>(
&mut self,
renderer: &mut Self::Renderer,
viewport: &Viewport,
color: Color,
- output: &<Self::Renderer as iced_native::Renderer>::Output,
overlay: &[T],
- ) -> mouse::Interaction {
+ ) {
let gl = &self.gl;
let [r, g, b, a] = color.into_linear();
@@ -76,6 +74,8 @@ impl iced_graphics::window::GLCompositor for Compositor {
gl.clear(glow::COLOR_BUFFER_BIT);
}
- renderer.backend_mut().draw(gl, viewport, output, overlay)
+ renderer.present(|backend, primitive| {
+ backend.present(gl, primitive, viewport, overlay);
+ });
}
}