summaryrefslogtreecommitdiffstats
path: root/chrome/common/extensions/docs/overview.html
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/common/extensions/docs/overview.html')
-rw-r--r--chrome/common/extensions/docs/overview.html125
1 files changed, 96 insertions, 29 deletions
diff --git a/chrome/common/extensions/docs/overview.html b/chrome/common/extensions/docs/overview.html
index 1180ff9..2d5760f 100644
--- a/chrome/common/extensions/docs/overview.html
+++ b/chrome/common/extensions/docs/overview.html
@@ -166,10 +166,10 @@
<li><a href="browserAction.html">Browser Actions</a></li>
<li><a href="contextMenus.html">Context Menus</a></li>
<li><a href="notifications.html">Desktop Notifications</a></li>
+ <li><a href="omnibox.html">Omnibox</a></li>
<li><a href="options.html">Options Pages</a></li>
<li><a href="override.html">Override Pages</a></li>
<li><a href="pageAction.html">Page Actions</a></li>
- <li><a href="themes.html">Themes</a></li>
</ul>
</li>
<li>Browser Interaction
@@ -203,6 +203,7 @@
</li>
</ul>
</li>
+ <li><h2><a href="apps.html">Packaged Apps</a></h2></li>
<li><h2><a href="tutorials.html">Tutorials</a></h2>
<ul>
<li><a href="tut_debugging.html">Debugging</a></li>
@@ -216,9 +217,9 @@
<ul>
<li><a href="manifest.html">Manifest Files</a></li>
<li><a href="match_patterns.html">Match Patterns</a></li>
- <!-- <li>Packages (.crx)</li> -->
</ul>
</li>
+ <li><a href="permission_warnings.html">Permission Warnings</a></li>
<li><a href="api_index.html">chrome.* APIs</a></li>
<li><a href="api_other.html">Other APIs</a></li>
</ul>
@@ -228,7 +229,7 @@
<li><h2>More</h2>
<ul>
<li><a href="http://code.google.com/chrome/webstore/docs/index.html">Chrome Web Store</a></li>
- <li><a href="http://code.google.com/chrome/apps/docs/developers_guide.html">Installable Web Apps</a></li>
+ <li><a href="http://code.google.com/chrome/apps/docs/developers_guide.html">Hosted Apps</a></li>
<li><a href="themes.html">Themes</a></li>
</ul>
</li>
@@ -249,8 +250,10 @@
<li>
<a href="#what">The basics</a>
<ol>
- <li style="display: none; ">
- <a>h3Name</a>
+ <li>
+ <a href="#extension-ui">Extension UIs</a>
+ </li><li>
+ <a href="#packagedapp-ui">Packaged app UIs</a>
</li>
</ol>
</li><li>
@@ -259,7 +262,7 @@
<li>
<a href="#relative-urls">Referring to files</a>
</li><li>
- <a href="#H3-3">The manifest file</a>
+ <a href="#H3-5">The manifest file</a>
</li>
</ol>
</li><li>
@@ -347,16 +350,22 @@
Once you've finished this page
and the
<a href="getstarted.html">Getting Started</a> tutorial,
-you'll be all set to start writing extensions.
+you'll be all set to start writing extensions and packaged apps.
</p>
+<p class="caution">
+<strong>Note:</strong>
+<em>Packaged apps</em> are implemented as extensions,
+so unless otherwise stated,
+everything in this page applies to packaged apps.
+</p>
<h2 id="what">The basics</h2>
<p>
-An extension is a zipped bundle of files —
-HTML, CSS, JavaScript, images, and anything else you need —
-that adds functionality to the Google Chrome browser.
+An extension is a zipped bundle of files—HTML,
+CSS, JavaScript, images, and anything else you need—that
+adds functionality to the Google Chrome browser.
Extensions are essentially web pages,
and they can use all the
<a href="api_other.html">APIs that the browser provides to web pages</a>,
@@ -364,22 +373,22 @@ from XMLHttpRequest to JSON to HTML5.
</p>
<p>
-Many extensions add UI to Google Chrome,
-in the form of
-<a href="browserAction.html">browser actions</a>
-or <a href="pageAction.html">page actions</a>.
+Extensions can interact with web pages or servers using
+<a href="content_scripts.html">content scripts</a> or
+<a href="xhr.html">cross-origin XMLHttpRequests</a>.
Extensions can also interact programmatically
with browser features such as
<a href="bookmarks.html">bookmarks</a>
and <a href="tabs.html">tabs</a>.
-To interact with web pages or servers,
-extensions can use
-<a href="content_scripts.html">content scripts</a> or
-<a href="xhr.html">cross-origin XMLHttpRequests</a>.
</p>
+<h3 id="extension-ui">Extension UIs</h3>
+
<p>
-<b>Note:</b>
+Many extensions—but not packaged apps—add
+UI to Google Chrome in the form of
+<a href="browserAction.html">browser actions</a>
+or <a href="pageAction.html">page actions</a>.
Each extension can have at most one browser action or page action.
Choose a <b>browser action</b> when the extension is relevant to most pages.
Choose a <b>page action</b> when the extension's icon
@@ -387,13 +396,69 @@ should appear or disappear,
depending on the page.
</p>
+<table class="columns">
+<tbody><tr>
+ <td>
+ <img src="images/index/gmail.png" width="150" height="79" alt="screenshot">
+ </td>
+ <td>
+ <img src="images/index/news.png" width="150" height="79" alt="screenshot">
+ </td>
+ <td>
+ <img src="images/index/rss.png" width="150" height="79" alt="screenshot">
+ </td>
+</tr>
+
+<tr>
+ <td>
+ This <a href="samples.html#gmail">mail extension</a>
+ uses a <em>browser action</em>
+ (icon in the toolbar).
+ </td>
+ <td>
+ This <a href="samples.html#news">news reader extension</a>
+ features a browser action that,
+ when clicked,
+ shows a <em>popup</em>.
+ </td>
+ <td>
+ This <a href="samples.html#mappy">map extension</a>
+ uses a <em>page action</em>
+ (icon in the address bar)
+ and <em>content script</em>
+ (code injected into a web page).
+ </td>
+</tr>
+</tbody></table>
+
<p>
+Extensions (and packaged apps) can also present a UI in other ways,
+such as adding to the Chrome context menu,
+providing an options page,
+or using a content script that changes how pages look.
See the <a href="devguide.html">Developer's Guide</a>
for a complete list of extension features,
-with implementation details
+with links to implementation details
for each one.
</p>
+
+<h3 id="packagedapp-ui">Packaged app UIs</h3>
+
+<p>
+A packaged app usually presents its main functionality using
+an HTML page that's bundled into the app.
+For example, the following packaged app
+displays a Flash file within an HTML page.
+</p>
+
+<img src="images/index/flashapp.png" width="372" height="300" alt="screenshot">
+
+<p>
+For more information,
+see <a href="apps.html">Packaged Apps</a>.
+</p>
+
<h2 id="files">Files</h2>
<p>
Each extension has the following files:
@@ -404,8 +469,8 @@ Each extension has the following files:
<li>A <b>manifest file</b></li>
<li>One or more <b>HTML files</b> (unless the extension is a theme)</li>
<li><em>Optional:</em> One or more <b>JavaScript files</b></li>
- <li><em>Optional:</em> Any other files your extension needs —
- for example, image files</li>
+ <li><em>Optional:</em> Any other files your extension needs—for
+ example, image files</li>
</ul>
<p>
@@ -414,8 +479,9 @@ you put all these files into a single folder.
When you distribute your extension,
the contents of the folder are packaged into a special ZIP file
that has a <code>.crx</code> suffix.
-If you put your extension in the gallery,
-the gallery creates the <code>.crx</code> file for you.
+If you upload your extension using the
+<a href="https://chrome.google.com/webstore/developer/dashboard">Chrome Developer Dashboard</a>,
+the <code>.crx</code> file is created for you.
For details on distributing extensions,
see <a href="hosting.html">Hosting</a>.
</p>
@@ -459,7 +525,7 @@ it's the same as the relative URL.
<!-- [PENDING: Should mention/reflect/link to <a href="http://dev.chromium.org/developers/design-documents/extensions/i18n">internationalization</a> when it's ready.] -->
-<a name="H3-3"></a><h3>The manifest file</h3>
+<a name="H3-5"></a><h3>The manifest file</h3>
<p>
The manifest file, called <code>manifest.json</code>,
@@ -641,10 +707,11 @@ or by making server requests that result in saving data.
Whenever you want to save something,
first consider whether it's
from a window that's in incognito mode.
-By default, extensions don't run in incognito windows.
-However, users can selectively enable your extension for incognito mode,
-so you need to consider what a user expects
-from your extension in that case.
+By default, extensions don't run in incognito windows,
+and packaged apps <em>do</em>.
+You need to consider what a user expects
+from your extension or packaged app
+when the browser is incognito.
</p>
<p>