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

Unified Diff: chrome/common/extensions/docs/server2/templates/private/permissions_intro.html

Issue 10750017: Extensions Docs Server: Intro data source (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: nits Created 8 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: chrome/common/extensions/docs/server2/templates/private/permissions_intro.html
diff --git a/chrome/common/extensions/docs/server2/templates/private/permissions_intro.html b/chrome/common/extensions/docs/server2/templates/private/permissions_intro.html
deleted file mode 100644
index ab3c61dcb0f265d43644919e139d5a29d638106a..0000000000000000000000000000000000000000
--- a/chrome/common/extensions/docs/server2/templates/private/permissions_intro.html
+++ /dev/null
@@ -1,164 +0,0 @@
-<!-- BEGIN AUTHORED CONTENT -->
-<p id="classSummary">
- Use the <code>chrome.permissions</code> module to implement
- optional permissions. You can request optional permissions during your
- extension's regular application flow rather than at install time, so users
- understand why the permissions are needed and use only those that are
- necessary.
-</p>
-<p>
- For general information about permissions and details about each permission,
- see the <a href="manifest.html#permissions">permissions</a> section of the
- manifest documentation.
-</p>
-<h2 id="howto"> Implementing optional permissions </h2>
-
-<h3 id="types">
- Step 1: Decide which permissions are optional and required
-</h3>
-<p>
- Extensions should generally require permissions when they are needed for the
- extension's basic functionality and employ optional permissions for optional
- features.
-</p>
-<p>
- Advantages of optional permissions:
- <ul>
- <li>
- Users run with less permissions since they enable only what is needed.
- </li>
- <li>
- The extension can help explain why it needs particular permissions by
- requesting them when the user enables the relevant feature.
- </li>
- <li>
- Chrome can avoid disabling extensions that upgrade if they add permissions
- as optional rather than required.
- </li>
- </ul>
-</p>
-<p>
- Advantages of required permissions:
- <ul>
- <li>
- The extension can prompt the user once to accept all permissions.
- </li>
- <li>
- They simplify extension development by guaranteeing which permissions are
- present.
- </li>
- </ul>
-</p>
-<h3 id="manifest"> Step 2: Declare optional permissions in the manifest </h3>
-<p>
- Declare optional permissions in your <a href="manifest.html">extension
- manifest</a> with the <code>optional_permissions</code> key, using the
- same format as the <a href="manifest.html#permissions">permissions</a>
- field:
-<pre>{
- "name": "My extension",
- ...
- <b>"optional_permissions": [ "tabs", "http://www.google.com/" ],</b>
- ...
-}</pre>
-</p>
-<p>
-You can specify any of the following as optional permissions:
-<ul>
- <li><i>host permissions</i></li>
- <li>appNotifications</li>
- <li>background</li>
- <li>bookmarks</li>
- <li>clipboardRead</li>
- <li>clipboardWrite</li>
- <li>contentSettings</li>
- <li>contextMenus</li>
- <li>cookies</li>
- <li>debugger</li>
- <li>history</li>
- <li>idle</li>
- <li>management</li>
- <li>notifications</li>
- <li>pageCapture</li>
- <li>tabs</li>
- <li>topSites</li>
- <li>webNavigation</li>
- <li>webRequest</li>
- <li>webRequestBlocking</li>
-</ul>
-</p>
-<p class="note">
- <b>Version note:</b> This list is correct as of Chrome 17.
- More optional permissions might be allowed in future releases.
-</p>
-<h3 id="request"> Step 3: Request optional permissions </h3>
-<p>
- Request the permissions from within a user gesture using
- <code>permissions.request()</code>:
-<pre>
-document.querySelector('#my-button').addEventListener('click', function(event) {
- // Permissions must be requested from inside a user gesture, like a button's
- // click handler.
- chrome.permissions.request({
- permissions: ['tabs'],
- origins: ['http://www.google.com/']
- }, function(granted) {
- // The callback argument will be true if the user granted the permissions.
- if (granted) {
- doSomething();
- } else {
- doSomethingElse();
- }
- });
-});
-</pre>
-</p>
-<p>
- Chrome prompts the user if adding the permissions results in different
- <a href="permission_warnings.html">warning messages</a> than the user has
- already seen and accepted. For example, the previous code might result in
- a prompt like this:
-</p>
-<p style="text-align: center">
- <img src="{{static}}/images/perms-optional.png"
- alt="example permission confirmation prompt"
- width="416" height="234">
-</p>
-<h3 id="contains"> Step 4: Check the extension's current permissions </h3>
-<p>
- To check whether your extension has a specific permission or set of
- permissions, use <code>permission.contains()</code>:
-</p>
-<pre>
-chrome.permissions.contains({
- permissions: ['tabs'],
- origins: ['http://www.google.com/']
-}, function(result) {
- if (result) {
- // The extension has the permissions.
- } else {
- // The extension doesn't have the permissions.
- }
-});
-</pre>
-<h3 id="remove"> Step 5: Remove the permissions </h3>
-<p>
- You should remove permissions when you no longer need them.
- After a permission has been removed, calling
- <code>permissions.request()</code> usually adds the permission back without
- prompting the user.
-</p>
-<pre>
-chrome.permissions.remove({
- permissions: ['tabs'],
- origins: ['http://www.google.com/']
-}, function(removed) {
- if (removed) {
- // The permissions have been removed.
- } else {
- // The permissions have not been removed (e.g., you tried to remove
- // required permissions).
- }
-});
-</pre>
-<!-- END AUTHORED CONTENT -->

Powered by Google App Engine
This is Rietveld 408576698