| Index: chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.cc
|
| diff --git a/chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.cc b/chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.cc
|
| index b9df373df40af6b095003a70d1ba0b7788691b57..3c47e03c328bda0ed954a0cb74ab534e9f79daca 100644
|
| --- a/chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.cc
|
| +++ b/chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.cc
|
| @@ -16,6 +16,7 @@
|
| #include "ui/events/keycodes/keyboard_codes.h"
|
| #include "ui/gfx/point.h"
|
| #include "ui/views/controls/menu/menu_item_view.h"
|
| +#include "ui/views/controls/menu/menu_model_adapter.h"
|
| #include "ui/views/controls/menu/menu_runner.h"
|
|
|
| using content::WebContents;
|
| @@ -27,7 +28,8 @@ RenderViewContextMenuViews::RenderViewContextMenuViews(
|
| content::RenderFrameHost* render_frame_host,
|
| const content::ContextMenuParams& params)
|
| : RenderViewContextMenu(render_frame_host, params),
|
| - bidi_submenu_model_(this) {
|
| + bidi_submenu_model_(this),
|
| + menu_view_(NULL) {
|
| }
|
|
|
| RenderViewContextMenuViews::~RenderViewContextMenuViews() {
|
| @@ -58,8 +60,10 @@ void RenderViewContextMenuViews::RunMenuAt(views::Widget* parent,
|
| // RenderViewContextMenuViews, protected:
|
|
|
| void RenderViewContextMenuViews::PlatformInit() {
|
| + menu_adapter_.reset(new views::MenuModelAdapter(&menu_model_));
|
| + menu_view_ = menu_adapter_->CreateMenu();
|
| menu_runner_.reset(new views::MenuRunner(
|
| - &menu_model_,
|
| + menu_view_,
|
| views::MenuRunner::HAS_MNEMONICS | views::MenuRunner::CONTEXT_MENU));
|
| }
|
|
|
| @@ -191,8 +195,7 @@ void RenderViewContextMenuViews::UpdateMenuItem(int command_id,
|
| bool enabled,
|
| bool hidden,
|
| const base::string16& title) {
|
| - views::MenuItemView* item =
|
| - menu_runner_->GetMenu()->GetMenuItemByID(command_id);
|
| + views::MenuItemView* item = menu_view_->GetMenuItemByID(command_id);
|
| if (!item)
|
| return;
|
|
|
|
|