| Index: ui/aura_shell/shell.h
|
| diff --git a/ui/aura_shell/shell.h b/ui/aura_shell/shell.h
|
| index 4f872ab90aab9164a0eb81b9d4f26db6f0400271..14596190386fdc07db0f293ea92e3bc5f5c8db42 100644
|
| --- a/ui/aura_shell/shell.h
|
| +++ b/ui/aura_shell/shell.h
|
| @@ -15,15 +15,26 @@
|
| #include "base/compiler_specific.h"
|
| #include "base/memory/weak_ptr.h"
|
| #include "ui/aura/desktop_delegate.h"
|
| +#include "ui/aura/drag_drop_controller.h"
|
| #include "ui/aura_shell/aura_shell_export.h"
|
|
|
| namespace aura {
|
| +class MouseEvent;
|
| class Window;
|
| }
|
| namespace gfx {
|
| +class Point;
|
| class Rect;
|
| }
|
|
|
| +namespace ui {
|
| +class OSExchangeData;
|
| +}
|
| +
|
| +namespace views {
|
| +class Widget;
|
| +}
|
| +
|
| namespace aura_shell {
|
|
|
| class Launcher;
|
| @@ -35,7 +46,8 @@ class WorkspaceController;
|
|
|
| // Shell is a singleton object that presents the Shell API and implements the
|
| // Desktop's delegate interface.
|
| -class AURA_SHELL_EXPORT Shell : public aura::DesktopDelegate {
|
| +class AURA_SHELL_EXPORT Shell : public aura::DesktopDelegate,
|
| + public aura::DragDropController {
|
| public:
|
| // Upon creation, the Shell sets itself as the Desktop's delegate, which takes
|
| // ownership of the Shell.
|
| @@ -68,6 +80,14 @@ class AURA_SHELL_EXPORT Shell : public aura::DesktopDelegate {
|
| virtual void AddChildToDefaultParent(aura::Window* window) OVERRIDE;
|
| virtual aura::Window* GetTopmostWindowToActivate(
|
| aura::Window* ignore) const OVERRIDE;
|
| + virtual DragDropController* GetDragDropController() const OVERRIDE;
|
| +
|
| + // Overridden from aura::DragDropController:
|
| + virtual void StartDragAndDrop(const ui::OSExchangeData& data,
|
| + int operation,
|
| + const gfx::Point& location) OVERRIDE;
|
| + virtual void DragUpdate(const aura::MouseEvent& event) OVERRIDE;
|
| + virtual void Drop(const aura::MouseEvent& event) OVERRIDE;
|
|
|
| static Shell* instance_;
|
|
|
| @@ -81,6 +101,9 @@ class AURA_SHELL_EXPORT Shell : public aura::DesktopDelegate {
|
|
|
| scoped_ptr<internal::WorkspaceController> workspace_controller_;
|
|
|
| + const ui::OSExchangeData* drag_data_;
|
| + scoped_ptr<views::Widget> drag_widget_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(Shell);
|
| };
|
|
|
|
|