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

Side by Side Diff: chrome/common/extensions/docs/server2/templates/articles/whats_new.html

Issue 10832042: Extensions Docs Server: Doc conversion script (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: script/build.py fixes Created 8 years, 4 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
OLDNEW
(Empty)
1 <h1 class="page_title">What's New in Extensions?</h1>
2 <!-- -->
3 <p>
4 This page lists the API and manifest changes
5 made in recent releases.
6 </p>
7 <ul>
8 <li> <a href="#20">Google Chrome 20</a> </li>
9 <li> <a href="#19">Google Chrome 19</a> </li>
10 <li> <a href="#18">Google Chrome 18</a> </li>
11 <li> <a href="#17">Google Chrome 17</a> </li>
12 <li> <a href="#16">Google Chrome 16</a> </li>
13 <li> <a href="#15">Google Chrome 15</a> </li>
14 <li> <a href="#14">Google Chrome 14</a> </li>
15 <li> <a href="#13">Google Chrome 13</a> </li>
16 <li> <a href="#12">Google Chrome 12</a> </li>
17 <li> <a href="#11">Google Chrome 11</a> </li>
18 <li> <a href="#10">Google Chrome 10</a> </li>
19 <li> <a href="#9">Google Chrome 9</a> </li>
20 <li> <a href="#8">Google Chrome 8</a> </li>
21 <li> <a href="#7">Google Chrome 7</a> </li>
22 <li> <a href="#6">Google Chrome 6</a> </li>
23 </ul>
24 <p class="note">
25 <strong>New version of packaged apps:</strong><br>
26 There's a new version of
27 <a href="http://developer.chrome.com/trunk/apps/about_apps.html">packaged apps </a>
28 in the <a href="http://dev.chromium.org/getting-involved/dev-channel?">dev cha nnel</a>.
29 </p>
30 <p>
31 In addition to the changes listed below,
32 check out the
33 <a href="experimental.html">experimental APIs</a>.
34 </p>
35 <h2 id="20"> Google Chrome 20 </h2>
36 <h4> New APIs </h4>
37 <ul>
38 <li>The
39 <a href="storage.html">storage API</a>
40 lets you store, retrieve, and
41 track changes to user data.</li>
42 </ul>
43 <h4> Manifest changes </h4>
44 <ul>
45 <li>Manifest version 1 was deprecated in Chrome 18
46 and will be phased out according to the
47 <a href="manifestVersion.html">Manifest version 1 support schedule</a>.</l i>
48 </ul>
49 <h4> Additions to existing APIs </h4>
50 <ul>
51 <li>The <code>chrome.contextMenus</code>
52 <a href="contextMenus.html#method-create">create()</a> and
53 <a href="contextMenus.html#method-update">update()</a>
54 methods now have an <code>enabled</code> parameter.</li>
55 <li>The privacy API's <a href="privacy.html#property-services">services</a> object
56 now has a <code>spellingServiceEnabled</code> setting.</li>
57 <li>The <code>chrome.tabs</code>
58 <a href="tabs.html#method-executeScript">executeScript()</a> and
59 <a href="tabs.html#method-insertCSS">insertCSS()</a>
60 now accept a <code>runAt</code> parameter.</li>
61 </ul>
62 <h4> Changes to existing APIs </h4>
63 <ul>
64 <li>The <code>sendRequest()</code> method
65 has been deprecated in favor of the
66 <code>sendMessage()</code> method for both the
67 <a href="extension.html#method-sendMessage">extension API</a> and
68 <a href="tabs.html#method-sendMessage">tabs API</a>.</li>
69 <li>The <a href="external_extensions.html">external_extensions.json file</a>
70 has been deprecated in favor of individual
71 <code>&lt;extension-id&gt;.json</code> files.</li>
72 </ul>
73 <h2 id="19"> Google Chrome 19 </h2>
74 <h4> New APIs </h4>
75 <ul>
76 <li>The <a href="browsingData.html">browsing data API</a>
77 lets you remove browsing data from a user's local profile.
78 <li>The <a href="topSites.html">top sites API</a>
79 gives you access to the top sites
80 that are displayed on the new tab page.
81 </ul>
82 <h4> Manifest changes </h4>
83 <ul>
84 <li>The new <a href="manifest.html#intents">intents</a>
85 field specifies all intent handlers provided by the extension.
86 </ul>
87 <h4> Additions to existing APIs </h4>
88 <ul>
89 <li>The window API's <a href="windows.html#type-windows.Window">Window</a>
90 object now has an <code>alwaysOnTop</code> property and
91 supports the "fullscreen" state.
92 <li>The <code>chrome.tabs</code>
93 <a href="tabs.html#method-query">query()</a> method
94 now has the <code>currentWindow</code> and
95 <code>lastFocusedWindow</code> parameters.
96 <li>The <a href="browserAction.html">browser action API</a>
97 has the following new getter functions:
98 <a href="browserAction.html#method-getTitle">getTitle</a>,
99 <a href="browserAction.html#method-getBadgeText">getBadgeText</a>,
100 <a href="browserAction.html#method-getBadgeBackgroundColor">getBadgeBackg r
101 oundColor</a>, and
102 <a href="browserAction.html#method-getPopup">getPopup</a>.
103 <li>The <a href="pageAction.html">page action API</a>
104 has the following new getter functions:
105 <a href="pageAction.html#method-getTitle">getTitle</a> and
106 <a href="pageAction.html#method-getPopup">getPopup</a>.
107 </ul>
108 <h2 id="18"> Google Chrome 18 </h2>
109 <h4> New APIs </h4>
110 <ul>
111 <li>The <a href="debugger.html">debugger API</a>
112 lets you use the Chrome Developer Tools
113 on one or more tabs remotely.
114 <li>The <a href="devtools.html">developer tools APIs</a>
115 provide support for extending Chrome Developer Tools.
116 The inspected window API lets you interact with the inspected window.
117 The network API lets you retrive information about network requests.
118 The panels API lets you add panels and sidebars.
119 <li>The <a href="input.ime.html">input method editor API</a>
120 lets you add custom input methods
121 such as complex language characters
122 directly to the system's input device.
123 <li>The <a href="pageCapture.html">page capture API</a>
124 lets you save a tab as MHTML.
125 <li> The <a href="privacy.html">privacy API</a>
126 lets you control usage of the features
127 in Chrome that can affect a user's privacy policy.
128 </ul>
129 <h4> Manifest changes </h4>
130 <ul>
131 <li>The new
132 <a href="manifest.html#manifest_version">manifest version</a>
133 field specifies the version of the manifest that your package requires.
134 As of Chrome 18, you should use
135 <a href="manifestVersion.html">manifest version 2</a>.
136 <li>The new
137 <a href="contentSecurityPolicy.html">Content Security Policy (CSP)</a>
138 field is used to define an extension's policies
139 towards the types of content
140 that can be loaded and executed by the extension.
141 <li>Most background pages only include a list of script files.
142 For these background pages,
143 you can use the new
144 <a href="background_pages.html">background.scripts</a> property
145 and Chrome will generate a background page for you.
146 <li>The new
147 <a href="manifest.html#web_accessible_resources">web_accessible_resources< /a>
148 field specifies the paths of packaged resources
149 that are expected to be usable in the context of a web page.
150 </ul>
151 <h4> Additions to existing APIs </h4>
152 <ul>
153 <li>The <a href="windows.html#property-WINDOW_ID_CURRENT">windows API</a>
154 now has a <code>WINDOW_ID_CURRENT</code> property.
155 <li>The <code>chrome.tabs</code>
156 <a href="tabs.html#method-create">create()</a> and
157 <a href="tabs.html#method-update">update()</a> methods
158 now have an <code>openerTabId</code> parameter.
159 </ul>
160 <h2 id="17"> Google Chrome 17 </h2>
161 <h4> New APIs </h4>
162 <ul>
163 <li>The
164 <a href="webRequest.html">web request API</a>
165 lets you intercept, block, or
166 modify requests in-flight and
167 to observe and analyze traffic.
168 </ul>
169 <h4> Manifest changes </h4>
170 <ul>
171 <li>Permissions can be
172 <a href="permissions.html">optional</a>
173 for the content setting API, the web navigation API, and
174 the new web request API.
175 </ul>
176 <h4> Additions to existing APIs </h4>
177 <ul>
178 <li>The management API's
179 <a href="management.html#type-management.ExtensionInfo">ExtensionInfo</a> ob ject
180 now has a <code>disabledReason</code> property.
181 </ul>
182 <h4> Changes to existing APIs </h4>
183 <ul>
184 <li>The <a href="omnibox.html">omnibox API</a>
185 now works in
186 <a href="manifest.html#incognito">split incognito mode</a>.
187 </ul>
188 <h2 id="16"> Google Chrome 16 </h2>
189 <h4> New APIs </h4>
190 <ul>
191 <li>The
192 <a href="webNavigation.html">web navigation API</a>
193 lets extensions receive notifications about the status
194 of navigation requests.
195 You can use this API to track navigation events.
196 <li>The
197 <a href="permissions.html">optional permissions API</a>
198 lets you control when users are presented with permission requests.
199 <li>The
200 <a href="contentSettings.html">content settings API</a>
201 lets extensions customize Chrome’s behavior
202 on a per-site basis instead of globally.
203 You can use this API to control whether websites can use features
204 such as cookies, JavaScript, and plug-ins.
205 </ul>
206 <h4> Manifest changes </h4>
207 <ul>
208 <li>The new
209 <a href="manifest.html#requirements">requirements</a> field
210 allows you to declare extension requirements up front.
211 For example, you can use this field
212 to specify that your app requires 3D graphics support
213 in order to use features such as CSS 3D Tranforms or WebGL.
214 </ul>
215 <h4> Additions to existing APIs </h4>
216 <ul>
217 <li>The new
218 <a href="tabs.html#method-query">chrome.tabs.query()</a> method
219 gets all tabs that have the specified properties or
220 all tabs if no properties are specified.
221 <li>The new
222 <a href="tabs.html#method-reload">chrome.tabs.reload()</a> method
223 reloads a tab and includes the option
224 to preserve the local cache of the reloaded tab.
225 <li>The management API's
226 <a href="management.html#type-management.ExtensionInfo">ExtensionInfo</a> ob ject
227 now has an <code>updateURL</code> property.
228 <li>You can now limit the supported locales for an
229 <a href="external_extensions.html">external extension</a>
230 by adding the <code>supported_locales</code> attribute
231 to the <code>external_extensions.json</code>.
232 </ul>
233 <h4> Changes to existing APIs </h4>
234 <ul>
235 <li>The methods <code>getAllInWindow()</code> and
236 <code>getSelected()</code> have been deprecated.
237 To get details about all tabs in the specified window, use
238 <a href="tabs.html#method-query">chrome.tabs.query()</a>
239 with the argument <code>{'windowId': windowID}</code>.
240 To get the tab that is selected in the specified window, use
241 <code>chrome.tabs.query()</code>
242 with the argument <code>{'active': true}</code>.
243 <li>You are no longer required
244 to specify the <code>tabID</code> for the
245 <a href="tabs.html#method-update">chrome.tabs.update()</a> method.
246 When not provided,
247 the <code>tabID</code> defaults
248 to the selected tab of the current window.
249 <li>External extension files on Mac OS can now be owned by users
250 within a wheel group (or an admin group).
251 <li>The "experimental" permission is no longer required
252 for the
253 <a href="windows.html#type-windows.Window">window "panel"</a> type.
254 By default, the "panel" type creates a popup
255 unless the <code>--enable-panels</code> flag is set.
256 </ul>
257 <h2 id="15"> Google Chrome 15 </h2>
258 <h4> New APIs </h4>
259 <ul>
260 <li>The <a href="webstore.html">webstore API</a>
261 lets you initiate app and extensions installations
262 <a href="http://code.google.com/chrome/webstore/docs/inline_installation.html"> "inline"</a>
263 from your site.
264 </ul>
265 <h4> Manifest changes </h4>
266 <ul>
267 <li>The new
268 <a href="manifest.html#offline_enabled">offline_enabled</a> field
269 lets you specify that your app works well even without an internet
270 connection.
271 </ul>
272 <h4> Additions to existing APIs </h4>
273 <ul>
274 <li>You can retrieve permission warnings using the new management API method s
275 <a href="management.html#method-getPermissionWarningsById">getPermissionWa rningsById()</a>
276 and
277 <a href="management.html#method-getPermissionWarningsByManifest">getPermis sionWarningsByManifest()</a>.
278 <li>The management API’s
279 <a href="management.html#type-management.ExtensionInfo">ExtensionInfo</a> object has
280 a new field, <code>offlineEnabled</code>.
281 <li>You can now <a href="i18n.html">internationalize</a> content script CSS
282 files by using <code>__MSG_messagename__</code> placeholders.
283 </ul>
284 <h4> Changes to existing APIs </h4>
285 <ul>
286 <li>The callback for the <a href="tabs.html#method-update">tabs.update</a>
287 method is passed <code>null</code> instead of the tab details if the
288 extension does not have the "tabs" permission.
289 </ul>
290 <h2 id="14"> Google Chrome 14 </h2>
291 <h4> New APIs </h4>
292 <ul>
293 <li>The <a href="tts.html">tts API</a>
294 lets extensions generate speech from text.
295 <li>The <a href="ttsEngine.html">ttsEngine API</a>
296 lets extensions implement text-to-speech (TTS) engines.
297 <li>Extensions that are distributed through the Chrome Web Store
298 can now include Native Client modules.
299 No special manifest entry is necessary, as you can see from the
300 <a href="http://code.google.com/p/naclports/source/browse#svn%2Ftrunk%2Fsr c%2Fpackages%2Flibraries%2Fnethack-3.4.3">NetHack example</a>.
301 For more information, see the
302 <a href="http://blog.chromium.org/2011/08/native-client-brings-sandboxed-n ative.html">announcement</a> and the
303 <a href="http://code.google.com/chrome/nativeclient/">Native Client docume ntation</a>.
304 </ul>
305 <h4> Manifest changes </h4>
306 <ul>
307 <li>The new
308 <a href="manifest.html#content_security_policy">content_security_policy</a > field
309 can help prevent
310 <a href="http://blog.chromium.org/2011/07/writing-extensions-more-securely .html">cross-site scripting vulnerabilities</a>
311 in your extension.
312 <li>The new <a href="manifest.html#nacl_modules">nacl_modules</a> field
313 lets you register Native Client modules
314 as content handlers for MIME types.
315 </ul>
316 <h4> Additions to existing APIs </h4>
317 <ul>
318 <li><a href="contextMenus.html">Context menu</a> items
319 can now appear even in documents
320 that have file:// or chrome:// URLs.
321 Previously, they were restricted to documents with
322 http:// or https:// URLs.
323 <li>An optional <code>drawAttention</code> field in
324 <a href="windows.html#method-update">chrome.windows.update()</a>'s
325 <code>updateInfo</code> object lets you specify that the window
326 should entice the user to change focus to it.
327 <li>The new
328 <a href="bookmarks.html#method-getSubTree">bookmarks.getSubTree()</a>
329 function lets you retrieve just part of the Bookmarks hierarchy.
330 </ul>
331 <h4> Changes to existing APIs </h4>
332 <ul>
333 <li>The "tabs" permission is no longer required for
334 <a href="tabs.html#method-remove">tabs.remove</a> and
335 <a href="tabs.html#event-onRemoved">tabs.onRemoved</a>.
336 </ul>
337 <h2 id="13"> Google Chrome 13 </h2>
338 <h4> New APIs </h4>
339 <ul>
340 <li>The <a href="proxy.html">proxy API</a>
341 lets extensions manage Chrome's proxy settings.
342 <li>The
343 <a href="types.html#type-types.ChromeSetting">chrome.types.ChromeSetting</ a> prototype
344 provides an interface to browser settings;
345 it's used by the proxy API.
346 <li> <em>Chrome OS only:</em>
347 The <a href="fileBrowserHandler.html">fileBrowserHandler API</a>
348 lets you extend the Chrome OS file browser.
349 </ul>
350 <h4> Manifest changes </h4>
351 <ul>
352 <li>A new <code>exclude_matches</code> item
353 in the "content_scripts" field
354 lets you target your content script more precisely.
355 For details, see
356 <a href="content_scripts.html#match-patterns-globs">Match patterns and glo bs</a>.
357 <li>New "clipboardRead" and "clipboardWrite"
358 <a href="manifest.html#permissions">permissions</a>
359 specify capabilities for <code>document.execCommand()</code>.
360 </ul>
361 <h4> Additions to existing APIs </h4>
362 <ul>
363 <li>Content scripts can now make
364 <a href="xhr.html">cross-origin XMLHttpRequests</a>
365 to the same sites that their parent extension can,
366 eliminating the need to relay these requests
367 through a background page.
368 <li>You can now use <code>@run-at</code>
369 in an imported Greasemonkey script
370 to control when the script is injected.
371 It works the same way as
372 <a href="content_scripts.html#run_at"><code>run_at</code></a>
373 in content scripts.
374 </ul>
375 <h2 id="12"> Google Chrome 12 </h2>
376 <h4> Additions to existing APIs </h4>
377 <ul>
378 <li>Two new <code>chrome.extension</code>
379 methods&mdash;<a href="extension.html#method-isAllowedFileSchemeAccess">is AllowedFileSchemeAccess()</a> and
380 <a href="extension.html#method-isAllowedIncognitoAccess">isAllowedIncognit oAccess()</a>&mdash;let you
381 determine whether your extension has increased access,
382 which the user specifies using the extensions management page
383 (<b>chrome://extensions</b>).
384 <li>The <a href="windows.html#method-create">chrome.windows.create()</a>
385 method can now take a <code>focused</code> value.
386 Previously, all new windows had the keyboard focus;
387 now you can create windows without interrupting the user's typing.
388 <li>If the manifest specifies "experimental" permission,
389 your extension can specify "panel" as the value of
390 the <code>type</code> field in
391 the <a href="windows.html#method-create">chrome.windows.create()</a>
392 method
393 or the <a href="windows.html#type-windows.Window">Window</a> type.
394 <li>The <a href="cookies.html#event-onChanged">onChanged</a>
395 event of <code>chrome.cookies</code>
396 now has a <code>cause</code> parameter.
397 <li>The <code>chrome.contextMenus</code>
398 <a href="contextMenus.html#method-create">create()</a> and
399 <a href="contextMenus.html#method-update">update()</a>
400 methods now let you specify a context value of "frame".
401 </ul>
402 <h2 id="11"> Google Chrome 11 </h2>
403 <h4> Changes to existing APIs </h4>
404 <ul>
405 <li>For security reasons, you can no longer call
406 <a href="tabs.html#method-captureVisibleTab">chrome.tab.captureVisibleTab( )</a>
407 on just any tab.
408 Instead, you now must have
409 <a href="manifest.html#permissions">host permission</a>
410 for the URL displayed by that tab.
411 To get the previous behavior,
412 specify <code>&lt;all_urls></code> for the host permission.
413 </ul>
414 <h4> Additions to existing APIs </h4>
415 <ul>
416 <li>The management API's
417 <a href="management.html#type-management.ExtensionInfo">ExtensionInfo</a> object
418 now has a <code>homepageUrl</code> property.
419 <li>The management API now lets you get the icons of
420 disabled apps and extensions.
421 Also, you can now modify the regular icon's URL
422 to get its disabled equivalent.
423 See <a href="management.html#type-management.IconInfo">IconInfo</a> for de tails.
424 <li>The cookies API
425 <a href="cookies.html#method-set">set()</a>
426 and <a href="cookies.html#method-remove">remove()</a> methods
427 can now take callbacks.
428 </ul>
429 <h2 id="10"> Google Chrome 10 </h2>
430 <h4> Manifest changes </h4>
431 <ul>
432 <li>The new <a href="manifest.html#bg">background</a> permission
433 extends the life of Chrome,
434 allowing your extension or app
435 to run even when Chrome has no windows open.
436 </ul>
437 <h4> Additions to existing APIs </h4>
438 <ul>
439 <li>The <a href="windows.html#method-create">chrome.windows.create()</a>
440 method now has a <code>tabId</code> field.
441 You can use it to move a tab or panel into a new window.
442 <p class="note">
443 <b>Note:</b>
444 This change was incorrectly attributed to Chrome 9
445 in previous release notes.
446 </ul>
447 <h2 id="9"> Google Chrome 9 </h2>
448 <h4> New APIs </h4>
449 <ul>
450 <li>The <a href="omnibox.html">omnibox API</a> allows you to
451 register a keyword with Chrome's address bar.
452 </ul>
453 <h4> Manifest changes </h4>
454 <ul>
455 <li>The <a href="manifest.html#homepage_url">homepage_url</a> field
456 lets you specify the extension or app's homepage.
457 </ul>
458 <h4> Additions to existing APIs </h4>
459 <ul>
460 <li>The <a href="tabs.html#type-tabs.Tab">Tab</a> object
461 now has a <code>pinned</code> property
462 that's reflected in various <code>chrome.tabs</code> methods.
463 For example,
464 you can <a href="tabs.html#method-create">create</a>
465 a pinned tab.
466 <li>The <a href="windows.html#method-create">chrome.windows.create()</a>
467 method can now take a list of URLs,
468 letting you create multiple tabs in the new window.
469 <li>The new
470 <a href="management.html#method-get">chrome.management.get()</a> method
471 lets you get information about the specified extension or app.
472 </ul>
473 <h2 id="8"> Google Chrome 8 </h2>
474 <p>
475 We took a break for Chrome 8.
476 No API or manifest changes worth noting.
477 </p>
478 <h2 id="7"> Google Chrome 7 </h2>
479 <h4> New APIs </h4>
480 <ul>
481 <li>All users can now install
482 <a href="http://code.google.com/chrome/apps/index.html">apps</a>;
483 packaged apps can use extension APIs.
484 <li>The <a href="management.html">management API</a>
485 lets you work with installed apps and extensions.
486 </ul>
487 <h4> Manifest changes </h4>
488 <ul>
489 <li>Introduced <a href="manifest.html#incognito">split incognito</a>
490 mode as the default for installable web apps
491 (also available to extensions).
492 <li>The <a href="tabs.html">tabs API</a>
493 <code>create()</code> and <code>update()</code> methods
494 no longer require the "tabs" permission, removing one common cause of
495 <a href="permission_warnings.html">scary dialogs</a>.
496 </ul>
497 <h2 id="6">Google Chrome 6</h2>
498 <h4> New APIs </h4>
499 <ul>
500 <li>The <a href="contextMenus.html">context menus API</a> allows you to
501 add context menus to pages or specific objects on a page.
502 <li>The <a href="cookies.html">cookies API</a> allows you to manage the
503 browser's cookie system.
504 <li>The <a href="idle.html">idle API</a> allows you to detect when the
505 machine's idle state changes.
506 </ul>
507 <h4> Additions to existing APIs </h4>
508 <ul>
509 <li>The <a
510 href="extension.html#method-getViews">chrome.extension.getViews()</a>
511 method can now return popup views.
512 <li>A new <a
513 href="windows.html#property-WINDOW_ID_NONE">WINDOW_ID_NONE</a> constant
514 identifies when focus shifts away from the browser.
515 <li>The new <a
516 href="tabs.html#method-getCurrent">chrome.tabs.getCurrent()</a> method
517 returns the tab associated with the currently executing script.
518 </ul>
519 <h4> Manifest changes </h4>
520 <ul>
521 <li>The <a href="manifest.html#geolocation">geolocation</a> permission
522 gives an extension access to the user's physical location.
523 <li><a href="match_patterns.html">Match patterns</a> can now select all
524 schemes or all URLs.
525 <li>Access to file:/// URLs no longer triggers the "access to your machine"
526 security warning, but now requires user opt-in from the extensions
527 management page.
528 </ul>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698