From 80aa399f8aff9325e5ea836217eaffb37189bf27 Mon Sep 17 00:00:00 2001 From: Shelley Vohr Date: Tue, 6 Feb 2018 09:16:22 -0500 Subject: [PATCH] updates to mac enable method --- atom/browser/native_window_mac.h | 1 + atom/browser/native_window_mac.mm | 9 +++++++-- docs/api/browser-window.md | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/atom/browser/native_window_mac.h b/atom/browser/native_window_mac.h index b52b5fe67b..16b393d1b2 100644 --- a/atom/browser/native_window_mac.h +++ b/atom/browser/native_window_mac.h @@ -38,6 +38,7 @@ class NativeWindowMac : public NativeWindow, void Hide() override; bool IsVisible() override; bool IsEnabled() override; + void SetEnabled(bool enable) override; void Maximize() override; void Unmaximize() override; bool IsMaximized() override; diff --git a/atom/browser/native_window_mac.mm b/atom/browser/native_window_mac.mm index 8234d7934b..ec873d2075 100644 --- a/atom/browser/native_window_mac.mm +++ b/atom/browser/native_window_mac.mm @@ -1045,6 +1045,8 @@ NativeWindowMac::NativeWindowMac( web_contents->GetWebContents()->GetRenderViewHost()); } +NSWindow* currentSheet; + NativeWindowMac::~NativeWindowMac() { [NSEvent removeMonitor:wheel_event_monitor_]; Observe(nullptr); @@ -1137,9 +1139,12 @@ bool NativeWindowMac::IsEnabled() { void NativeWindowMac::SetEnabled(bool enable) { if (enable) { - // TODO(codebytere): figure out how to implement window enabling + [window_ beginSheet: window_ completionHandler:^(NSModalResponse returnCode) { + NSLog(@"modal enabled"); + return; + }]; } else { - [window_ attachedSheet] = nil; + [window_ endSheet: [window_ attachedSheet]]; } } diff --git a/docs/api/browser-window.md b/docs/api/browser-window.md index cab2699000..cb5b895e9b 100644 --- a/docs/api/browser-window.md +++ b/docs/api/browser-window.md @@ -847,7 +847,7 @@ the supplied bounds. Returns [`Rectangle`](structures/rectangle.md) -### `win.setEnabled(enable)` +#### `win.setEnabled(enable)` * `enable` Boolean