Remove From<NSApplicationActivationPolicy> impl from ActivationPolicy (#690)

* Remove From<NSApplicationActivationPolicy> impl from ActivationPolicy

* Update CHANGELOG
This commit is contained in:
Osspial 2018-11-05 18:54:22 -05:00 committed by Francesca Plebani
parent d2d127a4c4
commit 52e2748869
3 changed files with 11 additions and 16 deletions

View file

@ -25,6 +25,7 @@
- Add `PartialEq`, `Eq`, and `Hash` implementations on public types that could have them but were missing them. - Add `PartialEq`, `Eq`, and `Hash` implementations on public types that could have them but were missing them.
- On X11, drag-and-drop receiving an unsupported drop type can no longer cause the WM to freeze. - On X11, drag-and-drop receiving an unsupported drop type can no longer cause the WM to freeze.
- Fix issue whereby the OpenGL context would not appear at startup on macOS Mojave (#1069). - Fix issue whereby the OpenGL context would not appear at startup on macOS Mojave (#1069).
- **Breaking:** Removed `From<NSApplicationActivationPolicy>` impl from `ActivationPolicy` on macOS.
# Version 0.17.2 (2018-08-19) # Version 0.17.2 (2018-08-19)

View file

@ -1,8 +1,6 @@
#![cfg(target_os = "macos")] #![cfg(target_os = "macos")]
use std::convert::From;
use std::os::raw::c_void; use std::os::raw::c_void;
use cocoa::appkit::NSApplicationActivationPolicy;
use {LogicalSize, MonitorId, Window, WindowBuilder}; use {LogicalSize, MonitorId, Window, WindowBuilder};
/// Additional methods on `Window` that are specific to MacOS. /// Additional methods on `Window` that are specific to MacOS.
@ -47,19 +45,6 @@ impl Default for ActivationPolicy {
} }
} }
impl From<ActivationPolicy> for NSApplicationActivationPolicy {
fn from(activation_policy: ActivationPolicy) -> Self {
match activation_policy {
ActivationPolicy::Regular =>
NSApplicationActivationPolicy::NSApplicationActivationPolicyRegular,
ActivationPolicy::Accessory =>
NSApplicationActivationPolicy::NSApplicationActivationPolicyAccessory,
ActivationPolicy::Prohibited =>
NSApplicationActivationPolicy::NSApplicationActivationPolicyProhibited,
}
}
}
/// Additional methods on `WindowBuilder` that are specific to MacOS. /// Additional methods on `WindowBuilder` that are specific to MacOS.
/// ///
/// **Note:** Properties dealing with the titlebar will be overwritten by the `with_decorations` method /// **Note:** Properties dealing with the titlebar will be overwritten by the `with_decorations` method

View file

@ -16,6 +16,7 @@ use cocoa::appkit::{
NSWindow, NSWindow,
NSWindowButton, NSWindowButton,
NSWindowStyleMask, NSWindowStyleMask,
NSApplicationActivationPolicy,
}; };
use cocoa::base::{id, nil}; use cocoa::base::{id, nil};
use cocoa::foundation::{NSAutoreleasePool, NSDictionary, NSPoint, NSRect, NSSize, NSString}; use cocoa::foundation::{NSAutoreleasePool, NSDictionary, NSPoint, NSRect, NSSize, NSString};
@ -718,7 +719,15 @@ impl Window2 {
if app == nil { if app == nil {
None None
} else { } else {
app.setActivationPolicy_(activation_policy.into()); let ns_activation_policy = match activation_policy {
ActivationPolicy::Regular =>
NSApplicationActivationPolicy::NSApplicationActivationPolicyRegular,
ActivationPolicy::Accessory =>
NSApplicationActivationPolicy::NSApplicationActivationPolicyAccessory,
ActivationPolicy::Prohibited =>
NSApplicationActivationPolicy::NSApplicationActivationPolicyProhibited,
};
app.setActivationPolicy_(ns_activation_policy);
app.finishLaunching(); app.finishLaunching();
Some(app) Some(app)
} }