Expose window::Mode in iced

Although the Fullscreen API in the Web platform has some limitations, it
is still useful to be able to support fullscreen on the native side.
This commit is contained in:
Héctor Ramón Jiménez 2020-01-16 05:54:22 +01:00
parent d6b20d3e79
commit c96492b956
11 changed files with 81 additions and 42 deletions

9
src/window/mode.rs Normal file
View file

@ -0,0 +1,9 @@
/// The mode of a window-based application.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum Mode {
/// The application appears in its own window.
Windowed,
/// The application takes the whole screen of its current monitor.
Fullscreen,
}

22
src/window/settings.rs Normal file
View file

@ -0,0 +1,22 @@
/// The window settings of an application.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct Settings {
/// The size of the window.
pub size: (u32, u32),
/// Whether the window should be resizable or not.
pub resizable: bool,
/// Whether the window should have a border, a title bar, etc. or not.
pub decorations: bool,
}
impl Default for Settings {
fn default() -> Settings {
Settings {
size: (1024, 768),
resizable: true,
decorations: true,
}
}
}