13551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 53551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#ifndef CONTENT_SHELL_BROWSER_SHELL_WEB_CONTENTS_VIEW_DELEGATE_H_ 63551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#define CONTENT_SHELL_BROWSER_SHELL_WEB_CONTENTS_VIEW_DELEGATE_H_ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/public/browser/web_contents.h" 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/public/browser/web_contents_view_delegate.h" 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/public/common/context_menu_params.h" 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace content { 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)class ShellWebContentsViewDelegate : public WebContentsViewDelegate { 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) public: 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) explicit ShellWebContentsViewDelegate(WebContents* web_contents); 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) virtual ~ShellWebContentsViewDelegate(); 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) // Overridden from WebContentsViewDelegate: 205d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) virtual void ShowContextMenu(RenderFrameHost* render_frame_host, 215d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) const ContextMenuParams& params) OVERRIDE; 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 23a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch#if defined(OS_MACOSX) 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) void ActionPerformed(int id); 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#elif defined(OS_WIN) 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) void MenuItemSelected(int selection); 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 291320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#if defined(TOOLKIT_VIEWS) 301320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci virtual void ShowDisambiguationPopup( 311320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const gfx::Rect& target_rect, 321320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const SkBitmap& zoomed_bitmap, 331320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const gfx::NativeView content, 341320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const base::Callback<void(ui::GestureEvent*)>& gesture_cb, 351320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci const base::Callback<void(ui::MouseEvent*)>& mouse_cb) OVERRIDE; 361320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 371320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci virtual void HideDisambiguationPopup() OVERRIDE; 381320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#endif 391320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) private: 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) WebContents* web_contents_; 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ContextMenuParams params_; 435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) DISALLOW_COPY_AND_ASSIGN(ShellWebContentsViewDelegate); 455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace content 485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 493551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#endif // CONTENT_SHELL_BROWSER_SHELL_WEB_CONTENTS_VIEW_DELEGATE_H_ 50