Index: ui/views/cocoa/bridged_native_widget.mm |
diff --git a/ui/views/cocoa/bridged_native_widget.mm b/ui/views/cocoa/bridged_native_widget.mm |
index b0ab01429cdce334feb89a25766c3dd61b38532a..1ddac6e27c2db91fec37f08e7134a3a64904b959 100644 |
--- a/ui/views/cocoa/bridged_native_widget.mm |
+++ b/ui/views/cocoa/bridged_native_widget.mm |
@@ -707,8 +707,10 @@ NSComparisonResult SubviewSorter(NSViewComparatorValue lhs, |
parent_->RemoveChildWindow(this); |
parent_ = nullptr; |
} |
- [window_ setDelegate:nil]; |
[[NSNotificationCenter defaultCenter] removeObserver:window_delegate_]; |
+ // Note this also clears the NSWindow delegate, after informing Widget |
+ // delegates about the closure. NativeWidgetMac then deletes |this| before |
+ // returning. |
native_widget_mac_->OnWindowWillClose(); |
} |