Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(96)

Side by Side Diff: chrome/browser/resources/extensions_ui.html

Issue 271114: Add concept of an options page to Extensions.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/browser/extensions/extensions_ui.cc ('k') | chrome/common/extensions/extension.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <!DOCTYPE HTML> 1 <!DOCTYPE HTML>
2 <html> 2 <html>
3 <head> 3 <head>
4 <meta charset="utf-8"> 4 <meta charset="utf-8">
5 <title i18n-content="title">About extensions</title> 5 <title i18n-content="title">About extensions</title>
6 <style> 6 <style>
7 body { 7 body {
8 font-size: 84%; 8 font-size: 84%;
9 font-family: Arial, Helvetica, sans-serif; 9 font-family: Arial, Helvetica, sans-serif;
10 padding: 0.75em; 10 padding: 0.75em;
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after
199 * expects to correctly populate the page. 199 * expects to correctly populate the page.
200 */ 200 */
201 var extensionDataFormat = { 201 var extensionDataFormat = {
202 "extensions": [ 202 "extensions": [
203 { 203 {
204 "id": "0000000000000000000000000000000000000000", 204 "id": "0000000000000000000000000000000000000000",
205 "name": "Google Chrome", 205 "name": "Google Chrome",
206 "description": "Extension long format description", 206 "description": "Extension long format description",
207 "version": "1.0.231", 207 "version": "1.0.231",
208 "enabled": "true", 208 "enabled": "true",
209 "options_url": "options.html",
209 "content_scripts": [ 210 "content_scripts": [
210 { 211 {
211 "js": ["script1_file1.js", "script1_file2.js"], 212 "js": ["script1_file1.js", "script1_file2.js"],
212 "css": ["script1_file1.css", "script1_file2.css"], 213 "css": ["script1_file1.css", "script1_file2.css"],
213 "matches": ["http://*/*", "http://other.com/*"] 214 "matches": ["http://*/*", "http://other.com/*"]
214 }, 215 },
215 { 216 {
216 "js": ["script2_file1.js", "script2_file2.js"], 217 "js": ["script2_file1.js", "script2_file2.js"],
217 "css": ["script2_file1.css", "script2_file2.css"], 218 "css": ["script2_file1.css", "script2_file2.css"],
218 "matches": ["http://*/*", "http://other.com/*"] 219 "matches": ["http://*/*", "http://other.com/*"]
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 339
339 /** 340 /**
340 * Handles an 'uninstall' button getting clicked. 341 * Handles an 'uninstall' button getting clicked.
341 */ 342 */
342 function handleUninstallExtension(node) { 343 function handleUninstallExtension(node) {
343 // Tell the C++ ExtensionDOMHandler to uninstall an extension. 344 // Tell the C++ ExtensionDOMHandler to uninstall an extension.
344 chrome.send('uninstall', [node.extensionId]); 345 chrome.send('uninstall', [node.extensionId]);
345 } 346 }
346 347
347 /** 348 /**
348 * Utility function which asks the C++ to show a platform-specific file select 349 * Handles an 'options' button getting clicked.
349 * dialog, and fire |callback| with the |filePath| that resulted. |selectType|
350 * can be either 'file' or 'folder'. |operation| can be 'load', 'packRoot',
351 * or 'pem' which are signals to the C++ to do some operation-specific
352 * configuration.
353 */ 350 */
351 function handleOptions(node) {
352 chrome.send('options', [node.extensionId]);
353 }
354
355 /**
356 * Utility function which asks the C++ to show a platform-specific file select
357 * dialog, and fire |callback| with the |filePath| that resulted. |selectType|
358 * can be either 'file' or 'folder'. |operation| can be 'load', 'packRoot',
359 * or 'pem' which are signals to the C++ to do some operation-specific
360 * configuration.
361 */
354 function showFileDialog(selectType, operation, callback) { 362 function showFileDialog(selectType, operation, callback) {
355 handleFilePathSelected = function(filePath) { 363 handleFilePathSelected = function(filePath) {
356 callback(filePath); 364 callback(filePath);
357 handleFilePathSelected = function() {}; 365 handleFilePathSelected = function() {};
358 }; 366 };
359 367
360 chrome.send('selectFilePath', [selectType, operation]); 368 chrome.send('selectFilePath', [selectType, operation]);
361 } 369 }
362 370
363 /** 371 /**
(...skipping 16 matching lines...) Expand all
380 388
381 /** 389 /**
382 * Shows to modal HTML pack dialog. 390 * Shows to modal HTML pack dialog.
383 */ 391 */
384 function showPackDialog() { 392 function showPackDialog() {
385 document.getElementById('dialogBackground').style.display="-webkit-box"; 393 document.getElementById('dialogBackground').style.display="-webkit-box";
386 } 394 }
387 395
388 /** 396 /**
389 * Hides the pack dialog. 397 * Hides the pack dialog.
390 */ 398 */
391 function hidePackDialog() { 399 function hidePackDialog() {
392 document.getElementById('dialogBackground').style.display="none" 400 document.getElementById('dialogBackground').style.display="none"
393 } 401 }
394 402
395 /** 403 /**
396 * Pop up a select dialog to capture the extension path. 404 * Pop up a select dialog to capture the extension path.
397 */ 405 */
398 function selectExtensionPath() { 406 function selectExtensionPath() {
399 showFileDialog('folder', 'packRoot', function(filePath) { 407 showFileDialog('folder', 'packRoot', function(filePath) {
400 document.getElementById('extensionPathText').value = filePath; 408 document.getElementById('extensionPathText').value = filePath;
(...skipping 30 matching lines...) Expand all
431 HEADING 439 HEADING
432 </div> 440 </div>
433 <div class="dialogBrowseRow"> 441 <div class="dialogBrowseRow">
434 <div i18n-content="rootDirectoryLabel"> 442 <div i18n-content="rootDirectoryLabel">
435 ROOT_DIR 443 ROOT_DIR
436 </div> 444 </div>
437 <div> 445 <div>
438 <input type="text" id="extensionPathText"> 446 <input type="text" id="extensionPathText">
439 </div> 447 </div>
440 <div> 448 <div>
441 <input type="button" value="BROWSE" 449 <input type="button" value="BROWSE"
442 i18n-values="value:packDialogBrowse" 450 i18n-values="value:packDialogBrowse"
443 onclick="selectExtensionPath();"> 451 onclick="selectExtensionPath();">
444 </div> 452 </div>
445 </div> 453 </div>
446 <div class="dialogBrowseRow"> 454 <div class="dialogBrowseRow">
447 <div i18n-content="privateKeyLabel"> 455 <div i18n-content="privateKeyLabel">
448 PRIVATE_KEY 456 PRIVATE_KEY
449 </div> 457 </div>
450 <div> 458 <div>
451 <input type="text" id="privateKeyPath"> 459 <input type="text" id="privateKeyPath">
452 </div> 460 </div>
453 <div> 461 <div>
454 <input type="button" value="BROWSE" 462 <input type="button" value="BROWSE"
455 i18n-values="value:packDialogBrowse" 463 i18n-values="value:packDialogBrowse"
456 onclick="selectPrivateKeyPath();"> 464 onclick="selectPrivateKeyPath();">
457 </div> 465 </div>
458 </div> 466 </div>
459 <div class="dialogBrowseRow" id="dialogContentFooter"> 467 <div class="dialogBrowseRow" id="dialogContentFooter">
460 <div> 468 <div>
461 <input type="button" value="OK" onclick="packExtension();"> 469 <input type="button" value="OK" onclick="packExtension();">
462 </div> 470 </div>
463 <div> 471 <div>
464 <input type="button" value="Cancel" onclick="hidePackDialog();"> 472 <input type="button" value="Cancel" onclick="hidePackDialog();">
465 </div> 473 </div>
466 </div> 474 </div>
467 </div> 475 </div>
468 </div> 476 </div>
469 </div> 477 </div>
470 </div> 478 </div>
471 479
472 <div id="body-container" style="display:none;"> 480 <div id="body-container" style="display:none;">
473 481
474 <div id="header"><h1>About extensions</h1></div> 482 <div id="header"><h1>About extensions</h1></div>
475 483
476 <div id="outside"> 484 <div id="outside">
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
517 >Enable</button> 525 >Enable</button>
518 <button 526 <button
519 jsvalues=".extensionId:id" 527 jsvalues=".extensionId:id"
520 jsdisplay="enabled" 528 jsdisplay="enabled"
521 onclick="handleReloadExtension(this)" 529 onclick="handleReloadExtension(this)"
522 >Reload</button> 530 >Reload</button>
523 <button 531 <button
524 jsvalues=".extensionId:id" 532 jsvalues=".extensionId:id"
525 onclick="handleUninstallExtension(this)" 533 onclick="handleUninstallExtension(this)"
526 >Uninstall</button> 534 >Uninstall</button>
535 <button
536 jsdisplay="options_url"
537 jsvalues=".extensionId:id"
538 onclick="handleOptions(this)"
539 >Options</button>
527 </div> 540 </div>
528 </div> 541 </div>
529 </div> 542 </div>
530 </div> 543 </div>
531 </div> 544 </div>
532 </div> 545 </div>
533 546
534 </td> 547 </td>
535 <td style="min-width:20px"></td> 548 <td style="min-width:20px"></td>
536 <td valign="top"> 549 <td valign="top">
537 <h2>Tools</h2> 550 <h2>Tools</h2>
538 551
539 <div class="sidebar-content"> 552 <div class="sidebar-content">
540 <button onclick="loadExtension()">Load unpacked extension...</butt on><br /> 553 <button onclick="loadExtension()">Load unpacked extension...</butt on><br />
541 <button onclick="showPackDialog()">Pack extension...</button><br / > 554 <button onclick="showPackDialog()">Pack extension...</button><br / >
542 <button onclick="autoUpdate()">Update extensions now</button> 555 <button onclick="autoUpdate()">Update extensions now</button>
543 </div> 556 </div>
544 </td> 557 </td>
545 </tr> 558 </tr>
546 </table> 559 </table>
547 560
548 </div> <!-- /outside --> 561 </div> <!-- /outside -->
549 </body> 562 </body>
550 </html> 563 </html>
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extensions_ui.cc ('k') | chrome/common/extensions/extension.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698