From a0597471b81b122b43e1bb90e43e1bcde1e8a892 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Fri, 10 Feb 2023 20:24:18 +0100 Subject: Remove `iced_glutin` and `iced_glow` leftovers --- winit/src/settings.rs | 8 -------- 1 file changed, 8 deletions(-) (limited to 'winit/src/settings.rs') diff --git a/winit/src/settings.rs b/winit/src/settings.rs index 78d58000..5c64727b 100644 --- a/winit/src/settings.rs +++ b/winit/src/settings.rs @@ -51,14 +51,6 @@ pub struct Settings { /// /// [`Application`]: crate::Application pub exit_on_close_request: bool, - - /// Whether the [`Application`] should try to build the context - /// using OpenGL ES first then OpenGL. - /// - /// NOTE: Only works for the `glow` backend. - /// - /// [`Application`]: crate::Application - pub try_opengles_first: bool, } /// The window settings of an application. -- cgit From 5a056ce0510343621305474af74ade1db028c01a Mon Sep 17 00:00:00 2001 From: Night_Hunter Date: Wed, 12 Apr 2023 18:47:53 +1200 Subject: add action set icon while running (#1590) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * set windows icon live action * change get icon to insto raw * remove mobile docs * format * fix format * add file methods to Icon * Rename action to `ChangeIcon` and tidy up `Icon` modules * Fix documentation of `icon::Error` * Remove unnecessary `\` in `icon` documentation * Remove `etc.` from `Icon` documentation --------- Co-authored-by: Héctor Ramón Jiménez --- winit/src/settings.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'winit/src/settings.rs') diff --git a/winit/src/settings.rs b/winit/src/settings.rs index 78d58000..6658773d 100644 --- a/winit/src/settings.rs +++ b/winit/src/settings.rs @@ -92,7 +92,7 @@ pub struct Window { pub always_on_top: bool, /// The window icon, which is also usually used in the taskbar - pub icon: Option, + pub icon: Option, /// Platform specific settings. pub platform_specific: platform::PlatformSpecific, @@ -134,8 +134,9 @@ impl Window { .with_resizable(self.resizable) .with_decorations(self.decorations) .with_transparent(self.transparent) - .with_window_icon(self.icon) - .with_always_on_top(self.always_on_top); + .with_window_icon(self.icon.and_then(conversion::icon)) + .with_always_on_top(self.always_on_top) + .with_visible(self.visible); if let Some(position) = conversion::position( primary_monitor.as_ref(), -- cgit From a5fbfe7ea5e73218af1befe02eb364afad2d6c55 Mon Sep 17 00:00:00 2001 From: Nico Burns Date: Mon, 27 Feb 2023 23:44:31 +0000 Subject: Update to winit 0.28 --- winit/src/settings.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'winit/src/settings.rs') diff --git a/winit/src/settings.rs b/winit/src/settings.rs index be0ab329..413ae64a 100644 --- a/winit/src/settings.rs +++ b/winit/src/settings.rs @@ -26,7 +26,7 @@ use crate::core::window::Icon; use crate::Position; use winit::monitor::MonitorHandle; -use winit::window::WindowBuilder; +use winit::window::{WindowBuilder, WindowLevel}; use std::fmt; @@ -121,6 +121,10 @@ impl Window { let (width, height) = self.size; + let window_level = match self.always_on_top { + true => WindowLevel::AlwaysOnTop, + false => WindowLevel::Normal, + }; window_builder = window_builder .with_title(title) .with_inner_size(winit::dpi::LogicalSize { width, height }) @@ -128,7 +132,7 @@ impl Window { .with_decorations(self.decorations) .with_transparent(self.transparent) .with_window_icon(self.icon.and_then(conversion::icon)) - .with_always_on_top(self.always_on_top) + .with_window_level(window_level) .with_visible(self.visible); if let Some(position) = conversion::position( -- cgit From 42671e2855a7e54c1785f75833da062e07362b87 Mon Sep 17 00:00:00 2001 From: Nico Burns Date: Tue, 28 Feb 2023 12:11:04 +0000 Subject: Fix build on linux --- winit/src/settings.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'winit/src/settings.rs') diff --git a/winit/src/settings.rs b/winit/src/settings.rs index 413ae64a..a807cdba 100644 --- a/winit/src/settings.rs +++ b/winit/src/settings.rs @@ -161,7 +161,9 @@ impl Window { target_os = "openbsd" ))] { - use ::winit::platform::unix::WindowBuilderExtUnix; + // `with_name` is available on both `WindowBuilderExtWayland` and `WindowBuilderExtX11` and they do + // exactly the same thing. We arbitrarily choose `WindowBuilderExtWayland` here. + use ::winit::platform::x11::WindowBuilderExtWayland; if let Some(id) = _id { window_builder = window_builder.with_name(id.clone(), id); -- cgit From 09a2a061303e954dbae7dab6f9bf092c121900f8 Mon Sep 17 00:00:00 2001 From: Nico Burns Date: Tue, 28 Feb 2023 12:15:04 +0000 Subject: Fix import path --- winit/src/settings.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'winit/src/settings.rs') diff --git a/winit/src/settings.rs b/winit/src/settings.rs index a807cdba..22033113 100644 --- a/winit/src/settings.rs +++ b/winit/src/settings.rs @@ -163,7 +163,7 @@ impl Window { { // `with_name` is available on both `WindowBuilderExtWayland` and `WindowBuilderExtX11` and they do // exactly the same thing. We arbitrarily choose `WindowBuilderExtWayland` here. - use ::winit::platform::x11::WindowBuilderExtWayland; + use ::winit::platform::wayland::WindowBuilderExtWayland; if let Some(id) = _id { window_builder = window_builder.with_name(id.clone(), id); -- cgit From 861a24745a9dfb99feaa3c5a4299af58a0054ed7 Mon Sep 17 00:00:00 2001 From: Nico Burns Date: Thu, 11 May 2023 17:51:03 +0100 Subject: Fixup option --- winit/src/settings.rs | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'winit/src/settings.rs') diff --git a/winit/src/settings.rs b/winit/src/settings.rs index 22033113..efee5c68 100644 --- a/winit/src/settings.rs +++ b/winit/src/settings.rs @@ -173,12 +173,8 @@ impl Window { #[cfg(target_os = "windows")] { use winit::platform::windows::WindowBuilderExtWindows; - - if let Some(parent) = self.platform_specific.parent { - window_builder = window_builder.with_parent_window(parent); - } - window_builder = window_builder + .with_parent_window(self.platform_specific.parent) .with_drag_and_drop(self.platform_specific.drag_and_drop); } -- cgit From e82ce8d93c2c36057b85b7cfe76c871e7c720f17 Mon Sep 17 00:00:00 2001 From: Nico Burns Date: Thu, 11 May 2023 19:27:27 +0100 Subject: Add unsafe block --- winit/src/settings.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'winit/src/settings.rs') diff --git a/winit/src/settings.rs b/winit/src/settings.rs index efee5c68..1f3389ef 100644 --- a/winit/src/settings.rs +++ b/winit/src/settings.rs @@ -173,8 +173,11 @@ impl Window { #[cfg(target_os = "windows")] { use winit::platform::windows::WindowBuilderExtWindows; + unsafe { + window_builder = window_builder + .with_parent_window(self.platform_specific.parent); + } window_builder = window_builder - .with_parent_window(self.platform_specific.parent) .with_drag_and_drop(self.platform_specific.drag_and_drop); } -- cgit From 096bcd898838a4980ebecbc658d7851af226eae6 Mon Sep 17 00:00:00 2001 From: Nico Burns Date: Thu, 11 May 2023 19:36:22 +0100 Subject: Allow unsafe code --- winit/src/settings.rs | 1 + 1 file changed, 1 insertion(+) (limited to 'winit/src/settings.rs') diff --git a/winit/src/settings.rs b/winit/src/settings.rs index 1f3389ef..13be3932 100644 --- a/winit/src/settings.rs +++ b/winit/src/settings.rs @@ -173,6 +173,7 @@ impl Window { #[cfg(target_os = "windows")] { use winit::platform::windows::WindowBuilderExtWindows; + #[allow(unsafe_code)] unsafe { window_builder = window_builder .with_parent_window(self.platform_specific.parent); -- cgit From a7fa7e40058188c95a790712e11b863a9f84cecb Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Thu, 25 May 2023 23:14:07 +0200 Subject: Introduce `window::Level` enum ... and add `level` field to `window::Settings` --- winit/src/settings.rs | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) (limited to 'winit/src/settings.rs') diff --git a/winit/src/settings.rs b/winit/src/settings.rs index 13be3932..40b3d487 100644 --- a/winit/src/settings.rs +++ b/winit/src/settings.rs @@ -22,11 +22,11 @@ mod platform; pub use platform::PlatformSpecific; use crate::conversion; -use crate::core::window::Icon; +use crate::core::window::{Icon, Level}; use crate::Position; use winit::monitor::MonitorHandle; -use winit::window::{WindowBuilder, WindowLevel}; +use winit::window::WindowBuilder; use std::fmt; @@ -81,8 +81,8 @@ pub struct Window { /// Whether the window should be transparent. pub transparent: bool, - /// Whether the window will always be on top of other windows. - pub always_on_top: bool, + /// The window [`Level`]. + pub level: Level, /// The window icon, which is also usually used in the taskbar pub icon: Option, @@ -102,7 +102,7 @@ impl fmt::Debug for Window { .field("resizable", &self.resizable) .field("decorations", &self.decorations) .field("transparent", &self.transparent) - .field("always_on_top", &self.always_on_top) + .field("level", &self.level) .field("icon", &self.icon.is_some()) .field("platform_specific", &self.platform_specific) .finish() @@ -121,10 +121,6 @@ impl Window { let (width, height) = self.size; - let window_level = match self.always_on_top { - true => WindowLevel::AlwaysOnTop, - false => WindowLevel::Normal, - }; window_builder = window_builder .with_title(title) .with_inner_size(winit::dpi::LogicalSize { width, height }) @@ -132,7 +128,7 @@ impl Window { .with_decorations(self.decorations) .with_transparent(self.transparent) .with_window_icon(self.icon.and_then(conversion::icon)) - .with_window_level(window_level) + .with_window_level(conversion::window_level(self.level)) .with_visible(self.visible); if let Some(position) = conversion::position( @@ -211,7 +207,7 @@ impl Default for Window { resizable: true, decorations: true, transparent: false, - always_on_top: false, + level: Level::default(), icon: None, platform_specific: Default::default(), } -- cgit