| OLD | NEW |
| (Empty) |
| 1 <html> | |
| 2 <link rel="stylesheet" type="text/css" href="extensions_toolstrip.css"> | |
| 3 <script> | |
| 4 var dump = function(obj, indent) { | |
| 5 if (indent === undefined) | |
| 6 indent = ""; | |
| 7 if (typeof obj == "object") { | |
| 8 var ret = "{<br/>"; | |
| 9 var child_indent = indent + " "; | |
| 10 for (var item in obj) { | |
| 11 var child = null; | |
| 12 try { | |
| 13 child = obj[item]; | |
| 14 } catch (e) { | |
| 15 child = '<error>'; | |
| 16 } | |
| 17 ret += child_indent + item + ": " + dump(child, indent + " "); | |
| 18 } | |
| 19 return ret + indent + "}" + "<br/>"; | |
| 20 } else { | |
| 21 return obj.toString() + "<br/>"; | |
| 22 } | |
| 23 } | |
| 24 | |
| 25 var testMoveBookmarks = function(event) { | |
| 26 testMoveBookmarks2(event); | |
| 27 } | |
| 28 | |
| 29 var testMoveBookmarks2 = function(event) { | |
| 30 console.log(testMoveBookmarks2.caller.name); | |
| 31 if (event.shiftKey) { | |
| 32 // TODO - it would be nice to have a mechanism to do this built-in to a | |
| 33 // context menu. | |
| 34 window.location.reload(); | |
| 35 return; | |
| 36 } | |
| 37 console.log("testMoveBookmarks2"); | |
| 38 chromium.bookmarks.get([], function(root) { | |
| 39 console.log("1"); | |
| 40 chromium.bookmarks.get(root[0].childrenIds, function(root_children) { | |
| 41 var bookmark_bar = root_children[0]; // bookmarks bar is always first | |
| 42 chromium.bookmarks.get(bookmark_bar.childrenIds, | |
| 43 function(bar_children) { | |
| 44 var folder_search = []; | |
| 45 bar_children.forEach(function(child) { | |
| 46 if (child.title == "folder" && child.url == undefined) { | |
| 47 folder_search.push(child); | |
| 48 } | |
| 49 }); | |
| 50 if (folder_search.length == 1) { | |
| 51 console.log('moving children out of "folder"'); | |
| 52 var folder = folder_search[0]; | |
| 53 folder.childrenIds.forEach(function(folder_child_id) { | |
| 54 chromium.bookmarks.move({'id': folder_child_id, | |
| 55 'parentId': bookmark_bar.id}); | |
| 56 }); | |
| 57 chromium.bookmarks.remove({'id': folder.id}); | |
| 58 } else if (folder_search.length == 0) { | |
| 59 console.log('creating "folder" and moving children into it'); | |
| 60 chromium.bookmarks.create({'parentId': bookmark_bar.id, | |
| 61 'title': 'folder'}, | |
| 62 function(folder) { | |
| 63 chromium.bookmarks.search("oog", function(oog_search) { | |
| 64 oog_search.forEach(function(oog_match) { | |
| 65 chromium.bookmarks.move({'id': oog_match.id, | |
| 66 'parentId': folder.id}) | |
| 67 }); | |
| 68 }); | |
| 69 }); | |
| 70 } else { | |
| 71 console.log("my puny code wasn't written to handle this"); | |
| 72 } | |
| 73 }); | |
| 74 }); | |
| 75 }); | |
| 76 }; | |
| 77 | |
| 78 var dumpBookmarks = function(event) { | |
| 79 window.open("bookmark_view.html"); | |
| 80 }; | |
| 81 </script> | |
| 82 <body> | |
| 83 <div class="toolstrip-button" onclick="dumpBookmarks(window.event);"> | |
| 84 <span>Dump Bookmarks</span> | |
| 85 </div> | |
| 86 <div class="toolstrip-button" onclick="testMoveBookmarks(window.event);"> | |
| 87 <span>Test Move</span> | |
| 88 </div> | |
| 89 </body> | |
| 90 </html> | |
| OLD | NEW |