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 #ifndef CONTENT_SHELL_BROWSER_SHELL_WEB_CONTENTS_VIEW_DELEGATE_H_
6 #define CONTENT_SHELL_BROWSER_SHELL_WEB_CONTENTS_VIEW_DELEGATE_H_
8 #include "content/public/browser/web_contents.h"
9 #include "content/public/browser/web_contents_view_delegate.h"
10 #include "content/public/common/context_menu_params.h"
14 class ShellWebContentsViewDelegate : public WebContentsViewDelegate {
16 explicit ShellWebContentsViewDelegate(WebContents* web_contents);
17 virtual ~ShellWebContentsViewDelegate();
19 // Overridden from WebContentsViewDelegate:
20 virtual void ShowContextMenu(RenderFrameHost* render_frame_host,
21 const ContextMenuParams& params) OVERRIDE;
22 virtual WebDragDestDelegate* GetDragDestDelegate() OVERRIDE;
24 #if defined(OS_MACOSX)
25 virtual NSObject<RenderWidgetHostViewMacDelegate>*
26 CreateRenderWidgetHostViewDelegate(
27 RenderWidgetHost* render_widget_host) OVERRIDE;
28 void ActionPerformed(int id);
30 virtual void StoreFocus() OVERRIDE;
31 virtual void RestoreFocus() OVERRIDE;
32 virtual bool Focus() OVERRIDE;
33 virtual void TakeFocus(bool reverse) OVERRIDE;
34 virtual void SizeChanged(const gfx::Size& size) OVERRIDE;
35 void MenuItemSelected(int selection);
39 WebContents* web_contents_;
40 ContextMenuParams params_;
42 DISALLOW_COPY_AND_ASSIGN(ShellWebContentsViewDelegate);
45 } // namespace content
47 #endif // CONTENT_SHELL_BROWSER_SHELL_WEB_CONTENTS_VIEW_DELEGATE_H_