mirror of
https://github.com/italicsjenga/winit-sonoma-fix.git
synced 2024-12-24 06:11:30 +11:00
Windows: Fix fullscreen deadlock + release 0.17.1 (#622)
* Windows: Fix fullscreen deadlock * Release winit 0.17.1
This commit is contained in:
parent
09550397d7
commit
b2b740fed7
|
@ -1,6 +1,9 @@
|
||||||
# Unreleased
|
# Unreleased
|
||||||
|
|
||||||
* On X11, prevent a compilation failure in release mode for versions of Rust greater than or equal to 1.30.
|
# Version 0.17.1 (2018-08-05)
|
||||||
|
|
||||||
|
- On X11, prevent a compilation failure in release mode for versions of Rust greater than or equal to 1.30.
|
||||||
|
- Fixed deadlock that broke fullscreen mode on Windows.
|
||||||
|
|
||||||
# Version 0.17.0 (2018-08-02)
|
# Version 0.17.0 (2018-08-02)
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "winit"
|
name = "winit"
|
||||||
version = "0.17.0"
|
version = "0.17.1"
|
||||||
authors = ["The winit contributors, Pierre Krieger <pierre.krieger1708@gmail.com>"]
|
authors = ["The winit contributors, Pierre Krieger <pierre.krieger1708@gmail.com>"]
|
||||||
description = "Cross-platform window creation library."
|
description = "Cross-platform window creation library."
|
||||||
keywords = ["windowing"]
|
keywords = ["windowing"]
|
||||||
|
|
|
@ -276,8 +276,8 @@ impl Window {
|
||||||
if mem::replace(&mut window_state.resizable, resizable) != resizable {
|
if mem::replace(&mut window_state.resizable, resizable) != resizable {
|
||||||
// If we're in fullscreen, update stored configuration but don't apply anything.
|
// If we're in fullscreen, update stored configuration but don't apply anything.
|
||||||
if window_state.fullscreen.is_none() {
|
if window_state.fullscreen.is_none() {
|
||||||
let mut style = unsafe {
|
let mut style = unsafe {
|
||||||
winuser::GetWindowLongW(self.window.0, winuser::GWL_STYLE)
|
winuser::GetWindowLongW(self.window.0, winuser::GWL_STYLE)
|
||||||
};
|
};
|
||||||
|
|
||||||
if resizable {
|
if resizable {
|
||||||
|
@ -473,7 +473,7 @@ impl Window {
|
||||||
unsafe fn set_fullscreen_style(&self, window_state: &mut WindowState) -> (LONG, LONG) {
|
unsafe fn set_fullscreen_style(&self, window_state: &mut WindowState) -> (LONG, LONG) {
|
||||||
if window_state.fullscreen.is_none() || window_state.saved_window_info.is_none() {
|
if window_state.fullscreen.is_none() || window_state.saved_window_info.is_none() {
|
||||||
let rect = util::get_window_rect(self.window.0).expect("`GetWindowRect` failed");
|
let rect = util::get_window_rect(self.window.0).expect("`GetWindowRect` failed");
|
||||||
let dpi_factor = Some(self.get_hidpi_factor());
|
let dpi_factor = Some(window_state.dpi_factor);
|
||||||
window_state.saved_window_info = Some(events_loop::SavedWindowInfo {
|
window_state.saved_window_info = Some(events_loop::SavedWindowInfo {
|
||||||
style: winuser::GetWindowLongW(self.window.0, winuser::GWL_STYLE),
|
style: winuser::GetWindowLongW(self.window.0, winuser::GWL_STYLE),
|
||||||
ex_style: winuser::GetWindowLongW(self.window.0, winuser::GWL_EXSTYLE),
|
ex_style: winuser::GetWindowLongW(self.window.0, winuser::GWL_EXSTYLE),
|
||||||
|
|
Loading…
Reference in a new issue