summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector0193@gmail.com>2021-08-12 21:04:20 +0700
committerLibravatar GitHub <noreply@github.com>2021-08-12 21:04:20 +0700
commit0f5242a728ea2b5853937ec5051e34c7d63c70bf (patch)
treea8ba5659b14beb2c5c70b57fa40372c1cb2672ca
parenta7c40665fea1762aef87a82541cebf7a0b859220 (diff)
parente3f170a341f610ab9622e92dbd9d0593814f1a25 (diff)
downloadiced-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.rs23
-rw-r--r--winit/src/settings/macos.rs13
-rw-r--r--winit/src/settings/not_windows.rs6
-rw-r--r--winit/src/settings/other.rs3
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;