summaryrefslogtreecommitdiffstats
path: root/winit
diff options
context:
space:
mode:
authorLibravatar Andrew Bentley <andrew@bentley.codes>2020-12-06 11:13:53 +0100
committerLibravatar Héctor Ramón Jiménez <hector0193@gmail.com>2021-08-12 20:44:11 +0700
commitbbe5fe9d71eb3b53ce4e84e43ca9ecc1e95bf1b2 (patch)
tree3952ebbabcf6de5285ea45436f8c138b2efe8671 /winit
parenta7c40665fea1762aef87a82541cebf7a0b859220 (diff)
downloadiced-bbe5fe9d71eb3b53ce4e84e43ca9ecc1e95bf1b2.tar.gz
iced-bbe5fe9d71eb3b53ce4e84e43ca9ecc1e95bf1b2.tar.bz2
iced-bbe5fe9d71eb3b53ce4e84e43ca9ecc1e95bf1b2.zip
Add PlatformSpecific winit settings for macOS
Diffstat (limited to 'winit')
-rw-r--r--winit/src/settings.rs22
-rw-r--r--winit/src/settings/macos.rs13
-rw-r--r--winit/src/settings/other.rs (renamed from winit/src/settings/not_windows.rs)3
3 files changed, 32 insertions, 6 deletions
diff --git a/winit/src/settings.rs b/winit/src/settings.rs
index 72a1a24a..4ea61d61 100644
--- a/winit/src/settings.rs
+++ b/winit/src/settings.rs
@@ -2,10 +2,12 @@
#[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;
use crate::conversion;
@@ -137,6 +139,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/other.rs
index 5d703f84..a25beed0 100644
--- a/winit/src/settings/not_windows.rs
+++ b/winit/src/settings/other.rs
@@ -1,6 +1,3 @@
-#![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 {}