From a65d6a11cb82719a649110a8deaeb8f87e1c374b Mon Sep 17 00:00:00 2001 From: Greg V Date: Sun, 31 May 2020 16:53:57 +0300 Subject: Add custom window background/clear color (incl. transparency) support, fixes #272 wgpu would currently ignore the alpha: https://github.com/gfx-rs/wgpu/issues/687 glow (and naively patched wgpu) requires premultiplied alpha, so if you don't multiply the RGB by the A right now, the semi-transparent color would be wrong (too bright). winit with_transparent doesn't seem necessary. --- glow/src/settings.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'glow/src/settings.rs') diff --git a/glow/src/settings.rs b/glow/src/settings.rs index dce30029..68fde714 100644 --- a/glow/src/settings.rs +++ b/glow/src/settings.rs @@ -1,10 +1,11 @@ //! Configure a renderer. pub use iced_graphics::Antialiasing; +pub use iced_native::Color; /// The settings of a [`Renderer`]. /// /// [`Renderer`]: ../struct.Renderer.html -#[derive(Debug, Clone, Copy, PartialEq, Eq)] +#[derive(Debug, Clone, Copy, PartialEq)] pub struct Settings { /// The bytes of the font that will be used by default. /// @@ -13,6 +14,9 @@ pub struct Settings { /// The antialiasing strategy that will be used for triangle primitives. pub antialiasing: Option, + + /// The color that will be used to clear the window surface. + pub background_color: Color, } impl Default for Settings { @@ -20,6 +24,7 @@ impl Default for Settings { Settings { default_font: None, antialiasing: None, + background_color: Color::WHITE, } } } -- cgit