macOS: fix subtle regression introduced in 0474dc986 (#487)

* macOS: fix subtle regression introduced in 0474dc986

* update changelog
This commit is contained in:
Joe Moon 2018-04-27 21:12:50 -07:00 committed by Francesca Frangipane
parent 7aeb2c083b
commit 5761fb6b30
2 changed files with 11 additions and 12 deletions

View file

@ -1,5 +1,6 @@
# Unreleased
- Fix regression of Window platform extensions for macOS where `NSFullSizeContentViewWindowMask` was not being correctly applied to `.fullsize_content_view`.
- Corrected `get_position` on Windows to be relative to the screen rather than to the taskbar.
- Corrected `Moved` event on Windows to use position values equivalent to those returned by `get_position`. It previously supplied client area positions instead of window positions, and would additionally interpret negative values as being very large (around `u16::MAX`).
- Implemented `Moved` event on macOS.

View file

@ -661,8 +661,8 @@ impl Window2 {
let masks = if pl_attrs.titlebar_hidden {
NSWindowStyleMask::NSBorderlessWindowMask |
NSWindowStyleMask::NSResizableWindowMask
} else if pl_attrs.titlebar_transparent {
// Window2 with a transparent titlebar and regular content view
} else if !pl_attrs.titlebar_transparent {
// Window2 with a titlebar
NSWindowStyleMask::NSClosableWindowMask |
NSWindowStyleMask::NSMiniaturizableWindowMask |
NSWindowStyleMask::NSResizableWindowMask |
@ -674,17 +674,15 @@ impl Window2 {
NSWindowStyleMask::NSResizableWindowMask |
NSWindowStyleMask::NSTitledWindowMask |
NSWindowStyleMask::NSFullSizeContentViewWindowMask
} else {
if !attrs.decorations && !screen.is_some() {
} else if !attrs.decorations && !screen.is_some() {
// Window2 without a titlebar
NSWindowStyleMask::NSBorderlessWindowMask
} else {
// Window2 with a titlebar
// Window2 with a transparent titlebar and regular content view
NSWindowStyleMask::NSClosableWindowMask |
NSWindowStyleMask::NSMiniaturizableWindowMask |
NSWindowStyleMask::NSResizableWindowMask |
NSWindowStyleMask::NSTitledWindowMask
}
};
let winit_window = Class::get("WinitWindow").unwrap_or_else(|| {