Index: chrome/browser/ui/views/tab_contents/render_view_context_menu_views.cc |
diff --git a/chrome/browser/ui/views/tab_contents/render_view_context_menu_views.cc b/chrome/browser/ui/views/tab_contents/render_view_context_menu_views.cc |
index fc54bc19c719e68a1ed2694f380d4555818b1aaf..548d0c277ddb4bc6d5f3c55c2dde92364bc71e39 100644 |
--- a/chrome/browser/ui/views/tab_contents/render_view_context_menu_views.cc |
+++ b/chrome/browser/ui/views/tab_contents/render_view_context_menu_views.cc |
@@ -42,10 +42,15 @@ RenderViewContextMenuViews* RenderViewContextMenuViews::Create( |
} |
#endif // OS_WIN |
-void RenderViewContextMenuViews::RunMenuAt(views::Widget* parent, |
- const gfx::Point& point) { |
+void RenderViewContextMenuViews::RunMenuAt( |
+ views::Widget* parent, |
+ const gfx::Point& point, |
+ const content::ContextMenuSourceType& type) { |
+ views::MenuItemView::AnchorPosition anchor_position = |
+ type == content::CONTEXT_MENU_SOURCE_TOUCH ? |
+ views::MenuItemView::BOTTOMCENTER : views::MenuItemView::TOPLEFT; |
if (menu_runner_->RunMenuAt(parent, NULL, gfx::Rect(point, gfx::Size()), |
- views::MenuItemView::TOPLEFT, views::MenuRunner::HAS_MNEMONICS | |
+ anchor_position, views::MenuRunner::HAS_MNEMONICS | |
views::MenuRunner::CONTEXT_MENU) == |
views::MenuRunner::MENU_DELETED) |
return; |