CLOSED TREE: TraceMonkey merge head. (a=blockers)
[mozilla-central.git] / toolkit / mozapps / extensions / content / extensions.xul
blob02f7478036e999dd0d1fe827dc730dc4e441c9f2
1 <?xml version="1.0"?>
2 <!-- ***** BEGIN LICENSE BLOCK *****
3 - Version: MPL 1.1/GPL 2.0/LGPL 2.1
5 - The contents of this file are subject to the Mozilla Public License Version
6 - 1.1 (the "License"); you may not use this file except in compliance with
7 - the License. You may obtain a copy of the License at
8 - http://www.mozilla.org/MPL/
10 - Software distributed under the License is distributed on an "AS IS" basis,
11 - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
12 - for the specific language governing rights and limitations under the
13 - License.
15 - The Original Code is the Extension Manager UI.
17 - The Initial Developer of the Original Code is
18 - the Mozilla Foundation.
19 - Portions created by the Initial Developer are Copyright (C) 2010
20 - the Initial Developer. All Rights Reserved.
22 - Contributor(s):
23 - Blair McBride <bmcbride@mozilla.com>
24 - David Dahl <ddahl@mozilla.com>
26 - Alternatively, the contents of this file may be used under the terms of
27 - either the GNU General Public License Version 2 or later (the "GPL"), or
28 - the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
29 - in which case the provisions of the GPL or the LGPL are applicable instead
30 - of those above. If you wish to allow use of your version of this file only
31 - under the terms of either the GPL or the LGPL, and not to allow others to
32 - use your version of this file under the terms of the MPL, indicate your
33 - decision by deleting the provisions above and replace them with the notice
34 - and other provisions required by the LGPL or the GPL. If you do not delete
35 - the provisions above, a recipient may use your version of this file under
36 - the terms of any one of the MPL, the GPL or the LGPL.
38 - ***** END LICENSE BLOCK ***** -->
40 <?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
41 <?xml-stylesheet href="chrome://mozapps/content/extensions/extensions.css"?>
42 <?xml-stylesheet href="chrome://mozapps/skin/extensions/extensions.css"?>
44 <!DOCTYPE page [
45 <!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
46 %brandDTD;
47 <!ENTITY % extensionsDTD SYSTEM "chrome://mozapps/locale/extensions/extensions.dtd">
48 %extensionsDTD;
51 <page xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
52 xmlns:xhtml="http://www.w3.org/1999/xhtml"
53 id="addons-page" title="&addons.windowTitle;"
54 role="application" windowtype="Addons:Manager"
55 disablefastfind="true"
56 ondragenter="gDragDrop.onDragOver(event)"
57 ondragover="gDragDrop.onDragOver(event)"
58 ondrop="gDragDrop.onDrop(event)">
60 <xhtml:link rel="shortcut icon"
61 href="chrome://mozapps/skin/extensions/extensionGeneric-16.png"/>
63 <script type="application/javascript"
64 src="chrome://mozapps/content/extensions/extensions.js"/>
65 <script type="application/javascript"
66 src="chrome://global/content/contentAreaUtils.js"/>
68 <popupset>
69 <!-- menu for an addon item -->
70 <menupopup id="addonitem-popup">
71 <menuitem id="menuitem_showDetails" command="cmd_showItemDetails"
72 default="true" label="&cmd.showDetails.label;"
73 accesskey="&cmd.showDetails.accesskey;"/>
74 <menuitem id="menuitem_enableItem" command="cmd_enableItem"
75 label="&cmd.enableAddon.label;"
76 accesskey="&cmd.enableAddon.accesskey;"/>
77 <menuitem id="menuitem_disableItem" command="cmd_disableItem"
78 label="&cmd.disableAddon.label;"
79 accesskey="&cmd.disableAddon.accesskey;"/>
80 <menuitem id="menuitem_enableTheme" command="cmd_enableItem"
81 label="&cmd.enableTheme.label;"
82 accesskey="&cmd.enableTheme.accesskey;"/>
83 <menuitem id="menuitem_disableTheme" command="cmd_disableItem"
84 label="&cmd.disableTheme.label;"
85 accesskey="&cmd.disableTheme.accesskey;"/>
86 <menuitem id="menuitem_installItem" command="cmd_installItem"
87 label="&cmd.installAddon.label;"
88 accesskey="&cmd.installAddon.accesskey;"/>
89 <menuitem id="menuitem_uninstallItem" command="cmd_uninstallItem"
90 label="&cmd.uninstallAddon.label;"
91 accesskey="&cmd.uninstallAddon.accesskey;"/>
92 <menuseparator id="addonitem-menuseparator" />
93 <menuitem id="menuitem_preferences" command="cmd_showItemPreferences"
94 #ifdef XP_WIN
95 label="&cmd.preferencesWin.label;"
96 accesskey="&cmd.preferencesWin.accesskey;"/>
97 #else
98 label="&cmd.preferencesUnix.label;"
99 accesskey="&cmd.preferencesUnix.accesskey;"/>
100 #endif
101 <menuitem id="menuitem_findUpdates" command="cmd_findItemUpdates"
102 label="&cmd.findUpdates.label;"
103 accesskey="&cmd.findUpdates.accesskey;"/>
104 <menuitem id="menuitem_about" command="cmd_showItemAbout"
105 label="&cmd.about.label;"
106 accesskey="&cmd.about.accesskey;"/>
107 </menupopup>
108 </popupset>
110 <!-- global commands - these act on all addons, or affect the addons manager
111 in some other way -->
112 <commandset id="globalCommandSet"
113 oncommand="gViewController.doCommand(event.target.id);">
114 <command id="cmd_findAllUpdates"/>
115 <command id="cmd_restartApp"/>
116 <command id="cmd_goToDiscoverPane"/>
117 <command id="cmd_goToRecentUpdates"/>
118 <command id="cmd_goToAvailableUpdates"/>
119 <command id="cmd_installFromFile"/>
120 <command id="cmd_back"/>
121 <command id="cmd_forward"/>
122 <command id="cmd_enableCheckCompatibility"/>
123 <command id="cmd_enableUpdateSecurity"/>
124 <command id="cmd_toggleAutoUpdateDefault"/>
125 <command id="cmd_resetAddonAutoUpdate"/>
126 </commandset>
128 <!-- view commands - these act on the selected addon -->
129 <commandset id="viewCommandSet"
130 events="richlistbox-select" commandupdater="true"
131 oncommandupdate="gViewController.updateCommands();"
132 oncommand="gViewController.doCommand(event.target.id);">
133 <command id="cmd_showItemDetails"/>
134 <command id="cmd_findItemUpdates"/>
135 <command id="cmd_showItemPreferences"/>
136 <command id="cmd_showItemAbout"/>
137 <command id="cmd_enableItem"/>
138 <command id="cmd_disableItem"/>
139 <command id="cmd_installItem"/>
140 <command id="cmd_purchaseItem"/>
141 <command id="cmd_uninstallItem"/>
142 <command id="cmd_cancelUninstallItem"/>
143 <command id="cmd_cancelOperation"/>
144 <command id="cmd_contribute"/>
145 </commandset>
147 <!-- main header -->
148 <hbox id="header" align="center">
149 <toolbarbutton id="back-btn" class="nav-button header-button" command="cmd_back"
150 tooltiptext="&cmd.back.tooltip;" hidden="true" disabled="true"/>
151 <toolbarbutton id="forward-btn" class="nav-button header-button" command="cmd_forward"
152 tooltiptext="&cmd.forward.tooltip;" hidden="true" disabled="true"/>
153 <spacer flex="1"/>
154 <hbox id="updates-container" align="center">
155 <image class="spinner"/>
156 <label id="updates-noneFound" hidden="true"
157 value="&updates.noneFound.label;"/>
158 <button id="updates-manualUpdatesFound-btn" class="button-link"
159 hidden="true" label="&updates.manualUpdatesFound.label;"
160 command="cmd_goToAvailableUpdates"/>
161 <label id="updates-progress" hidden="true"
162 value="&updates.updating.label;"/>
163 <label id="updates-installed" hidden="true"
164 value="&updates.installed.label;"/>
165 <label id="updates-downloaded" hidden="true"
166 value="&updates.downloaded.label;"/>
167 <button id="updates-restart-btn" class="button-link" hidden="true"
168 label="&updates.restart.label;"
169 command="cmd_restartApp"/>
170 </hbox>
171 <toolbarbutton id="header-utils-btn" class="header-button" type="menu"
172 tooltiptext="&toolsMenu.tooltip;">
173 <menupopup id="utils-menu">
174 <menuitem id="utils-updateNow"
175 label="&updates.checkForUpdates.label;"
176 accesskey="&updates.checkForUpdates.accesskey;"
177 command="cmd_findAllUpdates"/>
178 <menuitem id="utils-viewUpdates"
179 label="&updates.viewUpdates.label;"
180 accesskey="&updates.viewUpdates.accesskey;"
181 command="cmd_goToRecentUpdates"/>
182 <menuseparator id="utils-installFromFile-separator"/>
183 <menuitem id="utils-installFromFile"
184 label="&installAddonFromFile.label;"
185 accesskey="&installAddonFromFile.accesskey;"
186 command="cmd_installFromFile"/>
187 <menuseparator/>
188 <menuitem id="utils-autoUpdateDefault"
189 label="&updates.updateAddonsAutomatically.label;"
190 accesskey="&updates.updateAddonsAutomatically.accesskey;"
191 type="checkbox" autocheck="false"
192 command="cmd_toggleAutoUpdateDefault"/>
193 <menuitem id="utils-resetAddonUpdatesToAutomatic"
194 label="&updates.resetUpdatesToAutomatic.label;"
195 accesskey="&updates.resetUpdatesToAutomatic.accesskey;"
196 command="cmd_resetAddonAutoUpdate"/>
197 <menuitem id="utils-resetAddonUpdatesToManual"
198 label="&updates.resetUpdatesToManual.label;"
199 accesskey="&updates.resetUpdatesToManual.accesskey;"
200 command="cmd_resetAddonAutoUpdate"/>
201 </menupopup>
202 </toolbarbutton>
203 <textbox id="header-search" type="search" searchbutton="true"
204 placeholder="&search.placeholder;"/>
205 </hbox>
207 <hbox flex="1">
209 <!-- category list -->
210 <richlistbox id="categories" persist="last-selected">
211 <richlistitem id="category-search" value="addons://search/"
212 class="category"
213 name="&view.search.label;"
214 tooltiptext="&view.search.label;" disabled="true"/>
215 <richlistitem id="category-discover" value="addons://discover/"
216 class="category"
217 name="&view.discover.label;"
218 tooltiptext="&view.discover.label;"/>
219 <richlistitem id="category-languages" value="addons://list/locale"
220 class="category"
221 name="&view.locales.label;"
222 tooltiptext="&view.locales.label;"
223 hidden="true" persist="hidden"/>
224 <richlistitem id="category-searchengines"
225 value="addons://list/searchengine"
226 class="category"
227 name="&view.searchengines.label;"
228 tooltiptext="&view.searchengines.label;"
229 hidden="true" persist="hidden"/>
230 <richlistitem id="category-extensions" value="addons://list/extension"
231 class="category"
232 name="&view.features.label;"
233 tooltiptext="&view.features.label;"/>
234 <richlistitem id="category-themes" value="addons://list/theme"
235 class="category"
236 name="&view.appearance2.label;"
237 tooltiptext="&view.appearance2.label;"/>
238 <richlistitem id="category-plugins" value="addons://list/plugin"
239 class="category"
240 name="&view.plugins.label;"
241 tooltiptext="&view.plugins.label;"/>
242 <richlistitem id="category-availableUpdates" value="addons://updates/available"
243 class="category"
244 name="&view.availableUpdates.label;"
245 tooltiptext="&view.availableUpdates.label;"
246 disabled="true"/>
247 <richlistitem id="category-recentUpdates" value="addons://updates/recent"
248 class="category"
249 name="&view.recentUpdates.label;"
250 tooltiptext="&view.recentUpdates.label;" disabled="true"/>
251 </richlistbox>
253 <box id="view-port-container" flex="1">
255 <!-- view port -->
256 <deck id="view-port" flex="1" selectedIndex="0">
258 <!-- discover view -->
259 <deck id="discover-view" flex="1" class="view-pane" selectedIndex="0">
260 <vbox id="discover-loading" align="center" pack="stretch" flex="1" class="alert-container">
261 <spacer class="alert-spacer-before"/>
262 <hbox class="alert loading" align="center">
263 <image/>
264 <label value="&loading.label;"/>
265 </hbox>
266 <spacer class="alert-spacer-after"/>
267 </vbox>
268 <vbox id="discover-error" align="center" pack="stretch" flex="1" class="alert-container">
269 <spacer class="alert-spacer-before"/>
270 <hbox>
271 <spacer class="discover-spacer-before"/>
272 <hbox class="alert" align="center">
273 <image class="discover-logo"/>
274 <vbox flex="1" align="stretch">
275 <label class="discover-title">&discover.title;</label>
276 <description class="discover-description">&discover.description2;</description>
277 <description class="discover-footer">&discover.footer;</description>
278 </vbox>
279 </hbox>
280 <spacer class="discover-spacer-after"/>
281 </hbox>
282 <spacer class="alert-spacer-after"/>
283 </vbox>
284 <browser id="discover-browser" type="content" flex="1"
285 disablehistory="true" homepage="about:blank"/>
286 </deck>
288 <!-- search view -->
289 <vbox id="search-view" flex="1" class="view-pane">
290 <hbox class="view-header global-warning-container" align="center">
291 <!-- global warnings -->
292 <hbox class="global-warning" flex="1">
293 <hbox class="global-warning-safemode" flex="1" align="center"
294 tooltiptext="&warning.safemode.label;">
295 <image class="warning-icon"/>
296 <label class="global-warning-text" flex="1" crop="end"
297 value="&warning.safemode.label;"/>
298 </hbox>
299 <hbox class="global-warning-checkcompatibility" flex="1" align="center"
300 tooltiptext="&warning.checkcompatibility.label;">
301 <image class="warning-icon"/>
302 <label class="global-warning-text" flex="1" crop="end"
303 value="&warning.checkcompatibility.label;"/>
304 </hbox>
305 <button class="button-link global-warning-checkcompatibility"
306 label="&warning.checkcompatibility.enable.label;"
307 tooltiptext="&warning.checkcompatibility.enable.tooltip;"
308 command="cmd_enableCheckCompatibility"/>
309 <hbox class="global-warning-updatesecurity" flex="1" align="center"
310 tooltiptext="&warning.updatesecurity.label;">
311 <image class="warning-icon"/>
312 <label class="global-warning-text" flex="1" crop="end"
313 value="&warning.updatesecurity.label;"/>
314 </hbox>
315 <button class="button-link global-warning-updatesecurity"
316 label="&warning.updatesecurity.enable.label;"
317 tooltiptext="&warning.updatesecurity.enable.tooltip;"
318 command="cmd_enableUpdateSecurity"/>
319 <spacer flex="5000"/> <!-- Necessary to allow the message to wrap -->
320 </hbox>
321 <spacer flex="1"/>
322 <hbox id="search-sorters" class="sort-controls"
323 showrelevance="true" sortby="relevancescore" ascending="false"/>
324 </hbox>
325 <hbox id="search-filter" align="center">
326 <label id="search-filter-label" value="&search.filter2.label;"/>
327 <radiogroup id="search-filter-radiogroup" orient="horizontal"
328 align="center" persist="value" value="remote">
329 <radio id="search-filter-local" class="search-filter-radio"
330 label="&search.filter2.installed.label;" value="local"
331 tooltiptext="&search.filter2.installed.tooltip;"/>
332 <radio id="search-filter-remote" class="search-filter-radio"
333 label="&search.filter2.available.label;" value="remote"
334 tooltiptext="&search.filter2.available.tooltip;"/>
335 </radiogroup>
336 </hbox>
337 <vbox id="search-loading" class="alert-container"
338 flex="1" hidden="true">
339 <spacer class="alert-spacer-before"/>
340 <hbox class="alert loading" align="center">
341 <image/>
342 <label value="&loading.label;"/>
343 </hbox>
344 <spacer class="alert-spacer-after"/>
345 </vbox>
346 <vbox id="search-list-empty" class="alert-container"
347 flex="1" hidden="true">
348 <spacer class="alert-spacer-before"/>
349 <vbox class="alert">
350 <label value="&listEmpty.search.label;"/>
351 <button label="&listEmpty.button.label;" class="addon-control"
352 command="cmd_goToDiscoverPane"/>
353 </vbox>
354 <spacer class="alert-spacer-after"/>
355 </vbox>
356 <richlistbox id="search-list" class="list" flex="1">
357 <hbox pack="center">
358 <label id="search-allresults-link" class="text-link"/>
359 </hbox>
360 </richlistbox>
361 </vbox>
363 <!-- list view -->
364 <vbox id="list-view" flex="1" class="view-pane" align="stretch">
365 <hbox class="view-header global-warning-container">
366 <!-- global warnings -->
367 <hbox class="global-warning" flex="1">
368 <hbox class="global-warning-safemode" flex="1" align="center"
369 tooltiptext="&warning.safemode.label;">
370 <image class="warning-icon"/>
371 <label class="global-warning-text" flex="1" crop="end"
372 value="&warning.safemode.label;"/>
373 </hbox>
374 <hbox class="global-warning-checkcompatibility" flex="1" align="center"
375 tooltiptext="&warning.checkcompatibility.label;">
376 <image class="warning-icon"/>
377 <label class="global-warning-text" flex="1" crop="end"
378 value="&warning.checkcompatibility.label;"/>
379 </hbox>
380 <button class="button-link global-warning-checkcompatibility"
381 label="&warning.checkcompatibility.enable.label;"
382 tooltiptext="&warning.checkcompatibility.enable.tooltip;"
383 command="cmd_enableCheckCompatibility"/>
384 <hbox class="global-warning-updatesecurity" flex="1" align="center"
385 tooltiptext="&warning.updatesecurity.label;">
386 <image class="warning-icon"/>
387 <label class="global-warning-text" flex="1" crop="end"
388 value="&warning.updatesecurity.label;"/>
389 </hbox>
390 <button class="button-link global-warning-updatesecurity"
391 label="&warning.updatesecurity.enable.label;"
392 tooltiptext="&warning.updatesecurity.enable.tooltip;"
393 command="cmd_enableUpdateSecurity"/>
394 <spacer flex="5000"/> <!-- Necessary to allow the message to wrap -->
395 </hbox>
396 </hbox>
397 <vbox id="addon-list-empty" class="alert-container"
398 flex="1" hidden="true">
399 <spacer class="alert-spacer-before"/>
400 <vbox class="alert">
401 <label value="&listEmpty.installed.label;"/>
402 <button label="&listEmpty.button.label;" class="addon-control"
403 command="cmd_goToDiscoverPane"/>
404 </vbox>
405 <spacer class="alert-spacer-after"/>
406 </vbox>
407 <richlistbox id="addon-list" class="list" flex="1"/>
408 </vbox>
410 <!-- updates view -->
411 <vbox id="updates-view" flex="1" class="view-pane">
412 <hbox class="view-header global-warning-container" align="center">
413 <!-- global warnings -->
414 <hbox class="global-warning" flex="1">
415 <hbox class="global-warning-safemode" flex="1" align="center"
416 tooltiptext="&warning.safemode.label;">
417 <image class="warning-icon"/>
418 <label class="global-warning-text" flex="1" crop="end"
419 value="&warning.safemode.label;"/>
420 </hbox>
421 <hbox class="global-warning-checkcompatibility" flex="1" align="center"
422 tooltiptext="&warning.checkcompatibility.label;">
423 <image class="warning-icon"/>
424 <label class="global-warning-text" flex="1" crop="end"
425 value="&warning.checkcompatibility.label;"/>
426 </hbox>
427 <button class="button-link global-warning-checkcompatibility"
428 label="&warning.checkcompatibility.enable.label;"
429 tooltiptext="&warning.checkcompatibility.enable.tooltip;"
430 command="cmd_enableCheckCompatibility"/>
431 <hbox class="global-warning-updatesecurity" flex="1" align="center"
432 tooltiptext="&warning.updatesecurity.label;">
433 <image class="warning-icon"/>
434 <label class="global-warning-text" flex="1" crop="end"
435 value="&warning.updatesecurity.label;"/>
436 </hbox>
437 <button class="button-link global-warning-updatesecurity"
438 label="&warning.updatesecurity.enable.label;"
439 tooltiptext="&warning.updatesecurity.enable.tooltip;"
440 command="cmd_enableUpdateSecurity"/>
441 <spacer flex="5000"/> <!-- Necessary to allow the message to wrap -->
442 </hbox>
443 <spacer flex="1"/>
444 <hbox id="updates-sorters" class="sort-controls" sortby="updateDate"
445 ascending="false"/>
446 </hbox>
447 <vbox id="updates-list-empty" class="alert-container"
448 flex="1" hidden="true">
449 <spacer class="alert-spacer-before"/>
450 <vbox class="alert">
451 <label id="empty-availableUpdates-msg" value="&listEmpty.availableUpdates.label;"/>
452 <label id="empty-recentUpdates-msg" value="&listEmpty.recentUpdates.label;"/>
453 <button label="&listEmpty.findUpdates.label;" class="addon-control"
454 command="cmd_findAllUpdates"/>
455 </vbox>
456 <spacer class="alert-spacer-after"/>
457 </vbox>
458 <hbox id="update-actions" pack="center">
459 <button id="update-selected-btn" hidden="true"
460 label="&updates.updateSelected.label;"
461 tooltiptext="&updates.updateSelected.tooltip;"/>
462 </hbox>
463 <richlistbox id="updates-list" class="list" flex="1"/>
464 </vbox>
466 <!-- detail view -->
467 <scrollbox id="detail-view" flex="1" class="view-pane addon-view" orient="vertical">
468 <!-- global warnings -->
469 <hbox class="global-warning-container global-warning">
470 <hbox class="global-warning-safemode" flex="1" align="center"
471 tooltiptext="&warning.safemode.label;">
472 <image class="warning-icon"/>
473 <label class="global-warning-text" flex="1" crop="end"
474 value="&warning.safemode.label;"/>
475 </hbox>
476 <hbox class="global-warning-checkcompatibility" flex="1" align="center"
477 tooltiptext="&warning.checkcompatibility.label;">
478 <image class="warning-icon"/>
479 <label class="global-warning-text" flex="1" crop="end"
480 value="&warning.checkcompatibility.label;"/>
481 </hbox>
482 <button class="button-link global-warning-checkcompatibility"
483 label="&warning.checkcompatibility.enable.label;"
484 tooltiptext="&warning.checkcompatibility.enable.tooltip;"
485 command="cmd_enableCheckCompatibility"/>
486 <hbox class="global-warning-updatesecurity" flex="1" align="center"
487 tooltiptext="&warning.updatesecurity.label;">
488 <image class="warning-icon"/>
489 <label class="global-warning-text" flex="1" crop="end"
490 value="&warning.updatesecurity.label;"/>
491 </hbox>
492 <button class="button-link global-warning-updatesecurity"
493 label="&warning.updatesecurity.enable.label;"
494 tooltiptext="&warning.updatesecurity.enable.tooltip;"
495 command="cmd_enableUpdateSecurity"/>
496 <spacer flex="5000"/> <!-- Necessary to allow the message to wrap -->
497 </hbox>
498 <hbox flex="1">
499 <spacer flex="1"/>
500 <!-- "loading" splash screen -->
501 <vbox class="alert-container">
502 <spacer class="alert-spacer-before"/>
503 <hbox class="alert loading">
504 <image/>
505 <label value="&loading.label;"/>
506 </hbox>
507 <spacer class="alert-spacer-after"/>
508 </vbox>
509 <!-- actual detail view -->
510 <vbox class="detail-view-container" flex="3" contextmenu="addonitem-popup">
511 <vbox id="detail-notifications">
512 <hbox id="warning-container" align="center" class="warning">
513 <image class="warning-icon"/>
514 <label id="detail-warning" flex="1"/>
515 <label id="detail-warning-link" class="text-link"/>
516 <spacer flex="5000"/> <!-- Necessary to allow the message to wrap -->
517 </hbox>
518 <hbox id="error-container" align="center" class="error">
519 <image class="error-icon"/>
520 <label id="detail-error" flex="1"/>
521 <label id="detail-error-link" class="text-link"/>
522 <spacer flex="5000"/> <!-- Necessary to allow the message to wrap -->
523 </hbox>
524 <hbox id="pending-container" align="center" class="pending">
525 <image class="pending-icon"/>
526 <label id="detail-pending" flex="1"/>
527 <button id="detail-restart-btn" class="button-link"
528 label="&addon.restartNow.label;"
529 command="cmd_restartApp"/>
530 <button id="detail-undo-btn" class="button-link"
531 label="&addon.undoAction.label;"
532 tooltipText="&addon.undoAction.tooltip;"
533 command="cmd_cancelOperation"/>
534 <spacer flex="5000"/> <!-- Necessary to allow the message to wrap -->
535 </hbox>
536 </vbox>
537 <hbox align="start">
538 <image id="detail-icon" class="icon"/>
539 <vbox flex="1">
540 <vbox id="detail-summary">
541 <hbox id="detail-name-container" class="name-container"
542 align="start">
543 <label id="detail-name" flex="1"/>
544 <label id="detail-version"/>
545 <label class="disabled-postfix" value="&addon.disabled.postfix;"/>
546 <label class="update-postfix" value="&addon.update.postfix;"/>
547 <spacer flex="5000"/> <!-- Necessary to allow the name to wrap -->
548 </hbox>
549 <label id="detail-creator" class="creator"/>
550 </vbox>
551 <hbox id="detail-desc-container" align="start">
552 <vbox pack="center"> <!-- Necessary to work around bug 394738 -->
553 <image id="detail-screenshot" hidden="true"/>
554 </vbox>
555 <vbox flex="1">
556 <description id="detail-desc"/>
557 <description id="detail-fulldesc"/>
558 </vbox>
559 </hbox>
560 <vbox id="detail-contributions">
561 <description id="detail-contrib-description">
562 &detail.contributions.description;
563 </description>
564 <hbox align="center">
565 <label id="detail-contrib-suggested"/>
566 <spacer flex="1"/>
567 <button id="detail-contrib-btn"
568 label="&cmd.contribute.label;"
569 accesskey="&cmd.contribute.accesskey;"
570 tooltiptext="&cmd.contribute.tooltip;"
571 command="cmd_contribute"/>
572 </hbox>
573 </vbox>
574 <grid id="detail-grid">
575 <columns>
576 <column flex="1"/>
577 <column flex="2"/>
578 </columns>
579 <rows>
580 <row class="detail-row-complex" id="detail-updates-row">
581 <label class="detail-row-label" value="&detail.updateType;"/>
582 <hbox align="center">
583 <radiogroup id="detail-autoUpdate" orient="horizontal">
584 <!-- The values here need to match the values of
585 AddonManager.AUTOUPDATE_* -->
586 <radio label="&detail.updateDefault.label;"
587 tooltiptext="&detail.updateDefault.tooltip;"
588 value="1"/>
589 <radio label="&detail.updateAutomatic.label;"
590 tooltiptext="&detail.updateAutomatic.tooltip;"
591 value="2"/>
592 <radio label="&detail.updateManual.label;"
593 tooltiptext="&detail.updateManual.tooltip;"
594 value="0"/>
595 </radiogroup>
596 <button id="detail-findUpdates-btn" class="button-link"
597 label="&detail.checkForUpdates.label;"
598 accesskey="&detail.checkForUpdates.accesskey;"
599 tooltiptext="&detail.checkForUpdates.tooltip;"
600 command="cmd_findItemUpdates"/>
601 </hbox>
602 </row>
603 <row class="detail-row" id="detail-dateUpdated" label="&detail.lastupdated.label;"/>
604 <row class="detail-row-complex" id="detail-homepage-row" label="&detail.home;">
605 <label class="detail-row-label" value="&detail.home;"/>
606 <label id="detail-homepage" class="detail-row-value text-link" crop="end"/>
607 </row>
608 <row class="detail-row-complex" id="detail-repository-row" label="&detail.repository;">
609 <label class="detail-row-label" value="&detail.repository;"/>
610 <label id="detail-repository" class="detail-row-value text-link"/>
611 </row>
612 <row class="detail-row" id="detail-size" label="&detail.size;"/>
613 <row class="detail-row-complex" id="detail-rating-row">
614 <label class="detail-row-label" value="&rating2.label;"/>
615 <hbox>
616 <label id="detail-rating" class="meta-value meta-rating"
617 showrating="average"/>
618 <label id="detail-reviews" class="text-link"/>
619 </hbox>
620 </row>
621 <row class="detail-row" id="detail-downloads" label="&detail.numberOfDownloads.label;"/>
622 </rows>
623 </grid>
624 <hbox id="detail-controls">
625 <button id="detail-prefs-btn" class="addon-control preferences"
626 #ifdef XP_WIN
627 label="&detail.showPreferencesWin.label;"
628 accesskey="&detail.showPreferencesWin.accesskey;"
629 tooltiptext="&detail.showPreferencesWin.tooltip;"
630 #else
631 label="&detail.showPreferencesUnix.label;"
632 accesskey="&detail.showPreferencesUnix.accesskey;"
633 tooltiptext="&detail.showPreferencesUnix.tooltip;"
634 #endif
635 command="cmd_showItemPreferences"/>
636 <spacer flex="1"/>
637 <button id="detail-enable-btn" class="addon-control enable"
638 label="&cmd.enableAddon.label;"
639 accesskey="&cmd.enableAddon.accesskey;"
640 command="cmd_enableItem"/>
641 <button id="detail-disable-btn" class="addon-control disable"
642 label="&cmd.disableAddon.label;"
643 accesskey="&cmd.disableAddon.accesskey;"
644 command="cmd_disableItem"/>
645 <button id="detail-uninstall-btn" class="addon-control remove"
646 label="&cmd.uninstallAddon.label;"
647 accesskey="&cmd.uninstallAddon.accesskey;"
648 command="cmd_uninstallItem"/>
649 <button id="detail-purchase-btn" class="addon-control purchase"
650 command="cmd_purchaseItem"/>
651 <button id="detail-install-btn" class="addon-control install"
652 label="&cmd.installAddon.label;"
653 accesskey="&cmd.installAddon.accesskey;"
654 command="cmd_installItem"/>
655 </hbox>
656 </vbox>
657 </hbox>
658 </vbox>
659 <spacer flex="1"/>
660 </hbox>
661 </scrollbox>
663 </deck>
665 </box>
666 </hbox>
668 </page>