Index: chrome/browser/ui/views/infobars/after_translate_infobar.cc |
diff --git a/chrome/browser/ui/views/infobars/after_translate_infobar.cc b/chrome/browser/ui/views/infobars/after_translate_infobar.cc |
index 43803afdd4bd0f86c6070064d750519a291c3904..239f615ded0cfd72b36ce5f04ee7d4973b67cf1e 100644 |
--- a/chrome/browser/ui/views/infobars/after_translate_infobar.cc |
+++ b/chrome/browser/ui/views/infobars/after_translate_infobar.cc |
@@ -11,9 +11,6 @@ |
#include "views/controls/button/menu_button.h" |
#include "views/controls/label.h" |
#include "views/controls/menu/menu_item_view.h" |
-#include "views/controls/menu/menu_model_adapter.h" |
-#include "views/controls/menu/menu_runner.h" |
-#include "views/widget/widget.h" |
AfterTranslateInfoBar::AfterTranslateInfoBar( |
TabContentsWrapper* owner, |
@@ -167,20 +164,21 @@ void AfterTranslateInfoBar::TargetLanguageChanged() { |
void AfterTranslateInfoBar::RunMenu(View* source, const gfx::Point& pt) { |
ui::MenuModel* menu_model = NULL; |
+ views::MenuButton* button = NULL; |
+ views::MenuItemView::AnchorPosition anchor = views::MenuItemView::TOPLEFT; |
if (source == original_language_menu_button_) { |
menu_model = &original_language_menu_model_; |
+ button = original_language_menu_button_; |
} else if (source == target_language_menu_button_) { |
menu_model = &target_language_menu_model_; |
+ button = target_language_menu_button_; |
} else { |
DCHECK_EQ(options_menu_button_, source); |
menu_model = &options_menu_model_; |
+ button = options_menu_button_; |
+ anchor = views::MenuItemView::TOPRIGHT; |
} |
- views::MenuModelAdapter menu_model_adapter(menu_model); |
- menu_runner_.reset(new views::MenuRunner(menu_model_adapter.CreateMenu())); |
- if (menu_runner_->RunMenuAt( |
- source->GetWidget(), NULL, gfx::Rect(pt, gfx::Size()), |
- views::MenuItemView::TOPRIGHT, views::MenuRunner::HAS_MNEMONICS) == |
- views::MenuRunner::MENU_DELETED) |
+ if (RunMenuAt(menu_model, button, anchor) == views::MenuRunner::MENU_DELETED) |
Peter Kasting
2011/09/15 21:43:12
Nit: This conditional makes no sense. We're going
|
return; |
} |