summaryrefslogtreecommitdiffstats
path: root/renderer/src
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector@hecrj.dev>2024-01-19 20:28:45 +0100
committerLibravatar GitHub <noreply@github.com>2024-01-19 20:28:45 +0100
commit7ae7fcb89855002519bab752fd3686106ce448db (patch)
treeac717dbd031e243519b446ab45e5008adef4f5dc /renderer/src
parent61e3d8502fec7e83c584218e598fa20c79363be3 (diff)
parent9df7bf8ec30ca76016018bc758b4323760e231b0 (diff)
downloadiced-7ae7fcb89855002519bab752fd3686106ce448db.tar.gz
iced-7ae7fcb89855002519bab752fd3686106ce448db.tar.bz2
iced-7ae7fcb89855002519bab752fd3686106ce448db.zip
Merge pull request #2191 from ids1024/raw-window-handle-0.6
Update `wgpu` to `0.19`, `glyphon` to `0.5`, `softbuffer` to `0.4`, `window-clipboard` to `0.4`, and `raw-window-handle` to `0.6`
Diffstat (limited to 'renderer/src')
-rw-r--r--renderer/src/compositor.rs20
1 files changed, 10 insertions, 10 deletions
diff --git a/renderer/src/compositor.rs b/renderer/src/compositor.rs
index 9d0ff9ab..f10ed048 100644
--- a/renderer/src/compositor.rs
+++ b/renderer/src/compositor.rs
@@ -1,9 +1,8 @@
use crate::core::Color;
-use crate::graphics::compositor::{Information, SurfaceError};
+use crate::graphics::compositor::{Information, SurfaceError, Window};
use crate::graphics::{Error, Viewport};
use crate::{Renderer, Settings};
-use raw_window_handle::{HasRawDisplayHandle, HasRawWindowHandle};
use std::env;
pub enum Compositor<Theme> {
@@ -15,7 +14,7 @@ pub enum Compositor<Theme> {
pub enum Surface {
TinySkia(iced_tiny_skia::window::Surface),
#[cfg(feature = "wgpu")]
- Wgpu(iced_wgpu::window::Surface),
+ Wgpu(iced_wgpu::window::Surface<'static>),
}
impl<Theme> crate::graphics::Compositor for Compositor<Theme> {
@@ -23,9 +22,9 @@ impl<Theme> crate::graphics::Compositor for Compositor<Theme> {
type Renderer = Renderer<Theme>;
type Surface = Surface;
- fn new<W: HasRawWindowHandle + HasRawDisplayHandle>(
+ fn new<W: Window + Clone>(
settings: Self::Settings,
- compatible_window: Option<&W>,
+ compatible_window: W,
) -> Result<Self, Error> {
let candidates =
Candidate::list_from_env().unwrap_or(Candidate::default_list());
@@ -33,7 +32,7 @@ impl<Theme> crate::graphics::Compositor for Compositor<Theme> {
let mut error = Error::GraphicsAdapterNotFound;
for candidate in candidates {
- match candidate.build(settings, compatible_window) {
+ match candidate.build(settings, compatible_window.clone()) {
Ok(compositor) => return Ok(compositor),
Err(new_error) => {
error = new_error;
@@ -56,9 +55,9 @@ impl<Theme> crate::graphics::Compositor for Compositor<Theme> {
}
}
- fn create_surface<W: HasRawWindowHandle + HasRawDisplayHandle>(
+ fn create_surface<W: Window + Clone>(
&mut self,
- window: &W,
+ window: W,
width: u32,
height: u32,
) -> Surface {
@@ -226,10 +225,10 @@ impl Candidate {
)
}
- fn build<Theme, W: HasRawWindowHandle + HasRawDisplayHandle>(
+ fn build<Theme, W: Window>(
self,
settings: Settings,
- _compatible_window: Option<&W>,
+ _compatible_window: W,
) -> Result<Compositor<Theme>, Error> {
match self {
Self::TinySkia => {
@@ -238,6 +237,7 @@ impl Candidate {
default_font: settings.default_font,
default_text_size: settings.default_text_size,
},
+ _compatible_window,
);
Ok(Compositor::TinySkia(compositor))