| OLD | NEW |
| 1 <h1>What's New in Extensions?</h1> | 1 <h1>What's New in Extensions?</h1> |
| 2 <!-- --> | 2 <!-- --> |
| 3 | 3 |
| 4 <p> | 4 <p> |
| 5 This page lists the API and manifest changes | 5 This page lists the API and manifest changes |
| 6 made in recent releases. | 6 made in recent releases. |
| 7 </p> | 7 </p> |
| 8 | 8 |
| 9 <h2 id="26"> Google Chrome 26 </h2> | 9 <h2 id="26"> Google Chrome 26 </h2> |
| 10 | 10 |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 59 non-persistent, using a feature we call | 59 non-persistent, using a feature we call |
| 60 <a href="event_pages.html">event pages</a>. | 60 <a href="event_pages.html">event pages</a>. |
| 61 Event pages run only while they're being used, | 61 Event pages run only while they're being used, |
| 62 and will unload when idle to save resources. | 62 and will unload when idle to save resources. |
| 63 </ul> | 63 </ul> |
| 64 | 64 |
| 65 <h2 id="21"> Google Chrome 21 </h2> | 65 <h2 id="21"> Google Chrome 21 </h2> |
| 66 | 66 |
| 67 <h4> New Features </h4> | 67 <h4> New Features </h4> |
| 68 <ul> | 68 <ul> |
| 69 <li>The <a href="manifest.html#sandbox">sandbox manifest entry</a> allows | 69 <li>The <a href="manifest/sandbox.html">sandbox manifest entry</a> allows |
| 70 you to define some pages within your extension that are automatically run | 70 you to define some pages within your extension that are automatically run |
| 71 in a low-privilege sandbox. This sandbox is not bound by the | 71 in a low-privilege sandbox. This sandbox is not bound by the |
| 72 <a href="contentSecurityPolicy.html">content_security_policy</a>. | 72 <a href="contentSecurityPolicy.html">content_security_policy</a>. |
| 73 <li>The <a href="input.ime.html">IME</a> API allows extensions to implement | 73 <li>The <a href="input.ime.html">IME</a> API allows extensions to implement |
| 74 <a href="http://en.wikipedia.org/wiki/Input_method">input method | 74 <a href="http://en.wikipedia.org/wiki/Input_method">input method |
| 75 editors</a> on Chrome OS. | 75 editors</a> on Chrome OS. |
| 76 </ul> | 76 </ul> |
| 77 | 77 |
| 78 <h4> Additions to Existing Features </h4> | 78 <h4> Additions to Existing Features </h4> |
| 79 <ul> | 79 <ul> |
| (...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 197 <li>The <a href="pageCapture.html">page capture API</a> | 197 <li>The <a href="pageCapture.html">page capture API</a> |
| 198 lets you save a tab as MHTML. | 198 lets you save a tab as MHTML. |
| 199 <li> The <a href="privacy.html">privacy API</a> | 199 <li> The <a href="privacy.html">privacy API</a> |
| 200 lets you control usage of the features | 200 lets you control usage of the features |
| 201 in Chrome that can affect a user's privacy policy. | 201 in Chrome that can affect a user's privacy policy. |
| 202 </ul> | 202 </ul> |
| 203 | 203 |
| 204 <h4> Manifest changes </h4> | 204 <h4> Manifest changes </h4> |
| 205 <ul> | 205 <ul> |
| 206 <li>The new | 206 <li>The new |
| 207 <a href="manifest.html#manifest_version">manifest version</a> | 207 <a href="manifest/manifest_version.html">manifest version</a> |
| 208 field specifies the version of the manifest that your package requires. | 208 field specifies the version of the manifest that your package requires. |
| 209 As of Chrome 18, you should use | 209 As of Chrome 18, you should use |
| 210 <a href="manifestVersion.html">manifest version 2</a>. | 210 <a href="manifestVersion.html">manifest version 2</a>. |
| 211 <li>The new | 211 <li>The new |
| 212 <a href="contentSecurityPolicy.html">Content Security Policy (CSP)</a> | 212 <a href="contentSecurityPolicy.html">Content Security Policy (CSP)</a> |
| 213 field is used to define an extension's policies | 213 field is used to define an extension's policies |
| 214 towards the types of content | 214 towards the types of content |
| 215 that can be loaded and executed by the extension. | 215 that can be loaded and executed by the extension. |
| 216 <li>Most background pages only include a list of script files. | 216 <li>Most background pages only include a list of script files. |
| 217 For these background pages, | 217 For these background pages, |
| 218 you can use the new | 218 you can use the new |
| 219 <a href="background_pages.html">background.scripts</a> property | 219 <a href="background_pages.html">background.scripts</a> property |
| 220 and Chrome will generate a background page for you. | 220 and Chrome will generate a background page for you. |
| 221 <li>The new | 221 <li>The new |
| 222 <a href="manifest.html#web_accessible_resources">web_accessible_resources<
/a> | 222 <a href="manifest/web_accessible_resources.html">web_accessible_resources<
/a> |
| 223 field specifies the paths of packaged resources | 223 field specifies the paths of packaged resources |
| 224 that are expected to be usable in the context of a web page. | 224 that are expected to be usable in the context of a web page. |
| 225 </ul> | 225 </ul> |
| 226 | 226 |
| 227 <h4> Additions to existing APIs </h4> | 227 <h4> Additions to existing APIs </h4> |
| 228 <ul> | 228 <ul> |
| 229 <li>The <code>chrome.tabs</code> | 229 <li>The <code>chrome.tabs</code> |
| 230 $ref:tabs.create and | 230 $ref:tabs.create and |
| 231 $ref:tabs.update methods | 231 $ref:tabs.update methods |
| 232 now have an <code>openerTabId</code> parameter. | 232 now have an <code>openerTabId</code> parameter. |
| (...skipping 23 matching lines...) Expand all Loading... |
| 256 <li>The management API's | 256 <li>The management API's |
| 257 $ref:management.ExtensionInfo object | 257 $ref:management.ExtensionInfo object |
| 258 now has a <code>disabledReason</code> property. | 258 now has a <code>disabledReason</code> property. |
| 259 </ul> | 259 </ul> |
| 260 | 260 |
| 261 <h4> Changes to existing APIs </h4> | 261 <h4> Changes to existing APIs </h4> |
| 262 | 262 |
| 263 <ul> | 263 <ul> |
| 264 <li>The <a href="omnibox.html">omnibox API</a> | 264 <li>The <a href="omnibox.html">omnibox API</a> |
| 265 now works in | 265 now works in |
| 266 <a href="manifest.html#incognito">split incognito mode</a>. | 266 <a href="manifest/incognito.html">split incognito mode</a>. |
| 267 </ul> | 267 </ul> |
| 268 | 268 |
| 269 <h2 id="16"> Google Chrome 16 </h2> | 269 <h2 id="16"> Google Chrome 16 </h2> |
| 270 | 270 |
| 271 <h4> New APIs </h4> | 271 <h4> New APIs </h4> |
| 272 <ul> | 272 <ul> |
| 273 <li>The | 273 <li>The |
| 274 <a href="webNavigation.html">web navigation API</a> | 274 <a href="webNavigation.html">web navigation API</a> |
| 275 lets extensions receive notifications about the status | 275 lets extensions receive notifications about the status |
| 276 of navigation requests. | 276 of navigation requests. |
| 277 You can use this API to track navigation events. | 277 You can use this API to track navigation events. |
| 278 <li>The | 278 <li>The |
| 279 <a href="permissions.html">optional permissions API</a> | 279 <a href="permissions.html">optional permissions API</a> |
| 280 lets you control when users are presented with permission requests. | 280 lets you control when users are presented with permission requests. |
| 281 <li>The | 281 <li>The |
| 282 <a href="contentSettings.html">content settings API</a> | 282 <a href="contentSettings.html">content settings API</a> |
| 283 lets extensions customize Chrome’s behavior | 283 lets extensions customize Chrome’s behavior |
| 284 on a per-site basis instead of globally. | 284 on a per-site basis instead of globally. |
| 285 You can use this API to control whether websites can use features | 285 You can use this API to control whether websites can use features |
| 286 such as cookies, JavaScript, and plug-ins. | 286 such as cookies, JavaScript, and plug-ins. |
| 287 </ul> | 287 </ul> |
| 288 | 288 |
| 289 <h4> Manifest changes </h4> | 289 <h4> Manifest changes </h4> |
| 290 <ul> | 290 <ul> |
| 291 <li>The new | 291 <li>The new |
| 292 <a href="manifest.html#requirements">requirements</a> field | 292 <a href="manifest/requirements.html">requirements</a> field |
| 293 allows you to declare extension requirements up front. | 293 allows you to declare extension requirements up front. |
| 294 For example, you can use this field | 294 For example, you can use this field |
| 295 to specify that your app requires 3D graphics support | 295 to specify that your app requires 3D graphics support |
| 296 in order to use features such as CSS 3D Tranforms or WebGL. | 296 in order to use features such as CSS 3D Tranforms or WebGL. |
| 297 </ul> | 297 </ul> |
| 298 | 298 |
| 299 <h4> Additions to existing APIs </h4> | 299 <h4> Additions to existing APIs </h4> |
| 300 <ul> | 300 <ul> |
| 301 <li>The new | 301 <li>The new |
| 302 $ref:tabs.query method | 302 $ref:tabs.query method |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 347 <ul> | 347 <ul> |
| 348 <li>The <a href="webstore.html">webstore API</a> | 348 <li>The <a href="webstore.html">webstore API</a> |
| 349 lets you initiate app and extensions installations | 349 lets you initiate app and extensions installations |
| 350 <a href="http://code.google.com/chrome/webstore/docs/inline_installation.html">
"inline"</a> | 350 <a href="http://code.google.com/chrome/webstore/docs/inline_installation.html">
"inline"</a> |
| 351 from your site. | 351 from your site. |
| 352 </ul> | 352 </ul> |
| 353 | 353 |
| 354 <h4> Manifest changes </h4> | 354 <h4> Manifest changes </h4> |
| 355 <ul> | 355 <ul> |
| 356 <li>The new | 356 <li>The new |
| 357 <a href="manifest.html#offline_enabled">offline_enabled</a> field | 357 <a href="manifest/offline_enabled.html">offline_enabled</a> field |
| 358 lets you specify that your app works well even without an internet | 358 lets you specify that your app works well even without an internet |
| 359 connection. | 359 connection. |
| 360 </ul> | 360 </ul> |
| 361 | 361 |
| 362 <h4> Additions to existing APIs </h4> | 362 <h4> Additions to existing APIs </h4> |
| 363 <ul> | 363 <ul> |
| 364 <li>You can retrieve permission warnings using the new management API method
s | 364 <li>You can retrieve permission warnings using the new management API method
s |
| 365 $ref:management.getPermissionWarningsById | 365 $ref:management.getPermissionWarningsById |
| 366 and | 366 and |
| 367 $ref:management.getPermissionWarningsByManifest. | 367 $ref:management.getPermissionWarningsByManifest. |
| (...skipping 28 matching lines...) Expand all Loading... |
| 396 <a href="http://code.google.com/chrome/nativeclient/">Native Client docume
ntation</a>. | 396 <a href="http://code.google.com/chrome/nativeclient/">Native Client docume
ntation</a>. |
| 397 </ul> | 397 </ul> |
| 398 | 398 |
| 399 <h4> Manifest changes </h4> | 399 <h4> Manifest changes </h4> |
| 400 <ul> | 400 <ul> |
| 401 <li>The new | 401 <li>The new |
| 402 <a href="contentSecurityPolicy.html">content_security_policy</a> field | 402 <a href="contentSecurityPolicy.html">content_security_policy</a> field |
| 403 can help prevent | 403 can help prevent |
| 404 <a href="http://blog.chromium.org/2011/07/writing-extensions-more-securely
.html">cross-site scripting vulnerabilities</a> | 404 <a href="http://blog.chromium.org/2011/07/writing-extensions-more-securely
.html">cross-site scripting vulnerabilities</a> |
| 405 in your extension. | 405 in your extension. |
| 406 <li>The new <a href="manifest.html#nacl_modules">nacl_modules</a> field | 406 <li>The new <a href="manifest/nacl_modules.html">nacl_modules</a> field |
| 407 lets you register Native Client modules | 407 lets you register Native Client modules |
| 408 as content handlers for MIME types. | 408 as content handlers for MIME types. |
| 409 </ul> | 409 </ul> |
| 410 | 410 |
| 411 <h4> Additions to existing APIs </h4> | 411 <h4> Additions to existing APIs </h4> |
| 412 <ul> | 412 <ul> |
| 413 <li><a href="contextMenus.html">Context menu</a> items | 413 <li><a href="contextMenus.html">Context menu</a> items |
| 414 can now appear even in documents | 414 can now appear even in documents |
| 415 that have file:// or chrome:// URLs. | 415 that have file:// or chrome:// URLs. |
| 416 Previously, they were restricted to documents with | 416 Previously, they were restricted to documents with |
| (...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 556 <h2 id="9"> Google Chrome 9 </h2> | 556 <h2 id="9"> Google Chrome 9 </h2> |
| 557 | 557 |
| 558 <h4> New APIs </h4> | 558 <h4> New APIs </h4> |
| 559 <ul> | 559 <ul> |
| 560 <li>The <a href="omnibox.html">omnibox API</a> allows you to | 560 <li>The <a href="omnibox.html">omnibox API</a> allows you to |
| 561 register a keyword with Chrome's address bar. | 561 register a keyword with Chrome's address bar. |
| 562 </ul> | 562 </ul> |
| 563 | 563 |
| 564 <h4> Manifest changes </h4> | 564 <h4> Manifest changes </h4> |
| 565 <ul> | 565 <ul> |
| 566 <li>The <a href="manifest.html#homepage_url">homepage_url</a> field | 566 <li>The <a href="manifest/homepage_url.html">homepage_url</a> field |
| 567 lets you specify the extension or app's homepage. | 567 lets you specify the extension or app's homepage. |
| 568 </ul> | 568 </ul> |
| 569 | 569 |
| 570 <h4> Additions to existing APIs </h4> | 570 <h4> Additions to existing APIs </h4> |
| 571 <ul> | 571 <ul> |
| 572 <li>The $ref:tabs.Tab object | 572 <li>The $ref:tabs.Tab object |
| 573 now has a <code>pinned</code> property | 573 now has a <code>pinned</code> property |
| 574 that's reflected in various <code>chrome.tabs</code> methods. | 574 that's reflected in various <code>chrome.tabs</code> methods. |
| 575 For example, | 575 For example, |
| 576 you can $ref:tabs.create | 576 you can $ref:tabs.create |
| (...skipping 21 matching lines...) Expand all Loading... |
| 598 <ul> | 598 <ul> |
| 599 <li>All users can now install | 599 <li>All users can now install |
| 600 <a href="http://code.google.com/chrome/apps/index.html">apps</a>; | 600 <a href="http://code.google.com/chrome/apps/index.html">apps</a>; |
| 601 packaged apps can use extension APIs. | 601 packaged apps can use extension APIs. |
| 602 <li>The <a href="management.html">management API</a> | 602 <li>The <a href="management.html">management API</a> |
| 603 lets you work with installed apps and extensions. | 603 lets you work with installed apps and extensions. |
| 604 </ul> | 604 </ul> |
| 605 | 605 |
| 606 <h4> Manifest changes </h4> | 606 <h4> Manifest changes </h4> |
| 607 <ul> | 607 <ul> |
| 608 <li>Introduced <a href="manifest.html#incognito">split incognito</a> | 608 <li>Introduced <a href="manifest/incognito.html">split incognito</a> |
| 609 mode as the default for installable web apps | 609 mode as the default for installable web apps |
| 610 (also available to extensions). | 610 (also available to extensions). |
| 611 <li>The <a href="tabs.html">tabs API</a> | 611 <li>The <a href="tabs.html">tabs API</a> |
| 612 <code>create()</code> and <code>update()</code> methods | 612 <code>create()</code> and <code>update()</code> methods |
| 613 no longer require the "tabs" permission, removing one common cause of | 613 no longer require the "tabs" permission, removing one common cause of |
| 614 <a href="permission_warnings.html">scary dialogs</a>. | 614 <a href="permission_warnings.html">scary dialogs</a>. |
| 615 </ul> | 615 </ul> |
| 616 | 616 |
| 617 | 617 |
| 618 <h2 id="6">Google Chrome 6</h2> | 618 <h2 id="6">Google Chrome 6</h2> |
| (...skipping 16 matching lines...) Expand all Loading... |
| 635 <li>A new | 635 <li>A new |
| 636 $ref:windows.WINDOW_ID_NONE constant | 636 $ref:windows.WINDOW_ID_NONE constant |
| 637 identifies when focus shifts away from the browser. | 637 identifies when focus shifts away from the browser. |
| 638 <li>The new | 638 <li>The new |
| 639 $ref:tabs.getCurrent method | 639 $ref:tabs.getCurrent method |
| 640 returns the tab associated with the currently executing script. | 640 returns the tab associated with the currently executing script. |
| 641 </ul> | 641 </ul> |
| 642 | 642 |
| 643 <h4> Manifest changes </h4> | 643 <h4> Manifest changes </h4> |
| 644 <ul> | 644 <ul> |
| 645 <li>The <a href="manifest.html#geolocation">geolocation</a> permission | 645 <li>The <a href="manifest/geolocation.html">geolocation</a> permission |
| 646 gives an extension access to the user's physical location. | 646 gives an extension access to the user's physical location. |
| 647 <li><a href="match_patterns.html">Match patterns</a> can now select all | 647 <li><a href="match_patterns.html">Match patterns</a> can now select all |
| 648 schemes or all URLs. | 648 schemes or all URLs. |
| 649 <li>Access to file:/// URLs no longer triggers the "access to your machine" | 649 <li>Access to file:/// URLs no longer triggers the "access to your machine" |
| 650 security warning, but now requires user opt-in from the extensions | 650 security warning, but now requires user opt-in from the extensions |
| 651 management page. | 651 management page. |
| 652 </ul> | 652 </ul> |
| OLD | NEW |