Adding instrumentation to locate the source of jankiness
[chromium-blink-merge.git] / chrome / browser / ui / bookmarks / bookmark_drag_drop.h
blob8b7885c83afc7eb7782b2c3e26af0628d583b21f
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_UI_BOOKMARKS_BOOKMARK_DRAG_DROP_H_
6 #define CHROME_BROWSER_UI_BOOKMARKS_BOOKMARK_DRAG_DROP_H_
8 #include <vector>
10 #include "ui/base/dragdrop/drag_drop_types.h"
11 #include "ui/gfx/native_widget_types.h"
13 class BookmarkNode;
14 class Profile;
16 namespace bookmarks {
17 struct BookmarkNodeData;
20 namespace chrome {
22 // Starts the process of dragging a folder of bookmarks.
23 void DragBookmarks(Profile* profile,
24 const std::vector<const BookmarkNode*>& nodes,
25 gfx::NativeView view,
26 ui::DragDropTypes::DragEventSource source);
28 // Drops the bookmark nodes that are in |data| onto |parent_node| at |index|.
29 // |copy| indicates the source operation: if true then the bookmarks in |data|
30 // are copied, otherwise they are moved if they belong to the same |profile|.
31 // Returns the drop type used.
32 int DropBookmarks(Profile* profile,
33 const bookmarks::BookmarkNodeData& data,
34 const BookmarkNode* parent_node,
35 int index,
36 bool copy);
38 } // namespace chrome
40 #endif // CHROME_BROWSER_UI_BOOKMARKS_BOOKMARK_DRAG_DROP_H_