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 |