mirror of
https://github.com/italicsjenga/winit-sonoma-fix.git
synced 2024-12-28 08:01:30 +11:00
5bc3cf18d9
* Add exclusive fullscreen mode * Add `WindowExtMacOS::set_fullscreen_presentation_options` * Capture display for exclusive fullscreen on macOS * Fix applying video mode on macOS after a fullscreen cycle * Fix compilation on iOS * Set monitor appropriately for fullscreen on macOS * Fix exclusive to borderless fullscreen transitions on macOS * Fix borderless to exclusive fullscreen transition on macOS * Sort video modes on Windows * Fix fullscreen issues on Windows * Fix video mode changes during exclusive fullscreen on Windows * Add video mode sorting for macOS and iOS * Fix monitor `ns_screen` returning `None` after video mode change * Fix "multithreaded" example on macOS * Restore video mode upon closing an exclusive fullscreen window * Fix "multithreaded" example closing multiple windows at once * Fix compilation on Linux * Update FEATURES.md * Don't care about logical monitor groups on X11 * Add exclusive fullscreen for X11 * Update FEATURES.md * Fix transitions between exclusive and borderless fullscreen on X11 * Update CHANGELOG.md * Document that Wayland doesn't support exclusive fullscreen * Replace core-graphics display mode bindings on macOS * Use `panic!()` instead of `unreachable!()` in "fullscreen" example * Fix fullscreen "always on top" flag on Windows * Track current monitor for fullscreen in "multithreaded" example * Fix exclusive fullscreen sometimes not positioning window properly * Format * More formatting and fix CI issues * Fix formatting * Fix changelog formatting
42 lines
904 B
Rust
42 lines
904 B
Rust
#![cfg(any(target_os = "linux", target_os = "dragonfly", target_os = "freebsd",
|
|
target_os = "netbsd", target_os = "openbsd"))]
|
|
|
|
pub use self::{
|
|
event_loop::{
|
|
EventLoop, EventLoopProxy, EventLoopWindowTarget, MonitorHandle, VideoMode,
|
|
WindowEventsSink,
|
|
},
|
|
window::Window,
|
|
};
|
|
|
|
use smithay_client_toolkit::reexports::client::protocol::wl_surface;
|
|
|
|
mod event_loop;
|
|
mod keyboard;
|
|
mod pointer;
|
|
mod touch;
|
|
mod window;
|
|
|
|
#[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
|
|
pub struct DeviceId;
|
|
|
|
impl DeviceId {
|
|
pub unsafe fn dummy() -> Self {
|
|
DeviceId
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
|
|
pub struct WindowId(usize);
|
|
|
|
impl WindowId {
|
|
pub unsafe fn dummy() -> Self {
|
|
WindowId(0)
|
|
}
|
|
}
|
|
|
|
#[inline]
|
|
fn make_wid(s: &wl_surface::WlSurface) -> WindowId {
|
|
WindowId(s.as_ref().c_ptr() as usize)
|
|
}
|