summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xchrome/common/extensions/docs/devguide.html5
-rw-r--r--chrome/common/extensions/docs/hosting.html439
-rwxr-xr-xchrome/common/extensions/docs/static/devguide.html5
-rw-r--r--chrome/common/extensions/docs/static/hosting.html61
4 files changed, 506 insertions, 4 deletions
diff --git a/chrome/common/extensions/docs/devguide.html b/chrome/common/extensions/docs/devguide.html
index 4acba3e..e4532fd 100755
--- a/chrome/common/extensions/docs/devguide.html
+++ b/chrome/common/extensions/docs/devguide.html
@@ -212,9 +212,9 @@ but here's what we have, so far:
<ul>
<li><a href="bookmarks.html">Bookmarks</a></li>
<li><a href="events.html">Events</a></li>
+ <li><a href="i18n.html">I18n</a></li>
<li><a href="tabs.html">Tabs</a></li>
<li><a href="windows.html">Windows</a></li>
- <li><a href="i18n.html">i18n</a></li>
</ul>
</li>
<li> Implementing the innards of your extension
@@ -228,7 +228,8 @@ but here's what we have, so far:
<li> Finishing and distributing your extension
<ul>
<li><a href="packaging.html">Packaging</a></li>
- <li>Autoupdate</li>
+ <li><a href="autoupdate.html">Autoupdating</a></li>
+ <li><a href="hosting.html">Hosting</a></li>
</ul>
</li>
</ul>
diff --git a/chrome/common/extensions/docs/hosting.html b/chrome/common/extensions/docs/hosting.html
new file mode 100644
index 0000000..2224c02
--- /dev/null
+++ b/chrome/common/extensions/docs/hosting.html
@@ -0,0 +1,439 @@
+<!DOCTYPE html><!-- This page is a placeholder for generated extensions api doc. Note:
+ 1) The <head> information in this page is significant, should be uniform
+ across api docs and should be edited only with knowledge of the
+ templating mechanism.
+ 3) All <body>.innerHTML is genereated as an rendering step. If viewed in a
+ browser, it will be re-generated from the template, json schema and
+ authored overview content.
+ 4) The <body>.innerHTML is also generated by an offline step so that this
+ page may easily be indexed by search engines.
+--><html xmlns="http://www.w3.org/1999/xhtml"><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <link href="css/ApiRefStyles.css" rel="stylesheet" type="text/css">
+ <script type="text/javascript" src="../../../third_party/jstemplate/jstemplate_compiled.js">
+ </script>
+ <script type="text/javascript" src="js/api_page_generator.js"></script>
+ <script type="text/javascript" src="js/bootstrap.js"></script>
+ <title>Hosting</title></head><body> <div id="container">
+ <!-- SUBTEMPLATES: DO NOT MOVE FROM THIS LOCATION -->
+ <!-- In particular, sub-templates that recurse, must be used by allowing
+ jstemplate to make a copy of the template in this section which
+ are not operated on by way of the jsskip="true" -->
+ <div style="display:none">
+
+ <!-- VALUE -->
+ <div id="valueTemplate">
+ <dt>
+ <var>paramName</var>
+ <em>
+
+ <!-- TYPE -->
+ <div style="display:inline">
+ (
+ <span class="optional">optional</span>
+ <span id="typeTemplate">
+ <span>
+ <a> Type</a>
+ </span>
+ <span>
+ <span>
+ array of <span><span></span></span>
+ </span>
+ <span>paramType</span>
+ </span>
+ </span>
+ )
+ </div>
+
+ </em>
+ </dt>
+ <dd class="todo">
+ Undocumented.
+ </dd>
+ <dd>
+ Description of this parameter from the json schema.
+ </dd>
+
+ <!-- OBJECT PROPERTIES -->
+ <dd>
+ <dl>
+ <div>
+ <div>
+ </div>
+ </div>
+ </dl>
+ </dd>
+ </div> <!-- /VALUE -->
+
+ </div> <!-- /SUBTEMPLATES -->
+
+ <a name="top"> </a>
+ <!-- API HEADER -->
+ <div id="pageHeader">
+ <div id="searchbox">
+ <form action="http://www.google.com/cse" id="cse-search-box">
+ <div>
+ <input type="hidden" name="cx" value="002967670403910741006:61_cvzfqtno">
+ <input type="hidden" name="ie" value="UTF-8">
+ <input type="text" name="q" size="31">
+ <input type="submit" name="sa" value="Search">
+ </div>
+ </form>
+
+ <script type="text/javascript" src="http://www.google.com/jsapi"></script>
+ <script type="text/javascript">google.load("elements", "1", {packages: "transliteration"});</script>
+ <script type="text/javascript" src="http://www.google.com/coop/cse/t13n?form=cse-search-box&amp;t13n_langs=en"></script>
+ <script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=cse-search-box&amp;lang=en"></script>
+ </div>
+ <div id="pageTitle">
+ <h1>Hosting</h1>
+ </div>
+ </div> <!-- /pageHeader -->
+
+ <div id="pageContent">
+ <!-- SIDENAV -->
+ <div id="leftNav">
+ <ul>
+ <li> <a href="index.html">Home</a></li>
+ <li> <a href="getstarted.html">Getting Started</a></li>
+ <li> <a href="overview.html">Overview</a></li>
+ <li> <a href="devguide.html"><div>Developer's Guide</div></a>
+ <ul>
+ <li><a href="toolstrip.html">Toolstrips</a></li>
+ <li><a href="pageActions.html">Page Actions</a></li>
+ <li><a href="background_pages.html">Background Pages</a></li>
+ <li><a href="content_scripts.html">Content Scripts</a></li>
+ <li><a href="events.html">Events</a></li>
+ <li><a href="tabs.html">Tabs</a></li>
+ <li><a href="windows.html">Windows</a></li>
+ <li><a href="bookmarks.html">Bookmarks</a></li>
+ <li><a href="themes.html">Themes</a></li>
+ <li><a href="npapi.html">NPAPI Plugins</a></li>
+ <li><a href="xhr.html">Cross-Origin XHR</a></li>
+ <li><a href="packaging.html">Packaging</a></li>
+ <li><a href="autoupdate.html">Autoupdate</a></li>
+ </ul>
+ </li>
+ <li><a href="tutorials.html"><div>Tutorials</div></a>
+ <ul>
+ <li><a href="tut_debugging.html">Debugging</a></li>
+ </ul>
+ </li>
+ <li>Reference
+ <ul>
+ <li> Formats
+ <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="api_index.html">chrome.* APIs</a> </li>
+ <li> <a href="api_other.html">Other APIs</a> </li>
+ </ul>
+ </li>
+ <li><a href="http://dev.chromium.org/developers/design-documents/extensions/samples">Samples</a></li>
+ </ul>
+ </div>
+
+ <div id="mainColumn">
+ <!-- TABLE OF CONTENTS -->
+ <div id="toc" style="display: none; ">
+ <p>Contents</p>
+ <ol>
+ <li>
+ <a>h2Name</a>
+ <ol>
+ <li>
+ <a>h3Name</a>
+ </li>
+ </ol>
+ </li>
+ <div>
+ <li>
+ <a href="#apiReference">API reference</a>
+ <ol>
+ <li>
+ <a href="#properties">Properties</a>
+ <ol>
+ <li>
+ <a href="#property-anchor">propertyName</a>
+ </li>
+ </ol>
+ </li>
+ <li>
+ <a href="#methods">Methods</a>
+ <ol>
+ <li>
+ <a href="#method-anchor">methodName</a>
+ </li>
+ </ol>
+ </li>
+ <li>
+ <a href="#events">Events</a>
+ <ol>
+ <li>
+ <a href="#event-anchor">eventName</a>
+ </li>
+ </ol>
+ </li>
+ <li>
+ <a href="#types">Types</a>
+ <ol>
+ <li>
+ <a href="#id-anchor">id</a>
+ </li>
+ </ol>
+ </li>
+ </ol>
+ </li>
+ </div>
+ </ol>
+ </div>
+ <!-- /TABLE OF CONTENTS -->
+
+ <!-- STATIC CONTENT PLACEHOLDER -->
+ <div id="static"><div id="pageData-title" class="pageData">Hosting</div>
+
+<p>
+If your extension is hosted in the Google Chrome extension gallery,
+<em>ignore this page</em>.
+You don't need to worry about HTTP headers
+because the gallery handles them for you.
+</p>
+
+<p>
+If you intend to use another server,
+make sure it serves appropriate HTTP headers,
+so that users can install your extension
+by clicking a link to it.
+</p>
+
+<p>
+Google Chrome considers a file to be an extension
+if <b>either</b> of the following is true:
+</p>
+
+<ul>
+ <li>
+ The file has the content type
+ <code>application/x-chrome-extension</code>
+ </li>
+ <li>
+ The file suffix is <code>.crx</code>
+ and <b>both</b> of the following are true:
+ <ul>
+ <li>
+ The file <b>is not</b> served with
+ the HTTP header <code>X-Content-Type-Options: nosniff</code>
+ </li>
+ <li>
+ The file <b>is</b> served
+ with one of the following content types:
+ <ul>
+ <li> empty string </li>
+ <li> "text/plain" </li>
+ <li> "application/octet-stream" </li>
+ <li> "unknown/unknown" </li>
+ <li> "application/unknown" </li>
+ <li> "*/*" </li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+</ul>
+
+<p>
+The most common reason for failing to recognize an extension
+is that the server sends the header
+<code>X-Content-Type-Options: no sniff</code>.
+The second most common reason
+is that the server sends an unknown content type —
+one that isn't in the previous list.
+To fix an HTTP header issue,
+either change the configuration of the server
+or try hosting the extension at another server.
+</p>
+</div>
+
+ <!-- API PAGE -->
+ <div class="apiPage" style="display: none; ">
+ <a name="apiReference"></a>
+ <h2>API reference: chrome.apiname </h2>
+
+ <!-- PROPERTIES -->
+ <div class="apiGroup">
+ <a name="properties"></a>
+ <h3 id="properties">Properties</h3>
+
+ <div>
+ <a></a>
+ <h4>getLastError</h4>
+ <div class="summary">
+ <!-- Note: intentionally longer 80 columns -->
+ <span>chrome.extension</span><span>lastError</span>
+ </div>
+ <div>
+ </div>
+ </div>
+
+ </div> <!-- /apiGroup -->
+
+ <!-- METHODS -->
+ <div class="apiGroup" id="methods">
+ <a name="methods"></a>
+ <h3>Methods</h3>
+
+ <!-- iterates over all functions -->
+ <div class="apiItem">
+ <a></a> <!-- method-anchor -->
+ <h4>method name</h4>
+
+ <div class="summary"><span>void</span>
+ <!-- Note: intentionally longer 80 columns -->
+ <span>chrome.module.methodName</span>(<span><span>, </span><span></span>
+ <var><span></span></var></span>)</div>
+
+ <div class="description">
+ <p class="todo">Undocumented.</p>
+ <p>
+ A description from the json schema def of the function goes here.
+ </p>
+
+ <!-- PARAMETERS -->
+ <h4>Parameters</h4>
+ <dl>
+ <div>
+ <div>
+ </div>
+ </div>
+ </dl>
+
+ <!-- RETURNS -->
+ <h4>Returns</h4>
+ <dl>
+ <div>
+ <div>
+ </div>
+ </div>
+ </dl>
+
+ <!-- CALLBACK -->
+ <div>
+ <div>
+ <h4>Callback function</h4>
+ <p>
+ If you specify the <em>callback</em> parameter,
+ it should specify a function that looks like this:
+ </p>
+
+ <!-- Note: intentionally longer 80 columns -->
+ <pre>function(<span>Type param1, Type param2</span>) <span class="subdued">{...}</span>);</pre>
+ <dl>
+ <div>
+ <div>
+ </div>
+ </div>
+ </dl>
+ </div>
+ </div>
+
+ </div> <!-- /description -->
+
+ </div> <!-- /apiItem -->
+
+ </div> <!-- /apiGroup -->
+
+ <!-- EVENTS -->
+ <div class="apiGroup">
+ <a name="events"></a>
+ <h3 id="events">Events</h3>
+
+ <!-- iterates over all events -->
+ <div class="apiItem">
+ <a></a>
+ <h4>event name</h4>
+
+ <div class="summary">
+ <!-- Note: intentionally longer 80 columns -->
+ <span class="subdued">chrome.bookmarks</span><span>onEvent</span><span class="subdued">.addListener</span>(function(<span>Type param1, Type param2</span>) <span class="subdued">{...}</span>);
+ </div>
+
+ <div class="description">
+ <p class="todo">Undocumented.</p>
+ <p>
+ A description from the json schema def of the event goes here.
+ </p>
+
+ <!-- PARAMETERS -->
+ <h4>Parameters</h4>
+ <dl>
+ <div>
+ <div>
+ </div>
+ </div>
+ </dl>
+
+ </div> <!-- /decription -->
+
+ </div> <!-- /apiItem -->
+
+ </div> <!-- /apiGroup -->
+
+ <!-- TYPES -->
+ <div class="apiGroup">
+ <a name="types.sort(sortByName)"></a>
+ <h3 id="types">Types</h3>
+
+ <!-- iterates over all types -->
+ <div class="apiItem">
+ <a></a>
+ <h4>type name</h4>
+
+ <div>
+ </div>
+
+ </div> <!-- /apiItem -->
+
+ </div> <!-- /apiGroup -->
+
+ </div> <!-- /apiPage -->
+ </div> <!-- /mainColumn -->
+ </div> <!-- /pageContent -->
+ <div id="pageFooter" --="">
+ <p>
+ Except as otherwise <a href="http://code.google.com/policies.html#restrictions">noted</a>,
+ the content of this page is licensed under the <a rel="license" href="http://creativecommons.org/licenses/by/3.0/">Creative Commons
+ Attribution 3.0 License</a>, and code samples are licensed under the
+ <a rel="license" href="http://code.google.com/google_bsd_license.html">BSD License</a>.
+ </p>
+ <p>
+ ©2009 Google
+ </p>
+
+<!-- begin analytics -->
+<script src="http://www.google-analytics.com/urchin.js" type="text/javascript"></script>
+<script src="http://www.google-analytics.com/ga.js" type="text/javascript"></script>
+
+<script type="text/javascript">
+ // chrome doc tracking
+ try {
+ var engdocs = _gat._getTracker("YT-10763712-2");
+ engdocs._trackPageview();
+ } catch(err) {}
+
+ // code.google.com site-wide tracking
+ try {
+ _uacct="UA-18071-1";
+ _uanchor=1;
+ _uff=0;
+ urchinTracker();
+ }
+ catch(e) {/* urchinTracker not available. */}
+</script>
+<!-- end analytics -->
+
+ </div> <!-- /pageFooter -->
+ </div> <!-- /container -->
+</body></html>
+
diff --git a/chrome/common/extensions/docs/static/devguide.html b/chrome/common/extensions/docs/static/devguide.html
index 8e4a056..9c7bba1 100755
--- a/chrome/common/extensions/docs/static/devguide.html
+++ b/chrome/common/extensions/docs/static/devguide.html
@@ -17,9 +17,9 @@ but here's what we have, so far:
<ul>
<li><a href="bookmarks.html">Bookmarks</a></li>
<li><a href="events.html">Events</a></li>
+ <li><a href="i18n.html">I18n</a></li>
<li><a href="tabs.html">Tabs</a></li>
<li><a href="windows.html">Windows</a></li>
- <li><a href="i18n.html">i18n</a></li>
</ul>
</li>
<li> Implementing the innards of your extension
@@ -33,7 +33,8 @@ but here's what we have, so far:
<li> Finishing and distributing your extension
<ul>
<li><a href="packaging.html">Packaging</a></li>
- <li>Autoupdate</li>
+ <li><a href="autoupdate.html">Autoupdating</a></li>
+ <li><a href="hosting.html">Hosting</a></li>
</ul>
</li>
</ul>
diff --git a/chrome/common/extensions/docs/static/hosting.html b/chrome/common/extensions/docs/static/hosting.html
new file mode 100644
index 0000000..d4bcfca
--- /dev/null
+++ b/chrome/common/extensions/docs/static/hosting.html
@@ -0,0 +1,61 @@
+<div id="pageData-title" class="pageData">Hosting</div>
+
+<p>
+If your extension is hosted in the Google Chrome extension gallery,
+<em>ignore this page</em>.
+You don't need to worry about HTTP headers
+because the gallery handles them for you.
+</p>
+
+<p>
+If you intend to use another server,
+make sure it serves appropriate HTTP headers,
+so that users can install your extension
+by clicking a link to it.
+</p>
+
+<p>
+Google Chrome considers a file to be an extension
+if <b>either</b> of the following is true:
+</p>
+
+<ul>
+ <li>
+ The file has the content type
+ <code>application/x-chrome-extension</code>
+ </li>
+ <li>
+ The file suffix is <code>.crx</code>
+ and <b>both</b> of the following are true:
+ <ul>
+ <li>
+ The file <b>is not</b> served with
+ the HTTP header <code>X-Content-Type-Options: nosniff</code>
+ </li>
+ <li>
+ The file <b>is</b> served
+ with one of the following content types:
+ <ul>
+ <li> empty string </li>
+ <li> "text/plain" </li>
+ <li> "application/octet-stream" </li>
+ <li> "unknown/unknown" </li>
+ <li> "application/unknown" </li>
+ <li> "*/*" </li>
+ </ul>
+ </li>
+ </ul>
+ </li>
+</ul>
+
+<p>
+The most common reason for failing to recognize an extension
+is that the server sends the header
+<code>X-Content-Type-Options: no sniff</code>.
+The second most common reason
+is that the server sends an unknown content type &mdash;
+one that isn't in the previous list.
+To fix an HTTP header issue,
+either change the configuration of the server
+or try hosting the extension at another server.
+</p>