| OLD | NEW |
| 1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 suite('drag and drop', function() { | 5 suite('drag and drop', function() { |
| 6 var app; | 6 var app; |
| 7 var list; | 7 var list; |
| 8 var sidebar; | 8 var rootFolderNode; |
| 9 var store; | 9 var store; |
| 10 var dndManager; | 10 var dndManager; |
| 11 var draggedIds; | 11 var draggedIds; |
| 12 | 12 |
| 13 var DRAG_STYLE = { | 13 var DRAG_STYLE = { |
| 14 NONE: 0, | 14 NONE: 0, |
| 15 ON: 1, | 15 ON: 1, |
| 16 ABOVE: 2, | 16 ABOVE: 2, |
| 17 BELOW: 3, | 17 BELOW: 3, |
| 18 }; | 18 }; |
| 19 | 19 |
| 20 function getFolderNode(id) { | 20 function getFolderNode(id) { |
| 21 var nodes = [sidebar]; | 21 return findFolderNode(rootFolderNode, id); |
| 22 var node; | |
| 23 while (nodes.length) { | |
| 24 node = nodes.pop(); | |
| 25 if (node.itemId == id) | |
| 26 return node; | |
| 27 | |
| 28 node.root.querySelectorAll('bookmarks-folder-node') | |
| 29 .forEach((x) => {nodes.unshift(x)}); | |
| 30 } | |
| 31 } | 22 } |
| 32 | 23 |
| 33 function getListItem(id) { | 24 function getListItem(id) { |
| 34 var items = list.root.querySelectorAll('bookmarks-item'); | 25 var items = list.root.querySelectorAll('bookmarks-item'); |
| 35 for (var i = 0; i < items.length; i++) { | 26 for (var i = 0; i < items.length; i++) { |
| 36 if (items[i].itemId == id) | 27 if (items[i].itemId == id) |
| 37 return items[i]; | 28 return items[i]; |
| 38 } | 29 } |
| 39 } | 30 } |
| 40 | 31 |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 100 }); | 91 }); |
| 101 bookmarks.Store.instance_ = store; | 92 bookmarks.Store.instance_ = store; |
| 102 | 93 |
| 103 chrome.bookmarkManagerPrivate.startDrag = function(nodes, isTouch) { | 94 chrome.bookmarkManagerPrivate.startDrag = function(nodes, isTouch) { |
| 104 draggedIds = nodes; | 95 draggedIds = nodes; |
| 105 }; | 96 }; |
| 106 | 97 |
| 107 app = document.createElement('bookmarks-app'); | 98 app = document.createElement('bookmarks-app'); |
| 108 replaceBody(app); | 99 replaceBody(app); |
| 109 list = app.$$('bookmarks-list'); | 100 list = app.$$('bookmarks-list'); |
| 110 sidebar = app.$$('bookmarks-folder-node'); | 101 rootFolderNode = app.$$('bookmarks-folder-node'); |
| 111 dndManager = app.dndManager_; | 102 dndManager = app.dndManager_; |
| 112 dndManager.dropIndicator_.disableTimeoutForTesting(); | 103 dndManager.dropIndicator_.disableTimeoutForTesting(); |
| 113 Polymer.dom.flush(); | 104 Polymer.dom.flush(); |
| 114 }); | 105 }); |
| 115 | 106 |
| 116 test('dragInfo isDraggingFolderToDescendant', function() { | 107 test('dragInfo isDraggingFolderToDescendant', function() { |
| 117 var dragInfo = new bookmarks.DragInfo(); | 108 var dragInfo = new bookmarks.DragInfo(); |
| 118 var nodes = store.data.nodes; | 109 var nodes = store.data.nodes; |
| 119 dragInfo.handleChromeDragEnter(createDragData(['11'])); | 110 dragInfo.handleChromeDragEnter(createDragData(['11'])); |
| 120 assertTrue(dragInfo.isDraggingFolderToDescendant('111', nodes)); | 111 assertTrue(dragInfo.isDraggingFolderToDescendant('111', nodes)); |
| (...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 474 | 465 |
| 475 dispatchDragEvent('dragstart', dragElement); | 466 dispatchDragEvent('dragstart', dragElement); |
| 476 dndManager.dragInfo_.handleChromeDragEnter(createDragData(draggedIds)); | 467 dndManager.dragInfo_.handleChromeDragEnter(createDragData(draggedIds)); |
| 477 | 468 |
| 478 dispatchDragEvent('dragover', dragTarget); | 469 dispatchDragEvent('dragover', dragTarget); |
| 479 assertEquals( | 470 assertEquals( |
| 480 DropPosition.NONE, dndManager.calculateValidDropPositions_(dragTarget)); | 471 DropPosition.NONE, dndManager.calculateValidDropPositions_(dragTarget)); |
| 481 assertDragStyle(dragTarget, DRAG_STYLE.NONE); | 472 assertDragStyle(dragTarget, DRAG_STYLE.NONE); |
| 482 }); | 473 }); |
| 483 }); | 474 }); |
| OLD | NEW |