1 // Copyright (c) 2012 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 #ifndef CONTENT_TEST_TEST_WEB_CONTENTS_VIEW_H_ 6 #define CONTENT_TEST_TEST_WEB_CONTENTS_VIEW_H_ 7 8 #include "base/compiler_specific.h" 9 #include "content/port/browser/render_view_host_delegate_view.h" 10 #include "content/port/browser/web_contents_view_port.h" 11 12 namespace content { 13 14 class TestWebContentsView : public WebContentsViewPort, 15 public RenderViewHostDelegateView { 16 public: 17 TestWebContentsView(); 18 virtual ~TestWebContentsView(); 19 20 // RenderViewHostDelegateView: 21 virtual void ShowPopupMenu(const gfx::Rect& bounds, 22 int item_height, 23 double item_font_size, 24 int selected_item, 25 const std::vector<MenuItem>& items, 26 bool right_aligned, 27 bool allow_multiple_selection) OVERRIDE; 28 virtual void StartDragging(const DropData& drop_data, 29 blink::WebDragOperationsMask allowed_ops, 30 const gfx::ImageSkia& image, 31 const gfx::Vector2d& image_offset, 32 const DragEventSourceInfo& event_info) OVERRIDE; 33 virtual void UpdateDragCursor(blink::WebDragOperation operation) OVERRIDE; 34 virtual void GotFocus() OVERRIDE; 35 virtual void TakeFocus(bool reverse) OVERRIDE; 36 37 // WebContentsView: 38 virtual gfx::NativeView GetNativeView() const OVERRIDE; 39 virtual gfx::NativeView GetContentNativeView() const OVERRIDE; 40 virtual gfx::NativeWindow GetTopLevelNativeWindow() const OVERRIDE; 41 virtual void GetContainerBounds(gfx::Rect *out) const OVERRIDE; 42 virtual void OnTabCrashed(base::TerminationStatus status, 43 int error_code) OVERRIDE; 44 virtual void SizeContents(const gfx::Size& size) OVERRIDE; 45 virtual void Focus() OVERRIDE; 46 virtual void SetInitialFocus() OVERRIDE; 47 virtual void StoreFocus() OVERRIDE; 48 virtual void RestoreFocus() OVERRIDE; 49 virtual DropData* GetDropData() const OVERRIDE; 50 virtual gfx::Rect GetViewBounds() const OVERRIDE; 51 #if defined(OS_MACOSX) 52 virtual void SetAllowOverlappingViews(bool overlapping) OVERRIDE; 53 virtual bool GetAllowOverlappingViews() const OVERRIDE; 54 virtual void SetOverlayView(WebContentsView* overlay, 55 const gfx::Point& offset) OVERRIDE; 56 virtual void RemoveOverlayView() OVERRIDE; 57 #endif 58 59 // WebContentsViewPort: 60 virtual void CreateView(const gfx::Size& initial_size, 61 gfx::NativeView context) OVERRIDE; 62 virtual RenderWidgetHostView* CreateViewForWidget( 63 RenderWidgetHost* render_widget_host) OVERRIDE; 64 virtual RenderWidgetHostView* CreateViewForPopupWidget( 65 RenderWidgetHost* render_widget_host) OVERRIDE; 66 virtual void SetPageTitle(const base::string16& title) OVERRIDE; 67 virtual void RenderViewCreated(RenderViewHost* host) OVERRIDE; 68 virtual void RenderViewSwappedIn(RenderViewHost* host) OVERRIDE; 69 virtual void SetOverscrollControllerEnabled(bool enabled) OVERRIDE; 70 #if defined(OS_MACOSX) 71 virtual bool IsEventTracking() const OVERRIDE; 72 virtual void CloseTabAfterEventTracking() OVERRIDE; 73 #endif 74 75 private: 76 DISALLOW_COPY_AND_ASSIGN(TestWebContentsView); 77 }; 78 79 } // namespace content 80 81 #endif // CONTENT_TEST_TEST_WEB_CONTENTS_VIEW_H_ 82