| Index: chrome/browser/ui/gtk/tabs/dragged_view_gtk.h
|
| diff --git a/chrome/browser/ui/gtk/tabs/dragged_view_gtk.h b/chrome/browser/ui/gtk/tabs/dragged_view_gtk.h
|
| deleted file mode 100644
|
| index 58fdce6c8e2124e66173c188ec77cb9558d61fbf..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/ui/gtk/tabs/dragged_view_gtk.h
|
| +++ /dev/null
|
| @@ -1,190 +0,0 @@
|
| -// Copyright (c) 2012 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_GTK_TABS_DRAGGED_VIEW_GTK_H_
|
| -#define CHROME_BROWSER_UI_GTK_TABS_DRAGGED_VIEW_GTK_H_
|
| -
|
| -#include <gtk/gtk.h>
|
| -
|
| -#include <vector>
|
| -
|
| -#include "base/callback.h"
|
| -#include "base/compiler_specific.h"
|
| -#include "ui/base/gtk/gtk_signal.h"
|
| -#include "ui/gfx/animation/animation_delegate.h"
|
| -#include "ui/gfx/animation/slide_animation.h"
|
| -#include "ui/gfx/canvas.h"
|
| -#include "ui/gfx/point.h"
|
| -#include "ui/gfx/rect.h"
|
| -#include "ui/gfx/size.h"
|
| -
|
| -class DragData;
|
| -class TabRendererGtk;
|
| -
|
| -class DraggedViewGtk : public gfx::AnimationDelegate {
|
| - public:
|
| - DraggedViewGtk(DragData* drag_data,
|
| - const gfx::Point& mouse_tab_offset,
|
| - const gfx::Size& contents_size);
|
| - virtual ~DraggedViewGtk();
|
| -
|
| - // Moves the attached dragged view to the appropriate location.
|
| - // |tabstrip_point| is the location of the upper left corner of the dragged
|
| - // view in screen coordinates.
|
| - void MoveAttachedTo(const gfx::Point& tabstrip_point);
|
| -
|
| - // Moves the detached dragged view to the appropriate location. |screen_point|
|
| - // is the current position of the mouse pointer in screen coordinates.
|
| - void MoveDetachedTo(const gfx::Point& screen_point);
|
| -
|
| - // Sets the offset of the mouse from the upper left corner of the tab.
|
| - void set_mouse_tab_offset(const gfx::Point& offset) {
|
| - mouse_tab_offset_ = offset;
|
| - }
|
| -
|
| - // Notifies the dragged tab that it has become attached to a tabstrip.
|
| - // |normal_width| and |mini_width| is the width of a mini and a normal tab
|
| - // respectively after attaching. |parent_window_width| is the width of the
|
| - // parent window of the tabstrip.
|
| - void Attach(int normal_width, int mini_width, int parent_window_width);
|
| -
|
| - // Resizes the dragged tab to a width of |width|.
|
| - void Resize(int width);
|
| -
|
| - // Notifies the dragged tab that it has been detached from a tabstrip.
|
| - void Detach();
|
| -
|
| - // Notifies the dragged tab that it should update itself.
|
| - void Update();
|
| -
|
| - // Animates the dragged tab to the specified bounds, then calls back to
|
| - // |callback|.
|
| - void AnimateToBounds(const gfx::Rect& bounds, const base::Closure& callback);
|
| -
|
| - // Returns the size of the dragged tab. Used when attaching to a tabstrip
|
| - // to determine where to place the tab in the attached tabstrip.
|
| - const gfx::Size& attached_tab_size() const { return attached_tab_size_; }
|
| - int GetAttachedTabWidthAt(int index);
|
| -
|
| - GtkWidget* widget() const { return container_; }
|
| -
|
| - int mini_width() { return mini_width_; }
|
| - int normal_width() { return normal_width_; }
|
| -
|
| - // Returns the width occupied in the tabstrip from index |from| included to
|
| - // index |to| excluded. The indices are with respect to |drag_data_|.
|
| - int GetWidthInTabStripFromTo(int from, int to);
|
| -
|
| - // Returns the total width occupied in the tabstrip.
|
| - int GetTotalWidthInTabStrip();
|
| -
|
| - // Returns the width occupied in the tabstrip from the left most point of the
|
| - // dragged view up to the source tab excluded.
|
| - int GetWidthInTabStripUpToSourceTab();
|
| -
|
| - // Returns the width occupied in the tabstrip from the left most point
|
| - // (regardless of RTL or LTR mode) of the dragged view up to the mouse pointer
|
| - // when the drag was initiated.
|
| - int GetWidthInTabStripUpToMousePointer();
|
| -
|
| - // Returns the distance from the start of the tabstrip (left, regardless of
|
| - // RTL) up to the position of the mouse pointer.
|
| - gfx::Point GetDistanceFromTabStripOriginToMousePointer();
|
| -
|
| - private:
|
| - // Overridden from gfx::AnimationDelegate:
|
| - virtual void AnimationProgressed(const gfx::Animation* animation) OVERRIDE;
|
| - virtual void AnimationEnded(const gfx::Animation* animation) OVERRIDE;
|
| - virtual void AnimationCanceled(const gfx::Animation* animation) OVERRIDE;
|
| -
|
| - // Arranges the contents of the dragged tab.
|
| - void Layout();
|
| -
|
| - // Gets the preferred size of the dragged tab.
|
| - gfx::Size GetPreferredSize();
|
| -
|
| - // Resizes the container to fit the content for the current attachment mode.
|
| - void ResizeContainer();
|
| -
|
| - // Utility for scaling a size by the current scaling factor.
|
| - int ScaleValue(int value);
|
| -
|
| - // Returns the bounds of the container window.
|
| - gfx::Rect bounds() const;
|
| -
|
| - // Sets the color map of the container window to allow the window to be
|
| - // transparent.
|
| - void SetContainerColorMap();
|
| -
|
| - // Sets full transparency for the container window. This is used if
|
| - // compositing is available for the screen.
|
| - void SetContainerTransparency();
|
| -
|
| - // Sets the shape mask for the container window to emulate a transparent
|
| - // container window. This is used if compositing is not available for the
|
| - // screen.
|
| - // |surface| represents the tab only (not the render view).
|
| - void SetContainerShapeMask();
|
| -
|
| - void PaintTab(int index, GtkWidget* widget, cairo_t* cr, int widget_width);
|
| -
|
| - // expose-event handler that notifies when the tab needs to be redrawn.
|
| - CHROMEGTK_CALLBACK_1(DraggedViewGtk, gboolean, OnExpose, GdkEventExpose*);
|
| -
|
| - // The window that contains the dragged tab or tab contents.
|
| - GtkWidget* container_;
|
| -
|
| - // The fixed widget that we use to contain the tab renderer so that the
|
| - // tab widget won't be resized.
|
| - GtkWidget* fixed_;
|
| -
|
| - // The renderer that paints the dragged tab.
|
| - std::vector<TabRendererGtk*> renderers_;
|
| -
|
| - // Holds various data for each dragged tab needed to handle dragging. It is
|
| - // owned by |DraggedTabControllerGtk| class.
|
| - DragData* drag_data_;
|
| -
|
| - // The width of a mini tab at the time the dragging was initiated.
|
| - int mini_width_;
|
| -
|
| - // The width of a normal tab (not mini) at the time the dragging was
|
| - // initiated.
|
| - int normal_width_;
|
| -
|
| - // True if the view is currently attached to a tabstrip. Controls rendering
|
| - // and sizing modes.
|
| - bool attached_;
|
| -
|
| - // The width of the browser window where the dragged tabs were attached for
|
| - // the last time.
|
| - int parent_window_width_;
|
| -
|
| - // The unscaled offset of the mouse from the top left of the dragged tab.
|
| - // This is used to maintain an appropriate offset for the mouse pointer when
|
| - // dragging scaled and unscaled representations, and also to calculate the
|
| - // position of detached windows.
|
| - gfx::Point mouse_tab_offset_;
|
| -
|
| - // The size of the tab renderer when the dragged tab is attached to a
|
| - // tabstrip.
|
| - gfx::Size attached_tab_size_;
|
| -
|
| - // The dimensions of the WebContents being dragged.
|
| - gfx::Size contents_size_;
|
| -
|
| - // The animation used to slide the attached tab to its final location.
|
| - gfx::SlideAnimation close_animation_;
|
| -
|
| - // A callback notified when the animation is complete.
|
| - base::Closure animation_callback_;
|
| -
|
| - // The start and end bounds of the animation sequence.
|
| - gfx::Rect animation_start_bounds_;
|
| - gfx::Rect animation_end_bounds_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(DraggedViewGtk);
|
| -};
|
| -
|
| -#endif // CHROME_BROWSER_UI_GTK_TABS_DRAGGED_VIEW_GTK_H_
|
|
|