Chromium Code Reviews| Index: chrome/browser/ui/views/infobars/infobar_view.cc |
| diff --git a/chrome/browser/ui/views/infobars/infobar_view.cc b/chrome/browser/ui/views/infobars/infobar_view.cc |
| index 8faa905a9dfc4a60100ab33d6db12678f2ab148e..2da2235aadcd039838704ae9504b22ddc31596a2 100644 |
| --- a/chrome/browser/ui/views/infobars/infobar_view.cc |
| +++ b/chrome/browser/ui/views/infobars/infobar_view.cc |
| @@ -210,7 +210,10 @@ void InfoBarView::Layout() { |
| void InfoBarView::ViewHierarchyChanged(bool is_add, View* parent, View* child) { |
| View::ViewHierarchyChanged(is_add, parent, child); |
| - if (is_add && (child == this) && (close_button_ == NULL)) { |
| + if (!is_add && (child == this)) { |
| + // We're being removed. Cancel any menus we may have open. |
|
Peter Kasting
2011/09/12 18:06:00
Do this at the top of PlatformSpecificHide() inste
|
| + CancelMenu(); |
| + } else if (is_add && (child == this) && (close_button_ == NULL)) { |
| gfx::Image* image = delegate()->GetIcon(); |
| if (image) { |
| icon_ = new views::ImageView; |