Index: chrome/browser/ui/panels/panel.cc |
diff --git a/chrome/browser/ui/panels/panel.cc b/chrome/browser/ui/panels/panel.cc |
index 102ac60b4b776d41e0bdcfedd18c66deb317eb8a..118d741303787fd7537f4412433bbf34639dd098 100644 |
--- a/chrome/browser/ui/panels/panel.cc |
+++ b/chrome/browser/ui/panels/panel.cc |
@@ -92,7 +92,14 @@ void Panel::SetBounds(const gfx::Rect& bounds) { |
// close on the first attempt. |
void Panel::Close() { |
native_panel_->ClosePanel(); |
+ |
+// TODO(dimich): Only implemented fully async on Mac. Need to update other |
+// platforms. The panel should be removed from PanelManager when and if it |
+// was actually closed. The closing can be cancelled because of onbeforeunload |
+// handler on the web page. |
+#if !defined(OS_MACOSX) |
manager()->Remove(this); |
+#endif |
} |
void Panel::Activate() { |