1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "content/shell/browser/shell_web_contents_view_delegate.h"
7 #include "base/command_line.h"
8 #include "content/public/browser/android/content_view_core.h"
9 #include "content/public/browser/web_contents.h"
10 #include "content/public/common/context_menu_params.h"
11 #include "content/shell/browser/shell_web_contents_view_delegate_creator.h"
15 WebContentsViewDelegate
* CreateShellWebContentsViewDelegate(
16 WebContents
* web_contents
) {
17 return new ShellWebContentsViewDelegate(web_contents
);
21 ShellWebContentsViewDelegate::ShellWebContentsViewDelegate(
22 WebContents
* web_contents
)
23 : web_contents_(web_contents
) {
26 ShellWebContentsViewDelegate::~ShellWebContentsViewDelegate() {
29 void ShellWebContentsViewDelegate::ShowContextMenu(
30 RenderFrameHost
* render_frame_host
,
31 const ContextMenuParams
& params
) {
32 if (params
.is_editable
&& params
.selection_text
.empty()) {
33 content::ContentViewCore
* content_view_core
=
34 ContentViewCore::FromWebContents(web_contents_
);
35 if (content_view_core
) {
36 content_view_core
->ShowPastePopup(params
.selection_start
.x(),
37 params
.selection_start
.y());
42 } // namespace content