Home | History | Annotate | Download | only in shell
      1 // Copyright (c) 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.
      4 
      5 #include "content/shell/shell_web_contents_view_delegate.h"
      6 
      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/browser/web_contents_view.h"
     11 #include "content/public/common/context_menu_params.h"
     12 #include "content/shell/shell_web_contents_view_delegate_creator.h"
     13 
     14 namespace content {
     15 
     16 WebContentsViewDelegate* CreateShellWebContentsViewDelegate(
     17     WebContents* web_contents) {
     18   return new ShellWebContentsViewDelegate(web_contents);
     19 }
     20 
     21 
     22 ShellWebContentsViewDelegate::ShellWebContentsViewDelegate(
     23     WebContents* web_contents)
     24     : web_contents_(web_contents) {
     25 }
     26 
     27 ShellWebContentsViewDelegate::~ShellWebContentsViewDelegate() {
     28 }
     29 
     30 void ShellWebContentsViewDelegate::ShowContextMenu(
     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());
     38     }
     39   }
     40 }
     41 
     42 WebDragDestDelegate* ShellWebContentsViewDelegate::GetDragDestDelegate() {
     43   return NULL;
     44 }
     45 
     46 }  // namespace content
     47