summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Richard <richardsoncusto@gmail.com>2022-04-26 19:18:18 -0300
committerLibravatar Richard <richardsoncusto@gmail.com>2022-04-27 15:25:16 -0300
commit984d1f375ecec301dd42b049eecd1b88e3bca32a (patch)
treef918985683a1568f9c1a96b53580c384c3a7d5aa
parent5be1ac18fe1757d31386f98774d823bd1137eea4 (diff)
downloadiced-984d1f375ecec301dd42b049eecd1b88e3bca32a.tar.gz
iced-984d1f375ecec301dd42b049eecd1b88e3bca32a.tar.bz2
iced-984d1f375ecec301dd42b049eecd1b88e3bca32a.zip
Move `compositor` module access from `window` to `crate`
-rw-r--r--glow/src/window/compositor.rs6
-rw-r--r--graphics/src/lib.rs1
-rw-r--r--graphics/src/window.rs6
-rw-r--r--graphics/src/window/compositor.rs2
-rw-r--r--graphics/src/window/gl_compositor.rs4
-rw-r--r--wgpu/src/window/compositor.rs17
-rw-r--r--winit/src/application.rs7
-rw-r--r--winit/src/system.rs6
8 files changed, 27 insertions, 22 deletions
diff --git a/glow/src/window/compositor.rs b/glow/src/window/compositor.rs
index 402461bb..68d27d36 100644
--- a/glow/src/window/compositor.rs
+++ b/glow/src/window/compositor.rs
@@ -2,7 +2,7 @@ use crate::{Backend, Color, Error, Renderer, Settings, Viewport};
use core::ffi::c_void;
use glow::HasContext;
-use iced_graphics::{Antialiasing, Size};
+use iced_graphics::{compositor, Antialiasing, Size};
/// A window graphics backend for iced powered by `glow`.
#[allow(missing_debug_implementations)]
@@ -67,10 +67,10 @@ impl iced_graphics::window::GLCompositor for Compositor {
}
}
- fn get_information(&self) -> iced_graphics::window::Information {
+ fn get_information(&self) -> compositor::Information {
let adapter = unsafe { self.gl.get_parameter_string(glow::RENDERER) };
- iced_graphics::window::Information {
+ compositor::Information {
backend: format!("{:?}", self.gl.version()),
adapter,
}
diff --git a/graphics/src/lib.rs b/graphics/src/lib.rs
index b3be62af..4364695f 100644
--- a/graphics/src/lib.rs
+++ b/graphics/src/lib.rs
@@ -39,6 +39,7 @@ pub use primitive::Primitive;
pub use renderer::Renderer;
pub use transformation::Transformation;
pub use viewport::Viewport;
+pub use window::compositor;
pub use iced_native::alignment;
pub use iced_native::{
diff --git a/graphics/src/window.rs b/graphics/src/window.rs
index 35a9f06a..a38b81f3 100644
--- a/graphics/src/window.rs
+++ b/graphics/src/window.rs
@@ -1,10 +1,10 @@
//! Draw graphics to window surfaces.
-mod compositor;
+pub mod compositor;
#[cfg(feature = "opengl")]
-mod gl_compositor;
+pub mod gl_compositor;
-pub use compositor::{Compositor, Information, SurfaceError};
+pub use compositor::Compositor;
#[cfg(feature = "opengl")]
pub use gl_compositor::GLCompositor;
diff --git a/graphics/src/window/compositor.rs b/graphics/src/window/compositor.rs
index 8a851773..3f1165d4 100644
--- a/graphics/src/window/compositor.rs
+++ b/graphics/src/window/compositor.rs
@@ -1,3 +1,5 @@
+//! A compositor is responsible for initializing a renderer and managing window
+//! surfaces.
use crate::{Color, Error, Viewport};
use raw_window_handle::HasRawWindowHandle;
diff --git a/graphics/src/window/gl_compositor.rs b/graphics/src/window/gl_compositor.rs
index 65761fe8..3adde8e6 100644
--- a/graphics/src/window/gl_compositor.rs
+++ b/graphics/src/window/gl_compositor.rs
@@ -1,4 +1,6 @@
-use crate::window::Information;
+//! A compositor is responsible for initializing a renderer and managing window
+//! surfaces.
+use crate::compositor::Information;
use crate::{Color, Error, Size, Viewport};
use core::ffi::c_void;
diff --git a/wgpu/src/window/compositor.rs b/wgpu/src/window/compositor.rs
index 01e52162..04393fe5 100644
--- a/wgpu/src/window/compositor.rs
+++ b/wgpu/src/window/compositor.rs
@@ -1,6 +1,7 @@
use crate::{Backend, Color, Error, Renderer, Settings, Viewport};
use futures::task::SpawnExt;
+use iced_graphics::compositor;
use iced_native::futures;
use raw_window_handle::HasRawWindowHandle;
@@ -157,10 +158,10 @@ impl iced_graphics::window::Compositor for Compositor {
);
}
- fn get_information(&self) -> iced_graphics::window::Information {
+ fn get_information(&self) -> compositor::Information {
let information = self.adapter.get_info();
- iced_graphics::window::Information {
+ compositor::Information {
adapter: information.name,
backend: format!("{:?}", information.backend),
}
@@ -173,7 +174,7 @@ impl iced_graphics::window::Compositor for Compositor {
viewport: &Viewport,
background_color: Color,
overlay: &[T],
- ) -> Result<(), iced_graphics::window::SurfaceError> {
+ ) -> Result<(), compositor::SurfaceError> {
match surface.get_current_texture() {
Ok(frame) => {
let mut encoder = self.device.create_command_encoder(
@@ -241,16 +242,14 @@ impl iced_graphics::window::Compositor for Compositor {
}
Err(error) => match error {
wgpu::SurfaceError::Timeout => {
- Err(iced_graphics::window::SurfaceError::Timeout)
+ Err(compositor::SurfaceError::Timeout)
}
wgpu::SurfaceError::Outdated => {
- Err(iced_graphics::window::SurfaceError::Outdated)
- }
- wgpu::SurfaceError::Lost => {
- Err(iced_graphics::window::SurfaceError::Lost)
+ Err(compositor::SurfaceError::Outdated)
}
+ wgpu::SurfaceError::Lost => Err(compositor::SurfaceError::Lost),
wgpu::SurfaceError::OutOfMemory => {
- Err(iced_graphics::window::SurfaceError::OutOfMemory)
+ Err(compositor::SurfaceError::OutOfMemory)
}
},
}
diff --git a/winit/src/application.rs b/winit/src/application.rs
index f5e4c66d..853ede0c 100644
--- a/winit/src/application.rs
+++ b/winit/src/application.rs
@@ -13,6 +13,7 @@ use crate::{
use iced_futures::futures;
use iced_futures::futures::channel::mpsc;
+use iced_graphics::compositor;
use iced_graphics::window;
use iced_native::program::Program;
use iced_native::user_interface::{self, UserInterface};
@@ -426,7 +427,7 @@ async fn run_instance<A, E, C>(
}
Err(error) => match error {
// This is an unrecoverable error.
- window::SurfaceError::OutOfMemory => {
+ compositor::SurfaceError::OutOfMemory => {
panic!("{:?}", error);
}
_ => {
@@ -520,7 +521,7 @@ pub fn update<A: Application, E: Executor>(
debug: &mut Debug,
messages: &mut Vec<A::Message>,
window: &winit::window::Window,
- graphics_info: &window::Information,
+ graphics_info: &compositor::Information,
) {
for message in messages.drain(..) {
debug.log_message(&message);
@@ -543,7 +544,7 @@ pub fn run_command<Message: 'static + std::fmt::Debug + Send, E: Executor>(
clipboard: &mut Clipboard,
proxy: &mut winit::event_loop::EventLoopProxy<Message>,
window: &winit::window::Window,
- graphics_info: &window::Information,
+ graphics_info: &compositor::Information,
) {
use iced_native::command;
use iced_native::system;
diff --git a/winit/src/system.rs b/winit/src/system.rs
index 1305ba5b..a961c5b4 100644
--- a/winit/src/system.rs
+++ b/winit/src/system.rs
@@ -2,7 +2,7 @@
use crate::command::{self, Command};
pub use iced_native::system::*;
-use iced_graphics::window;
+use iced_graphics::compositor;
/// Query for available system information.
///
@@ -17,7 +17,7 @@ pub fn information<Message>(
#[cfg(feature = "sysinfo")]
pub(crate) fn get_information(
- graphics_info: &window::Information,
+ graphics_info: &compositor::Information,
) -> Option<Information> {
use sysinfo::{ProcessExt, ProcessorExt, System, SystemExt};
let mut system = System::new_all();
@@ -47,7 +47,7 @@ pub(crate) fn get_information(
#[cfg(not(feature = "sysinfo"))]
pub(crate) fn get_information(
- _graphics_info: &window::Information,
+ _graphics_info: &compositor::Information,
) -> Option<Information> {
None
}