diff options
author | 2021-08-12 21:04:20 +0700 | |
---|---|---|
committer | 2021-08-12 21:04:20 +0700 | |
commit | 0f5242a728ea2b5853937ec5051e34c7d63c70bf (patch) | |
tree | a8ba5659b14beb2c5c70b57fa40372c1cb2672ca | |
parent | a7c40665fea1762aef87a82541cebf7a0b859220 (diff) | |
parent | e3f170a341f610ab9622e92dbd9d0593814f1a25 (diff) | |
download | iced-0f5242a728ea2b5853937ec5051e34c7d63c70bf.tar.gz iced-0f5242a728ea2b5853937ec5051e34c7d63c70bf.tar.bz2 iced-0f5242a728ea2b5853937ec5051e34c7d63c70bf.zip |
Merge pull request #654 from atbentley/hide-titlebar-macos
Hide titlebar on macos
-rw-r--r-- | winit/src/settings.rs | 23 | ||||
-rw-r--r-- | winit/src/settings/macos.rs | 13 | ||||
-rw-r--r-- | winit/src/settings/not_windows.rs | 6 | ||||
-rw-r--r-- | winit/src/settings/other.rs | 3 |
4 files changed, 37 insertions, 8 deletions
diff --git a/winit/src/settings.rs b/winit/src/settings.rs index 72a1a24a..045cb156 100644 --- a/winit/src/settings.rs +++ b/winit/src/settings.rs @@ -2,8 +2,13 @@ #[cfg(target_os = "windows")] #[path = "settings/windows.rs"] mod platform; -#[cfg(not(target_os = "windows"))] -#[path = "settings/not_windows.rs"] + +#[cfg(target_os = "macos")] +#[path = "settings/macos.rs"] +mod platform; + +#[cfg(not(any(target_os = "windows", target_os = "macos")))] +#[path = "settings/other.rs"] mod platform; pub use platform::PlatformSpecific; @@ -137,6 +142,20 @@ impl Window { .with_drag_and_drop(self.platform_specific.drag_and_drop); } + #[cfg(target_os = "macos")] + { + use winit::platform::macos::WindowBuilderExtMacOS; + + window_builder = window_builder + .with_title_hidden(self.platform_specific.title_hidden) + .with_titlebar_transparent( + self.platform_specific.titlebar_transparent, + ) + .with_fullsize_content_view( + self.platform_specific.fullsize_content_view, + ); + } + window_builder = window_builder .with_fullscreen(conversion::fullscreen(primary_monitor, mode)); diff --git a/winit/src/settings/macos.rs b/winit/src/settings/macos.rs new file mode 100644 index 00000000..ad4c8cae --- /dev/null +++ b/winit/src/settings/macos.rs @@ -0,0 +1,13 @@ +#![cfg(target_os = "macos")] +//! Platform specific settings for macOS. + +/// The platform specific window settings of an application. +#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)] +pub struct PlatformSpecific { + /// Hides the window title. + pub title_hidden: bool, + /// Makes the titlebar transparent and allows the content to appear behind it. + pub titlebar_transparent: bool, + /// Makes the window content appear behind the titlebar. + pub fullsize_content_view: bool, +} diff --git a/winit/src/settings/not_windows.rs b/winit/src/settings/not_windows.rs deleted file mode 100644 index 5d703f84..00000000 --- a/winit/src/settings/not_windows.rs +++ /dev/null @@ -1,6 +0,0 @@ -#![cfg(not(target_os = "windows"))] -//! Platform specific settings for not Windows. - -/// The platform specific window settings of an application. -#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)] -pub struct PlatformSpecific {} diff --git a/winit/src/settings/other.rs b/winit/src/settings/other.rs new file mode 100644 index 00000000..b1103f62 --- /dev/null +++ b/winit/src/settings/other.rs @@ -0,0 +1,3 @@ +/// The platform specific window settings of an application. +#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)] +pub struct PlatformSpecific; |