Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(636)

Side by Side Diff: ui/aura/client/drag_drop_client.h

Issue 11368072: aura: Add flag to indicate if a drag session is started with touch or mouse. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: patch Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef UI_AURA_CLIENT_DRAG_DROP_CLIENT_H_ 5 #ifndef UI_AURA_CLIENT_DRAG_DROP_CLIENT_H_
6 #define UI_AURA_CLIENT_DRAG_DROP_CLIENT_H_ 6 #define UI_AURA_CLIENT_DRAG_DROP_CLIENT_H_
7 7
8 #include "ui/aura/aura_export.h" 8 #include "ui/aura/aura_export.h"
9 #include "ui/base/dragdrop/drag_drop_types.h"
9 #include "ui/gfx/native_widget_types.h" 10 #include "ui/gfx/native_widget_types.h"
10 11
11 namespace gfx { 12 namespace gfx {
12 class Point; 13 class Point;
13 } 14 }
14 15
15 namespace ui { 16 namespace ui {
16 class LocatedEvent; 17 class LocatedEvent;
17 class OSExchangeData; 18 class OSExchangeData;
18 } 19 }
19 20
20 namespace aura { 21 namespace aura {
21 class RootWindow; 22 class RootWindow;
22 class Window; 23 class Window;
23 namespace client { 24 namespace client {
24 25
25 // An interface implemented by an object that controls a drag and drop session. 26 // An interface implemented by an object that controls a drag and drop session.
26 class AURA_EXPORT DragDropClient { 27 class AURA_EXPORT DragDropClient {
27 public: 28 public:
28 virtual ~DragDropClient() {} 29 virtual ~DragDropClient() {}
29 30
30 // Initiates a drag and drop session. Returns the drag operation that was 31 // Initiates a drag and drop session. Returns the drag operation that was
31 // applied at the end of the drag drop session. |root_location| is in the 32 // applied at the end of the drag drop session. |root_location| is in the
32 // RootWindow's coordinate system. 33 // RootWindow's coordinate system.
33 virtual int StartDragAndDrop(const ui::OSExchangeData& data, 34 virtual int StartDragAndDrop(const ui::OSExchangeData& data,
34 aura::RootWindow* root_window, 35 aura::RootWindow* root_window,
36 aura::Window* source_window,
35 const gfx::Point& root_location, 37 const gfx::Point& root_location,
36 int operation) = 0; 38 int operation,
39 ui::DragDropTypes::DragEventSource source) = 0;
37 40
38 // Called when mouse is dragged during a drag and drop. 41 // Called when mouse is dragged during a drag and drop.
39 virtual void DragUpdate(aura::Window* target, 42 virtual void DragUpdate(aura::Window* target,
40 const ui::LocatedEvent& event) = 0; 43 const ui::LocatedEvent& event) = 0;
41 44
42 // Called when mouse is released during a drag and drop. 45 // Called when mouse is released during a drag and drop.
43 virtual void Drop(aura::Window* target, 46 virtual void Drop(aura::Window* target,
44 const ui::LocatedEvent& event) = 0; 47 const ui::LocatedEvent& event) = 0;
45 48
46 // Called when a drag and drop session is cancelled. 49 // Called when a drag and drop session is cancelled.
47 virtual void DragCancel() = 0; 50 virtual void DragCancel() = 0;
48 51
49 // Returns true if a drag and drop session is in progress. 52 // Returns true if a drag and drop session is in progress.
50 virtual bool IsDragDropInProgress() = 0; 53 virtual bool IsDragDropInProgress() = 0;
51 }; 54 };
52 55
53 AURA_EXPORT void SetDragDropClient(RootWindow* root_window, 56 AURA_EXPORT void SetDragDropClient(RootWindow* root_window,
54 DragDropClient* client); 57 DragDropClient* client);
55 AURA_EXPORT DragDropClient* GetDragDropClient(RootWindow* root_window); 58 AURA_EXPORT DragDropClient* GetDragDropClient(RootWindow* root_window);
56 59
57 } // namespace client 60 } // namespace client
58 } // namespace aura 61 } // namespace aura
59 62
60 #endif // UI_AURA_CLIENT_DRAG_DROP_CLIENT_H_ 63 #endif // UI_AURA_CLIENT_DRAG_DROP_CLIENT_H_
OLDNEW
« no previous file with comments | « content/browser/web_contents/web_contents_view_aura.cc ('k') | ui/base/dragdrop/drag_drop_types.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698