13551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file. 42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 53551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "content/shell/browser/shell_web_contents_view_delegate.h" 62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "base/command_line.h" 82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "content/public/browser/android/content_view_core.h" 92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "content/public/browser/web_contents.h" 102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "content/public/common/context_menu_params.h" 113551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "content/shell/browser/shell_web_contents_view_delegate_creator.h" 122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace content { 142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)WebContentsViewDelegate* CreateShellWebContentsViewDelegate( 162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) WebContents* web_contents) { 172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) return new ShellWebContentsViewDelegate(web_contents); 182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)ShellWebContentsViewDelegate::ShellWebContentsViewDelegate( 222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) WebContents* web_contents) 232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) : web_contents_(web_contents) { 242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)ShellWebContentsViewDelegate::~ShellWebContentsViewDelegate() { 272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void ShellWebContentsViewDelegate::ShowContextMenu( 305d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) RenderFrameHost* render_frame_host, 317d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles) const ContextMenuParams& params) { 322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) if (params.is_editable && params.selection_text.empty()) { 332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) content::ContentViewCore* content_view_core = 34c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) ContentViewCore::FromWebContents(web_contents_); 352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) if (content_view_core) { 362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) content_view_core->ShowPastePopup(params.selection_start.x(), 372a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) params.selection_start.y()); 382a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 392a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) } 402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} 412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)} // namespace content 43