Merge branch 'master' into improvement/viewport-aware-drawing
This commit is contained in:
commit
3a0eea0dcd
|
@ -183,6 +183,10 @@ where
|
|||
}
|
||||
|
||||
pub(crate) fn hash_layout(&self, state: &mut Hasher) {
|
||||
if let Some(title_bar) = &self.title_bar {
|
||||
title_bar.hash_layout(state);
|
||||
}
|
||||
|
||||
self.body.hash_layout(state);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
use crate::layout;
|
||||
use crate::pane_grid;
|
||||
use crate::{Clipboard, Element, Event, Layout, Point, Rectangle, Size};
|
||||
use crate::{
|
||||
Clipboard, Element, Event, Hasher, Layout, Point, Rectangle, Size,
|
||||
};
|
||||
|
||||
/// The title bar of a [`Pane`].
|
||||
///
|
||||
|
@ -176,6 +178,14 @@ where
|
|||
}
|
||||
}
|
||||
|
||||
pub(crate) fn hash_layout(&self, hasher: &mut Hasher) {
|
||||
use std::hash::Hash;
|
||||
|
||||
self.title.hash(hasher);
|
||||
self.title_size.hash(hasher);
|
||||
self.padding.hash(hasher);
|
||||
}
|
||||
|
||||
pub(crate) fn layout(
|
||||
&self,
|
||||
renderer: &Renderer,
|
||||
|
|
|
@ -18,6 +18,9 @@ pub struct Settings {
|
|||
/// Whether the window should have a border, a title bar, etc. or not.
|
||||
pub decorations: bool,
|
||||
|
||||
/// Whether the window should be transparent
|
||||
pub transparent: bool,
|
||||
|
||||
/// The icon of the window.
|
||||
pub icon: Option<Icon>,
|
||||
}
|
||||
|
@ -30,6 +33,7 @@ impl Default for Settings {
|
|||
max_size: None,
|
||||
resizable: true,
|
||||
decorations: true,
|
||||
transparent: false,
|
||||
icon: None,
|
||||
}
|
||||
}
|
||||
|
@ -44,6 +48,7 @@ impl From<Settings> for iced_winit::settings::Window {
|
|||
max_size: settings.max_size,
|
||||
resizable: settings.resizable,
|
||||
decorations: settings.decorations,
|
||||
transparent: settings.transparent,
|
||||
icon: settings.icon.map(Icon::into),
|
||||
platform_specific: Default::default(),
|
||||
}
|
||||
|
|
|
@ -45,6 +45,9 @@ pub struct Window {
|
|||
/// Whether the window should have a border, a title bar, etc.
|
||||
pub decorations: bool,
|
||||
|
||||
/// Whether the window should be transparent
|
||||
pub transparent: bool,
|
||||
|
||||
/// The window icon, which is also usually used in the taskbar
|
||||
pub icon: Option<winit::window::Icon>,
|
||||
|
||||
|
@ -69,6 +72,7 @@ impl Window {
|
|||
.with_inner_size(winit::dpi::LogicalSize { width, height })
|
||||
.with_resizable(self.resizable)
|
||||
.with_decorations(self.decorations)
|
||||
.with_transparent(self.transparent)
|
||||
.with_window_icon(self.icon)
|
||||
.with_fullscreen(conversion::fullscreen(primary_monitor, mode));
|
||||
|
||||
|
@ -103,6 +107,7 @@ impl Default for Window {
|
|||
max_size: None,
|
||||
resizable: true,
|
||||
decorations: true,
|
||||
transparent: false,
|
||||
icon: None,
|
||||
platform_specific: Default::default(),
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue