| 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 var nodes = [rootFolderNode]; |
| 22 var node; | 22 var node; |
| 23 while (nodes.length) { | 23 while (nodes.length) { |
| 24 node = nodes.pop(); | 24 node = nodes.pop(); |
| 25 if (node.itemId == id) | 25 if (node.itemId == id) |
| 26 return node; | 26 return node; |
| 27 | 27 |
| 28 node.root.querySelectorAll('bookmarks-folder-node') | 28 node.root.querySelectorAll('bookmarks-folder-node') |
| 29 .forEach((x) => {nodes.unshift(x)}); | 29 .forEach((x) => {nodes.unshift(x)}); |
| 30 } | 30 } |
| 31 } | 31 } |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 100 }); | 100 }); |
| 101 bookmarks.Store.instance_ = store; | 101 bookmarks.Store.instance_ = store; |
| 102 | 102 |
| 103 chrome.bookmarkManagerPrivate.startDrag = function(nodes, isTouch) { | 103 chrome.bookmarkManagerPrivate.startDrag = function(nodes, isTouch) { |
| 104 draggedIds = nodes; | 104 draggedIds = nodes; |
| 105 }; | 105 }; |
| 106 | 106 |
| 107 app = document.createElement('bookmarks-app'); | 107 app = document.createElement('bookmarks-app'); |
| 108 replaceBody(app); | 108 replaceBody(app); |
| 109 list = app.$$('bookmarks-list'); | 109 list = app.$$('bookmarks-list'); |
| 110 sidebar = app.$$('bookmarks-sidebar'); | 110 rootFolderNode = app.$$('bookmarks-folder-node'); |
| 111 dndManager = app.dndManager_; | 111 dndManager = app.dndManager_; |
| 112 dndManager.dropIndicator_.disableTimeoutForTesting(); | 112 dndManager.dropIndicator_.disableTimeoutForTesting(); |
| 113 Polymer.dom.flush(); | 113 Polymer.dom.flush(); |
| 114 }); | 114 }); |
| 115 | 115 |
| 116 test('dragInfo isDraggingFolderToDescendant', function() { | 116 test('dragInfo isDraggingFolderToDescendant', function() { |
| 117 var dragInfo = new bookmarks.DragInfo(); | 117 var dragInfo = new bookmarks.DragInfo(); |
| 118 var nodes = store.data.nodes; | 118 var nodes = store.data.nodes; |
| 119 dragInfo.handleChromeDragEnter(createDragData(['11'])); | 119 dragInfo.handleChromeDragEnter(createDragData(['11'])); |
| 120 assertTrue(dragInfo.isDraggingFolderToDescendant('111', nodes)); | 120 assertTrue(dragInfo.isDraggingFolderToDescendant('111', nodes)); |
| (...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 474 | 474 |
| 475 dispatchDragEvent('dragstart', dragElement); | 475 dispatchDragEvent('dragstart', dragElement); |
| 476 dndManager.dragInfo_.handleChromeDragEnter(createDragData(draggedIds)); | 476 dndManager.dragInfo_.handleChromeDragEnter(createDragData(draggedIds)); |
| 477 | 477 |
| 478 dispatchDragEvent('dragover', dragTarget); | 478 dispatchDragEvent('dragover', dragTarget); |
| 479 assertEquals( | 479 assertEquals( |
| 480 DropPosition.NONE, dndManager.calculateValidDropPositions_(dragTarget)); | 480 DropPosition.NONE, dndManager.calculateValidDropPositions_(dragTarget)); |
| 481 assertDragStyle(dragTarget, DRAG_STYLE.NONE); | 481 assertDragStyle(dragTarget, DRAG_STYLE.NONE); |
| 482 }); | 482 }); |
| 483 }); | 483 }); |
| OLD | NEW |