summaryrefslogtreecommitdiffstats
path: root/winit/src/application.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector0193@gmail.com>2019-12-03 07:38:03 +0100
committerLibravatar GitHub <noreply@github.com>2019-12-03 07:38:03 +0100
commit60b32a9fed67acfd3e3ab8b9aa204853664ffd04 (patch)
tree1b4b177e0a16fca8be52791a6afb907c8d4ec82d /winit/src/application.rs
parentff0dc44cd7847bf6b1754b5f3b4d1ee53377bc49 (diff)
parent7756081fdbc93aee3f5d11fbd14e3d9f2cbefe57 (diff)
downloadiced-60b32a9fed67acfd3e3ab8b9aa204853664ffd04.tar.gz
iced-60b32a9fed67acfd3e3ab8b9aa204853664ffd04.tar.bz2
iced-60b32a9fed67acfd3e3ab8b9aa204853664ffd04.zip
Merge pull request #94 from hatoo/improve-setting
Improve window setting
Diffstat (limited to 'winit/src/application.rs')
-rw-r--r--winit/src/application.rs36
1 files changed, 25 insertions, 11 deletions
diff --git a/winit/src/application.rs b/winit/src/application.rs
index fb40156a..3772a667 100644
--- a/winit/src/application.rs
+++ b/winit/src/application.rs
@@ -96,17 +96,31 @@ pub trait Application: Sized {
let mut title = application.title();
- let (width, height) = settings.window.size;
-
- let window = WindowBuilder::new()
- .with_title(&title)
- .with_inner_size(winit::dpi::LogicalSize {
- width: f64::from(width),
- height: f64::from(height),
- })
- .with_resizable(settings.window.resizable)
- .build(&event_loop)
- .expect("Open window");
+ let window = {
+ let mut window_builder = WindowBuilder::new();
+
+ let (width, height) = settings.window.size;
+
+ window_builder = window_builder
+ .with_title(&title)
+ .with_inner_size(winit::dpi::LogicalSize {
+ width: f64::from(width),
+ height: f64::from(height),
+ })
+ .with_resizable(settings.window.resizable)
+ .with_decorations(settings.window.decorations);
+
+ #[cfg(target_os = "windows")]
+ {
+ use winit::platform::windows::WindowBuilderExtWindows;
+
+ if let Some(parent) = settings.window.platform_specific.parent {
+ window_builder = window_builder.with_parent_window(parent);
+ }
+ }
+
+ window_builder.build(&event_loop).expect("Open window")
+ };
let dpi = window.hidpi_factor();
let mut size = window.inner_size();