|
1 <?xml version="1.0"?> |
|
2 |
|
3 # This Source Code Form is subject to the terms of the Mozilla Public |
|
4 # License, v. 2.0. If a copy of the MPL was not distributed with this |
|
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/. |
|
6 |
|
7 <?xml-stylesheet href="chrome://browser/content/places/places.css"?> |
|
8 <?xml-stylesheet href="chrome://browser/content/places/organizer.css"?> |
|
9 |
|
10 <?xml-stylesheet href="chrome://global/skin/"?> |
|
11 <?xml-stylesheet href="chrome://browser/skin/places/places.css"?> |
|
12 <?xml-stylesheet href="chrome://browser/skin/places/organizer.css"?> |
|
13 |
|
14 <?xul-overlay href="chrome://browser/content/places/editBookmarkOverlay.xul"?> |
|
15 |
|
16 #ifdef XP_MACOSX |
|
17 <?xul-overlay href="chrome://browser/content/macBrowserOverlay.xul"?> |
|
18 #else |
|
19 <?xul-overlay href="chrome://browser/content/baseMenuOverlay.xul"?> |
|
20 <?xul-overlay href="chrome://global/content/editMenuOverlay.xul"?> |
|
21 <?xul-overlay href="chrome://browser/content/places/placesOverlay.xul"?> |
|
22 #endif |
|
23 |
|
24 <!DOCTYPE window [ |
|
25 <!ENTITY % placesDTD SYSTEM "chrome://browser/locale/places/places.dtd"> |
|
26 %placesDTD; |
|
27 <!ENTITY % editMenuOverlayDTD SYSTEM "chrome://global/locale/editMenuOverlay.dtd"> |
|
28 %editMenuOverlayDTD; |
|
29 <!ENTITY % browserDTD SYSTEM "chrome://browser/locale/browser.dtd"> |
|
30 %browserDTD; |
|
31 ]> |
|
32 |
|
33 <window id="places" |
|
34 title="&places.library.title;" |
|
35 windowtype="Places:Organizer" |
|
36 xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" |
|
37 xmlns:html="http://www.w3.org/1999/xhtml" |
|
38 onload="PlacesOrganizer.init();" |
|
39 onunload="PlacesOrganizer.destroy();" |
|
40 width="&places.library.width;" height="&places.library.height;" |
|
41 screenX="10" screenY="10" |
|
42 toggletoolbar="true" |
|
43 persist="width height screenX screenY sizemode"> |
|
44 |
|
45 <script type="application/javascript" |
|
46 src="chrome://browser/content/places/places.js"/> |
|
47 <script type="application/javascript" |
|
48 src="chrome://browser/content/utilityOverlay.js"/> |
|
49 <script type="application/javascript" |
|
50 src="chrome://browser/content/places/editBookmarkOverlay.js"/> |
|
51 |
|
52 <stringbundleset id="placesStringSet"> |
|
53 <stringbundle id="brandStrings" src="chrome://branding/locale/brand.properties"/> |
|
54 </stringbundleset> |
|
55 |
|
56 |
|
57 #ifdef XP_MACOSX |
|
58 #include ../../../base/content/browserMountPoints.inc |
|
59 #else |
|
60 <commandset id="editMenuCommands"/> |
|
61 <commandset id="placesCommands"/> |
|
62 #endif |
|
63 |
|
64 <commandset id="organizerCommandSet"> |
|
65 <command id="OrganizerCommand_find:all" |
|
66 oncommand="PlacesSearchBox.findAll();"/> |
|
67 <command id="OrganizerCommand_export" |
|
68 oncommand="PlacesOrganizer.exportBookmarks();"/> |
|
69 <command id="OrganizerCommand_import" |
|
70 oncommand="PlacesOrganizer.importFromFile();"/> |
|
71 <command id="OrganizerCommand_browserImport" |
|
72 oncommand="PlacesOrganizer.importFromBrowser();"/> |
|
73 <command id="OrganizerCommand_backup" |
|
74 oncommand="PlacesOrganizer.backupBookmarks();"/> |
|
75 <command id="OrganizerCommand_restoreFromFile" |
|
76 oncommand="PlacesOrganizer.onRestoreBookmarksFromFile();"/> |
|
77 <command id="OrganizerCommand_search:save" |
|
78 oncommand="PlacesOrganizer.saveSearch();"/> |
|
79 <command id="OrganizerCommand_search:moreCriteria" |
|
80 oncommand="PlacesQueryBuilder.addRow();"/> |
|
81 <command id="OrganizerCommand:Back" |
|
82 oncommand="PlacesOrganizer.back();"/> |
|
83 <command id="OrganizerCommand:Forward" |
|
84 oncommand="PlacesOrganizer.forward();"/> |
|
85 </commandset> |
|
86 |
|
87 |
|
88 <keyset id="placesOrganizerKeyset"> |
|
89 <!-- Instantiation Keys --> |
|
90 <key id="placesKey_close" key="&cmd.close.key;" modifiers="accel" |
|
91 oncommand="close();"/> |
|
92 |
|
93 <!-- Command Keys --> |
|
94 <key id="placesKey_find:all" |
|
95 command="OrganizerCommand_find:all" |
|
96 key="&cmd.find.key;" |
|
97 modifiers="accel"/> |
|
98 |
|
99 <!-- Back/Forward Keys Support --> |
|
100 #ifndef XP_MACOSX |
|
101 <key id="placesKey_goBackKb" |
|
102 keycode="VK_LEFT" |
|
103 command="OrganizerCommand:Back" |
|
104 modifiers="alt"/> |
|
105 <key id="placesKey_goForwardKb" |
|
106 keycode="VK_RIGHT" |
|
107 command="OrganizerCommand:Forward" |
|
108 modifiers="alt"/> |
|
109 #else |
|
110 <key id="placesKey_goBackKb" |
|
111 keycode="VK_LEFT" |
|
112 command="OrganizerCommand:Back" |
|
113 modifiers="accel"/> |
|
114 <key id="placesKey_goForwardKb" |
|
115 keycode="VK_RIGHT" |
|
116 command="OrganizerCommand:Forward" |
|
117 modifiers="accel"/> |
|
118 #endif |
|
119 #ifdef XP_UNIX |
|
120 <key id="placesKey_goBackKb2" |
|
121 key="&goBackCmd.commandKey;" |
|
122 command="OrganizerCommand:Back" |
|
123 modifiers="accel"/> |
|
124 <key id="placesKey_goForwardKb2" |
|
125 key="&goForwardCmd.commandKey;" |
|
126 command="OrganizerCommand:Forward" |
|
127 modifiers="accel"/> |
|
128 #endif |
|
129 </keyset> |
|
130 |
|
131 <keyset id="editMenuKeys"> |
|
132 #ifdef XP_MACOSX |
|
133 <key id="key_delete2" keycode="VK_BACK" command="cmd_delete"/> |
|
134 #endif |
|
135 </keyset> |
|
136 |
|
137 <popupset id="placesPopupset"> |
|
138 <menupopup id="placesContext"/> |
|
139 <menupopup id="placesColumnsContext" |
|
140 onpopupshowing="ViewMenu.fillWithColumns(event, null, null, 'checkbox', null);" |
|
141 oncommand="ViewMenu.showHideColumn(event.target); event.stopPropagation();"/> |
|
142 </popupset> |
|
143 |
|
144 <toolbox id="placesToolbox"> |
|
145 <toolbar class="chromeclass-toolbar" id="placesToolbar" align="center"> |
|
146 <toolbarbutton id="back-button" |
|
147 command="OrganizerCommand:Back" |
|
148 tooltiptext="&backButton.tooltip;" |
|
149 disabled="true"/> |
|
150 |
|
151 <toolbarbutton id="forward-button" |
|
152 command="OrganizerCommand:Forward" |
|
153 tooltiptext="&forwardButton.tooltip;" |
|
154 disabled="true"/> |
|
155 |
|
156 #ifdef XP_MACOSX |
|
157 <toolbarbutton type="menu" class="tabbable" |
|
158 onpopupshowing="document.getElementById('placeContent').focus()" |
|
159 #else |
|
160 <menubar id="placesMenu"> |
|
161 <menu accesskey="&organize.accesskey;" class="menu-iconic" |
|
162 #endif |
|
163 id="organizeButton" label="&organize.label;" |
|
164 tooltiptext="&organize.tooltip;"> |
|
165 <menupopup id="organizeButtonPopup"> |
|
166 <menuitem id="newbookmark" |
|
167 command="placesCmd_new:bookmark" |
|
168 label="&cmd.new_bookmark.label;" |
|
169 accesskey="&cmd.new_bookmark.accesskey;"/> |
|
170 <menuitem id="newfolder" |
|
171 command="placesCmd_new:folder" |
|
172 label="&cmd.new_folder.label;" |
|
173 accesskey="&cmd.new_folder.accesskey;"/> |
|
174 <menuitem id="newseparator" |
|
175 command="placesCmd_new:separator" |
|
176 label="&cmd.new_separator.label;" |
|
177 accesskey="&cmd.new_separator.accesskey;"/> |
|
178 |
|
179 #ifndef XP_MACOSX |
|
180 <menuseparator id="orgUndoSeparator"/> |
|
181 |
|
182 <menuitem id="orgUndo" |
|
183 command="cmd_undo" |
|
184 label="&undoCmd.label;" |
|
185 key="key_undo" |
|
186 accesskey="&undoCmd.accesskey;"/> |
|
187 <menuitem id="orgRedo" |
|
188 command="cmd_redo" |
|
189 label="&redoCmd.label;" |
|
190 key="key_redo" |
|
191 accesskey="&redoCmd.accesskey;"/> |
|
192 |
|
193 <menuseparator id="orgCutSeparator"/> |
|
194 |
|
195 <menuitem id="orgCut" |
|
196 command="cmd_cut" |
|
197 label="&cutCmd.label;" |
|
198 key="key_cut" |
|
199 accesskey="&cutCmd.accesskey;" |
|
200 selection="separator|link|folder|mixed"/> |
|
201 <menuitem id="orgCopy" |
|
202 command="cmd_copy" |
|
203 label="©Cmd.label;" |
|
204 key="key_copy" |
|
205 accesskey="©Cmd.accesskey;" |
|
206 selection="separator|link|folder|mixed"/> |
|
207 <menuitem id="orgPaste" |
|
208 command="cmd_paste" |
|
209 label="&pasteCmd.label;" |
|
210 key="key_paste" |
|
211 accesskey="&pasteCmd.accesskey;" |
|
212 selection="mutable"/> |
|
213 <menuitem id="orgDelete" |
|
214 command="cmd_delete" |
|
215 label="&deleteCmd.label;" |
|
216 key="key_delete" |
|
217 accesskey="&deleteCmd.accesskey;"/> |
|
218 |
|
219 <menuseparator id="selectAllSeparator"/> |
|
220 |
|
221 <menuitem id="orgSelectAll" |
|
222 command="cmd_selectAll" |
|
223 label="&selectAllCmd.label;" |
|
224 key="key_selectAll" |
|
225 accesskey="&selectAllCmd.accesskey;"/> |
|
226 |
|
227 #endif |
|
228 <menuseparator id="orgMoveSeparator"/> |
|
229 |
|
230 <menuitem id="orgMoveBookmarks" |
|
231 command="placesCmd_moveBookmarks" |
|
232 label="&cmd.moveBookmarks.label;" |
|
233 accesskey="&cmd.moveBookmarks.accesskey;"/> |
|
234 #ifdef XP_MACOSX |
|
235 <menuitem id="orgDelete" |
|
236 command="cmd_delete" |
|
237 label="&deleteCmd.label;" |
|
238 key="key_delete" |
|
239 accesskey="&deleteCmd.accesskey;"/> |
|
240 #else |
|
241 <menuseparator id="orgCloseSeparator"/> |
|
242 |
|
243 <menuitem id="orgClose" |
|
244 key="placesKey_close" |
|
245 label="&file.close.label;" |
|
246 accesskey="&file.close.accesskey;" |
|
247 oncommand="close();"/> |
|
248 #endif |
|
249 </menupopup> |
|
250 #ifdef XP_MACOSX |
|
251 </toolbarbutton> |
|
252 <toolbarbutton type="menu" class="tabbable" |
|
253 #else |
|
254 </menu> |
|
255 <menu accesskey="&views.accesskey;" class="menu-iconic" |
|
256 #endif |
|
257 id="viewMenu" label="&views.label;" |
|
258 tooltiptext="&views.tooltip;"> |
|
259 <menupopup id="viewMenuPopup"> |
|
260 |
|
261 <menu id="viewColumns" |
|
262 label="&view.columns.label;" accesskey="&view.columns.accesskey;"> |
|
263 <menupopup onpopupshowing="ViewMenu.fillWithColumns(event, null, null, 'checkbox', null);" |
|
264 oncommand="ViewMenu.showHideColumn(event.target); event.stopPropagation();"/> |
|
265 </menu> |
|
266 |
|
267 <menu id="viewSort" label="&view.sort.label;" |
|
268 accesskey="&view.sort.accesskey;"> |
|
269 <menupopup onpopupshowing="ViewMenu.populateSortMenu(event);" |
|
270 oncommand="ViewMenu.setSortColumn(event.target.column, null);"> |
|
271 <menuitem id="viewUnsorted" type="radio" name="columns" |
|
272 label="&view.unsorted.label;" accesskey="&view.unsorted.accesskey;" |
|
273 oncommand="ViewMenu.setSortColumn(null, null);"/> |
|
274 <menuseparator id="directionSeparator"/> |
|
275 <menuitem id="viewSortAscending" type="radio" name="direction" |
|
276 label="&view.sortAscending.label;" accesskey="&view.sortAscending.accesskey;" |
|
277 oncommand="ViewMenu.setSortColumn(null, 'ascending'); event.stopPropagation();"/> |
|
278 <menuitem id="viewSortDescending" type="radio" name="direction" |
|
279 label="&view.sortDescending.label;" accesskey="&view.sortDescending.accesskey;" |
|
280 oncommand="ViewMenu.setSortColumn(null, 'descending'); event.stopPropagation();"/> |
|
281 </menupopup> |
|
282 </menu> |
|
283 </menupopup> |
|
284 #ifdef XP_MACOSX |
|
285 </toolbarbutton> |
|
286 <toolbarbutton type="menu" class="tabbable" |
|
287 #else |
|
288 </menu> |
|
289 <menu accesskey="&maintenance.accesskey;" class="menu-iconic" |
|
290 #endif |
|
291 id="maintenanceButton" label="&maintenance.label;" |
|
292 tooltiptext="&maintenance.tooltip;"> |
|
293 <menupopup id="maintenanceButtonPopup"> |
|
294 <menuitem id="backupBookmarks" |
|
295 command="OrganizerCommand_backup" |
|
296 label="&cmd.backup.label;" |
|
297 accesskey="&cmd.backup.accesskey;"/> |
|
298 <menu id="fileRestoreMenu" label="&cmd.restore2.label;" |
|
299 accesskey="&cmd.restore2.accesskey;"> |
|
300 <menupopup id="fileRestorePopup" onpopupshowing="PlacesOrganizer.populateRestoreMenu();"> |
|
301 <menuitem id="restoreFromFile" |
|
302 command="OrganizerCommand_restoreFromFile" |
|
303 label="&cmd.restoreFromFile.label;" |
|
304 accesskey="&cmd.restoreFromFile.accesskey;"/> |
|
305 </menupopup> |
|
306 </menu> |
|
307 <menuseparator/> |
|
308 <menuitem id="fileImport" |
|
309 command="OrganizerCommand_import" |
|
310 label="&importBookmarksFromHTML.label;" |
|
311 accesskey="&importBookmarksFromHTML.accesskey;"/> |
|
312 <menuitem id="fileExport" |
|
313 command="OrganizerCommand_export" |
|
314 label="&exportBookmarksToHTML.label;" |
|
315 accesskey="&exportBookmarksToHTML.accesskey;"/> |
|
316 <menuseparator/> |
|
317 <menuitem id="browserImport" |
|
318 command="OrganizerCommand_browserImport" |
|
319 label="&importOtherBrowser.label;" |
|
320 accesskey="&importOtherBrowser.accesskey;"/> |
|
321 </menupopup> |
|
322 #ifdef XP_MACOSX |
|
323 </toolbarbutton> |
|
324 #else |
|
325 </menu> |
|
326 </menubar> |
|
327 #endif |
|
328 |
|
329 <spacer id="libraryToolbarSpacer" flex="1"/> |
|
330 |
|
331 <textbox id="searchFilter" |
|
332 clickSelectsAll="true" |
|
333 type="search" |
|
334 aria-controls="placeContent" |
|
335 oncommand="PlacesSearchBox.search(this.value);" |
|
336 collection="bookmarks"> |
|
337 </textbox> |
|
338 </toolbar> |
|
339 </toolbox> |
|
340 |
|
341 <hbox flex="1" id="placesView"> |
|
342 <tree id="placesList" |
|
343 class="plain placesTree" |
|
344 type="places" |
|
345 hidecolumnpicker="true" context="placesContext" |
|
346 onselect="PlacesOrganizer.onPlaceSelected(true);" |
|
347 onclick="PlacesOrganizer.onPlacesListClick(event);" |
|
348 onfocus="PlacesOrganizer.updateDetailsPane(event);" |
|
349 seltype="single" |
|
350 persist="width" |
|
351 width="200" |
|
352 minwidth="100" |
|
353 maxwidth="400"> |
|
354 <treecols> |
|
355 <treecol anonid="title" flex="1" primary="true" hideheader="true"/> |
|
356 </treecols> |
|
357 <treechildren flex="1"/> |
|
358 </tree> |
|
359 <splitter collapse="none" persist="state"></splitter> |
|
360 <vbox id="contentView" flex="4"> |
|
361 <deck id="placesViewsDeck" |
|
362 selectedIndex="0" |
|
363 flex="1"> |
|
364 <tree id="placeContent" |
|
365 class="plain placesTree" |
|
366 context="placesContext" |
|
367 hidecolumnpicker="true" |
|
368 flex="1" |
|
369 type="places" |
|
370 flatList="true" |
|
371 selectfirstnode="true" |
|
372 enableColumnDrag="true" |
|
373 onfocus="PlacesOrganizer.updateDetailsPane(event)" |
|
374 onselect="PlacesOrganizer.updateDetailsPane(event)" |
|
375 onkeypress="ContentTree.onKeyPress(event);" |
|
376 onopenflatcontainer="PlacesOrganizer.openFlatContainer(aContainer);"> |
|
377 <treecols id="placeContentColumns" context="placesColumnsContext"> |
|
378 <treecol label="&col.name.label;" id="placesContentTitle" anonid="title" flex="5" primary="true" ordinal="1" |
|
379 persist="width hidden ordinal sortActive sortDirection"/> |
|
380 <splitter class="tree-splitter"/> |
|
381 <treecol label="&col.tags.label;" id="placesContentTags" anonid="tags" flex="2" |
|
382 persist="width hidden ordinal sortActive sortDirection"/> |
|
383 <splitter class="tree-splitter"/> |
|
384 <treecol label="&col.url.label;" id="placesContentUrl" anonid="url" flex="5" |
|
385 persist="width hidden ordinal sortActive sortDirection"/> |
|
386 <splitter class="tree-splitter"/> |
|
387 <treecol label="&col.mostrecentvisit.label;" id="placesContentDate" anonid="date" flex="1" hidden="true" |
|
388 persist="width hidden ordinal sortActive sortDirection"/> |
|
389 <splitter class="tree-splitter"/> |
|
390 <treecol label="&col.visitcount.label;" id="placesContentVisitCount" anonid="visitCount" flex="1" hidden="true" |
|
391 persist="width hidden ordinal sortActive sortDirection"/> |
|
392 <splitter class="tree-splitter"/> |
|
393 <treecol label="&col.keyword.label;" id="placesContentKeyword" anonid="keyword" flex="1" hidden="true" |
|
394 persist="width hidden ordinal sortActive sortDirection"/> |
|
395 <splitter class="tree-splitter"/> |
|
396 <treecol label="&col.description.label;" id="placesContentDescription" anonid="description" flex="1" hidden="true" |
|
397 persist="width hidden ordinal sortActive sortDirection"/> |
|
398 <splitter class="tree-splitter"/> |
|
399 <treecol label="&col.dateadded.label;" id="placesContentDateAdded" anonid="dateAdded" flex="1" hidden="true" |
|
400 persist="width hidden ordinal sortActive sortDirection"/> |
|
401 <splitter class="tree-splitter"/> |
|
402 <treecol label="&col.lastmodified.label;" id="placesContentLastModified" anonid="lastModified" flex="1" hidden="true" |
|
403 persist="width hidden ordinal sortActive sortDirection"/> |
|
404 </treecols> |
|
405 <treechildren flex="1" onclick="ContentTree.onClick(event);"/> |
|
406 </tree> |
|
407 </deck> |
|
408 <deck id="detailsDeck" style="height: 11em;"> |
|
409 <vbox id="itemsCountBox" align="center"> |
|
410 <spacer flex="3"/> |
|
411 <label id="itemsCountText"/> |
|
412 <spacer flex="1"/> |
|
413 <description id="selectItemDescription"> |
|
414 &detailsPane.selectAnItemText.description; |
|
415 </description> |
|
416 <spacer flex="3"/> |
|
417 </vbox> |
|
418 <vbox id="infoBox" minimal="true"> |
|
419 <vbox id="editBookmarkPanelContent" flex="1"/> |
|
420 <hbox id="infoBoxExpanderWrapper" align="center"> |
|
421 |
|
422 <button type="image" id="infoBoxExpander" |
|
423 class="expander-down" |
|
424 oncommand="PlacesOrganizer.toggleAdditionalInfoFields();" |
|
425 observes="paneElementsBroadcaster"/> |
|
426 |
|
427 <label id="infoBoxExpanderLabel" |
|
428 lesslabel="&detailsPane.less.label;" |
|
429 lessaccesskey="&detailsPane.less.accesskey;" |
|
430 morelabel="&detailsPane.more.label;" |
|
431 moreaccesskey="&detailsPane.more.accesskey;" |
|
432 value="&detailsPane.more.label;" |
|
433 accesskey="&detailsPane.more.accesskey;" |
|
434 control="infoBoxExpander"/> |
|
435 |
|
436 </hbox> |
|
437 </vbox> |
|
438 </deck> |
|
439 </vbox> |
|
440 </hbox> |
|
441 </window> |