| Index: chrome/browser/ui/views/tab_contents/tab_contents_view_gtk.h
|
| ===================================================================
|
| --- chrome/browser/ui/views/tab_contents/tab_contents_view_gtk.h (revision 85284)
|
| +++ chrome/browser/ui/views/tab_contents/tab_contents_view_gtk.h (working copy)
|
| @@ -1,143 +0,0 @@
|
| -// Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#ifndef CHROME_BROWSER_UI_VIEWS_TAB_CONTENTS_TAB_CONTENTS_VIEW_GTK_H_
|
| -#define CHROME_BROWSER_UI_VIEWS_TAB_CONTENTS_TAB_CONTENTS_VIEW_GTK_H_
|
| -#pragma once
|
| -
|
| -#include <vector>
|
| -
|
| -#include "base/memory/scoped_ptr.h"
|
| -#include "content/browser/tab_contents/tab_contents_view.h"
|
| -#include "ui/gfx/size.h"
|
| -#include "views/widget/widget_gtk.h"
|
| -
|
| -class ConstrainedWindowGtk;
|
| -typedef struct _GtkFloatingContainer GtkFloatingContainer;
|
| -class RenderViewContextMenuViews;
|
| -class SadTabView;
|
| -class SkBitmap;
|
| -class TabContentsDragSource;
|
| -class WebDragDestGtk;
|
| -namespace gfx {
|
| -class Point;
|
| -}
|
| -namespace views {
|
| -class NativeViewHost;
|
| -}
|
| -
|
| -// Gtk-specific implementation of the TabContentsView for the views-based front
|
| -// end. It is a WidgetGtk that contains all of the contents of the tab and
|
| -// associated child views.
|
| -class TabContentsViewGtk : public TabContentsView,
|
| - public views::WidgetGtk {
|
| - public:
|
| - // The corresponding TabContents is passed in the constructor, and manages our
|
| - // lifetime. This doesn't need to be the case, but is this way currently
|
| - // because that's what was easiest when they were split.
|
| - explicit TabContentsViewGtk(TabContents* tab_contents);
|
| - virtual ~TabContentsViewGtk();
|
| -
|
| - // Unlike Windows, ConstrainedWindows need to collaborate with the
|
| - // TabContentsViewGtk to position the dialogs.
|
| - void AttachConstrainedWindow(ConstrainedWindowGtk* constrained_window);
|
| - void RemoveConstrainedWindow(ConstrainedWindowGtk* constrained_window);
|
| -
|
| - gboolean OnMouseMove(GtkWidget* widget, GdkEventMotion* event);
|
| -
|
| - // TabContentsView implementation --------------------------------------------
|
| -
|
| - virtual void CreateView(const gfx::Size& initial_size);
|
| - virtual RenderWidgetHostView* CreateViewForWidget(
|
| - RenderWidgetHost* render_widget_host);
|
| - virtual gfx::NativeView GetNativeView() const;
|
| - virtual gfx::NativeView GetContentNativeView() const;
|
| - virtual gfx::NativeWindow GetTopLevelNativeWindow() const;
|
| - virtual void GetContainerBounds(gfx::Rect* out) const;
|
| - virtual void SetPageTitle(const std::wstring& title);
|
| - virtual void OnTabCrashed(base::TerminationStatus status,
|
| - int error_code);
|
| - virtual void SizeContents(const gfx::Size& size);
|
| - virtual void Focus();
|
| - virtual void SetInitialFocus();
|
| - virtual void StoreFocus();
|
| - virtual void RestoreFocus();
|
| - virtual void GetViewBounds(gfx::Rect* out) const;
|
| -
|
| - // Backend implementation of RenderViewHostDelegate::View.
|
| - virtual void ShowContextMenu(const ContextMenuParams& params);
|
| - virtual void ShowPopupMenu(const gfx::Rect& bounds,
|
| - int item_height,
|
| - double item_font_size,
|
| - int selected_item,
|
| - const std::vector<WebMenuItem>& items,
|
| - bool right_aligned);
|
| - virtual void StartDragging(const WebDropData& drop_data,
|
| - WebKit::WebDragOperationsMask ops_allowed,
|
| - const SkBitmap& image,
|
| - const gfx::Point& image_offset);
|
| - virtual void UpdateDragCursor(WebKit::WebDragOperation operation);
|
| - virtual void GotFocus();
|
| - virtual void TakeFocus(bool reverse);
|
| -
|
| - private:
|
| - // Signal handlers -----------------------------------------------------------
|
| -
|
| - // Overridden from views::WidgetGtk:
|
| - virtual gboolean OnButtonPress(GtkWidget* widget, GdkEventButton* event);
|
| - virtual void OnSizeAllocate(GtkWidget* widget, GtkAllocation* allocation);
|
| - virtual gboolean OnPaint(GtkWidget* widget, GdkEventExpose* event);
|
| - virtual void OnShow(GtkWidget* widget);
|
| - virtual void OnHide(GtkWidget* widget);
|
| -
|
| - // Handles notifying the TabContents and other operations when the window was
|
| - // shown or hidden.
|
| - void WasHidden();
|
| - void WasShown();
|
| -
|
| - // Handles resizing of the contents. This will notify the RenderWidgetHostView
|
| - // of the change, reposition popups, and the find in page bar.
|
| - void WasSized(const gfx::Size& size);
|
| -
|
| - // For any floating views (ConstrainedDialogs) this function centers them
|
| - // within this view. It's called whem a ConstrainedDialog is attached and
|
| - // when this view is resized.
|
| - void SetFloatingPosition(const gfx::Size& size);
|
| -
|
| - // ---------------------------------------------------------------------------
|
| -
|
| - // Used to render the sad tab. This will be non-NULL only when the sad tab is
|
| - // visible.
|
| - SadTabView* sad_tab_;
|
| -
|
| - // Whether to ignore the next CHAR keyboard event.
|
| - bool ignore_next_char_event_;
|
| -
|
| - // The id used in the ViewStorage to store the last focused view.
|
| - int last_focused_view_storage_id_;
|
| -
|
| - // The context menu. Callbacks are asynchronous so we need to keep it around.
|
| - scoped_ptr<RenderViewContextMenuViews> context_menu_;
|
| -
|
| - // Handles drags from this TabContentsView.
|
| - scoped_ptr<TabContentsDragSource> drag_source_;
|
| -
|
| - // The event for the last mouse down we handled. We need this for drags.
|
| - GdkEventButton last_mouse_down_;
|
| -
|
| - // The helper object that handles drag destination related interactions with
|
| - // GTK.
|
| - scoped_ptr<WebDragDestGtk> drag_dest_;
|
| -
|
| - // Current size. See comment in WidgetGtk as to why this is cached.
|
| - gfx::Size size_;
|
| -
|
| - // Each individual UI for constrained dialogs currently displayed. The
|
| - // objects in this vector are owned by the TabContents, not the view.
|
| - std::vector<ConstrainedWindowGtk*> constrained_windows_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(TabContentsViewGtk);
|
| -};
|
| -
|
| -#endif // CHROME_BROWSER_UI_VIEWS_TAB_CONTENTS_TAB_CONTENTS_VIEW_GTK_H_
|
|
|