OLD | NEW |
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 CHROME_BROWSER_TAB_CONTENTS_WEB_DRAG_BOOKMARK_HANDLER_WIN_H_ | 5 #ifndef CHROME_BROWSER_TAB_CONTENTS_WEB_DRAG_BOOKMARK_HANDLER_WIN_H_ |
6 #define CHROME_BROWSER_TAB_CONTENTS_WEB_DRAG_BOOKMARK_HANDLER_WIN_H_ | 6 #define CHROME_BROWSER_TAB_CONTENTS_WEB_DRAG_BOOKMARK_HANDLER_WIN_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
10 #include "chrome/browser/bookmarks/bookmark_node_data.h" | 10 #include "chrome/browser/bookmarks/bookmark_node_data.h" |
11 #include "content/browser/tab_contents/web_drag_dest_delegate.h" | 11 #include "content/browser/tab_contents/web_drag_dest_delegate.h" |
12 | 12 |
13 class TabContentsWrapper; | 13 class TabContentsWrapper; |
14 | 14 |
15 // Chrome needs to intercept content drag events so it can dispatch them to the | 15 // Chrome needs to intercept content drag events so it can dispatch them to the |
16 // bookmarks and extensions system. | 16 // bookmarks and extensions system. |
17 class WebDragBookmarkHandlerWin : public content::WebDragDestDelegate { | 17 class WebDragBookmarkHandlerWin : public content::WebDragDestDelegate { |
18 public: | 18 public: |
19 WebDragBookmarkHandlerWin(); | 19 WebDragBookmarkHandlerWin(); |
20 virtual ~WebDragBookmarkHandlerWin(); | 20 virtual ~WebDragBookmarkHandlerWin(); |
21 | 21 |
22 // Overridden from content::WebDragDestDelegate: | 22 // Overridden from content::WebDragDestDelegate: |
23 virtual void DragInitialize(content::WebContents* contents) OVERRIDE; | 23 virtual void DragInitialize(content::WebContents* contents) OVERRIDE; |
24 virtual void OnDragOver(IDataObject* data_object) OVERRIDE; | 24 virtual void OnDragOver(IDataObject* data_object) OVERRIDE; |
25 virtual void OnDragEnter(IDataObject* data_object) OVERRIDE; | 25 virtual void OnDragEnter(IDataObject* data_object) OVERRIDE; |
26 virtual void OnDrop(IDataObject* data_object) OVERRIDE; | 26 virtual void OnDrop(IDataObject* data_object) OVERRIDE; |
27 virtual void OnDragLeave(IDataObject* data_object) OVERRIDE; | 27 virtual void OnDragLeave(IDataObject* data_object) OVERRIDE; |
| 28 virtual bool AddDragData(const WebDropData& drop_data, |
| 29 ui::OSExchangeData* data) OVERRIDE; |
28 | 30 |
29 private: | 31 private: |
30 // The TabContentsWrapper for the drag. | 32 // The TabContentsWrapper for the drag. |
31 // Weak reference; may be NULL if the contents aren't contained in a wrapper | 33 // Weak reference; may be NULL if the contents aren't contained in a wrapper |
32 // (e.g. WebUI dialogs). | 34 // (e.g. WebUI dialogs). |
33 TabContentsWrapper* tab_; | 35 TabContentsWrapper* tab_; |
34 | 36 |
35 DISALLOW_COPY_AND_ASSIGN(WebDragBookmarkHandlerWin); | 37 DISALLOW_COPY_AND_ASSIGN(WebDragBookmarkHandlerWin); |
36 }; | 38 }; |
37 | 39 |
38 #endif // CHROME_BROWSER_TAB_CONTENTS_WEB_DRAG_BOOKMARK_HANDLER_WIN_H_ | 40 #endif // CHROME_BROWSER_TAB_CONTENTS_WEB_DRAG_BOOKMARK_HANDLER_WIN_H_ |
OLD | NEW |