Home | History | Annotate | Download | only in test
      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