summaryrefslogtreecommitdiffstats
path: root/chrome/common/extensions/docs/examples/api/downloads
diff options
context:
space:
mode:
authorbenjhayden@chromium.org <benjhayden@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-08-07 19:58:21 +0000
committerbenjhayden@chromium.org <benjhayden@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-08-07 19:58:21 +0000
commit1f75331a4e6150f4a579b7c6cf6240ab6186779f (patch)
treefc040d583d8f9127accc31a9d16c2877da911671 /chrome/common/extensions/docs/examples/api/downloads
parent63dc540c5180a9d6561e05d4b673a857588fe2d1 (diff)
downloadchromium_src-1f75331a4e6150f4a579b7c6cf6240ab6186779f.zip
chromium_src-1f75331a4e6150f4a579b7c6cf6240ab6186779f.tar.gz
chromium_src-1f75331a4e6150f4a579b7c6cf6240ab6186779f.tar.bz2
Remove the host permission check from downloads.download()
Also some clean-ups in the sample extensions. Formerly: http://src.chromium.org/viewvc/chrome?view=rev&revision=214801 http://src.chromium.org/viewvc/chrome?view=rev&revision=213685 BUG=246542 R=asargent@chromium.org, vabr@chromium.org Review URL: https://codereview.chromium.org/22297013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@216255 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/extensions/docs/examples/api/downloads')
-rw-r--r--chrome/common/extensions/docs/examples/api/downloads/download_links/manifest.json8
-rw-r--r--chrome/common/extensions/docs/examples/api/downloads/download_manager/_locales/en/messages.json6
-rw-r--r--chrome/common/extensions/docs/examples/api/downloads/download_manager/manifest.json3
-rw-r--r--chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.css25
-rw-r--r--chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.html9
-rw-r--r--chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.js55
-rw-r--r--chrome/common/extensions/docs/examples/api/downloads/download_open/_locales/en/messages.json2
7 files changed, 72 insertions, 36 deletions
diff --git a/chrome/common/extensions/docs/examples/api/downloads/download_links/manifest.json b/chrome/common/extensions/docs/examples/api/downloads/download_links/manifest.json
index affbc47..4745d3b 100644
--- a/chrome/common/extensions/docs/examples/api/downloads/download_links/manifest.json
+++ b/chrome/common/extensions/docs/examples/api/downloads/download_links/manifest.json
@@ -3,11 +3,7 @@
"description": "Select links on a page and download them.",
"version": "0.1",
"minimum_chrome_version": "16.0.884",
- "permissions": [
- "experimental", "tabs", "http://*/*", "https://*/*"
- ],
- "browser_action": {
- "default_popup": "popup.html"
- },
+ "permissions": ["tabs", "downloads"],
+ "browser_action": {"default_popup": "popup.html"},
"manifest_version": 2
}
diff --git a/chrome/common/extensions/docs/examples/api/downloads/download_manager/_locales/en/messages.json b/chrome/common/extensions/docs/examples/api/downloads/download_manager/_locales/en/messages.json
index cc1b636..3f59ae2 100644
--- a/chrome/common/extensions/docs/examples/api/downloads/download_manager/_locales/en/messages.json
+++ b/chrome/common/extensions/docs/examples/api/downloads/download_manager/_locales/en/messages.json
@@ -28,6 +28,12 @@
"zeroSearchResults": {
"message": "Zero matches",
"description": ""},
+ "managementPermissionInfo": {
+ "message": "Some files were downloaded by an extension.",
+ "description": ""},
+ "grantManagementPermission": {
+ "message": "Show links to extensions that download files.",
+ "description": ""},
"showOlderDownloads": {
"message": "Show Older Downloads",
"description": ""},
diff --git a/chrome/common/extensions/docs/examples/api/downloads/download_manager/manifest.json b/chrome/common/extensions/docs/examples/api/downloads/download_manager/manifest.json
index 1141c0d..6ae38ad 100644
--- a/chrome/common/extensions/docs/examples/api/downloads/download_manager/manifest.json
+++ b/chrome/common/extensions/docs/examples/api/downloads/download_manager/manifest.json
@@ -11,4 +11,5 @@
"default_popup": "popup.html"},
"background": {"persistent": false, "scripts": ["background.js"]},
"default_locale": "en",
- "permissions": ["management", "downloads", "downloads.open", "downloads.shelf"]}
+ "optional_permissions": ["management"],
+ "permissions": ["downloads", "downloads.open", "downloads.shelf"]}
diff --git a/chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.css b/chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.css
index 46b0800..967d512 100644
--- a/chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.css
+++ b/chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.css
@@ -2,10 +2,6 @@
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file. */
-body {
- text-align: center;
-}
-
#outer,
#empty,
#open-folder,
@@ -15,6 +11,16 @@ body {
display: inline-block;
}
+#q-outer {
+ display:inline-block;
+ height:1.7em;
+ overflow:hidden;
+}
+
+#q {
+ margin-right: 2em;
+}
+
#head {
position: fixed;
width: 100%;
@@ -58,15 +64,9 @@ body {
}
#q {
- margin-top: 0.5em;
margin-left: 3%;
}
-#clear-all,
-#open-folder {
- float: right;
-}
-
.by-ext img,
svg {
width: 2em;
@@ -96,11 +96,6 @@ svg rect.border {
stroke: black;
}
-.clearfix {
- clear: both;
- float: right;
-}
-
#older,
#loading-older,
.item {
diff --git a/chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.html b/chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.html
index b1cc635..95933be 100644
--- a/chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.html
+++ b/chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.html
@@ -12,7 +12,9 @@
<a id="bad-chrome-version" hidden
href="https://www.google.com/intl/en/chrome/browser/beta.html"></a>
<span id="empty" hidden></span>
- <input type="search" id="q" incremental>
+ <div id="q-outer">
+ <input type="search" id="q" incremental><br>&nbsp;
+ </div>
<a href="#" id="clear-all"><svg viewBox="0 0 100 100"><g>
<rect x="5" y="5" rx="20" ry="20" width="90" height="90" class="border" />
<ellipse rx="30" ry="8" cx="50" cy="55" />
@@ -30,13 +32,16 @@
<polygon points="20,20 20,80 60,80 60,30 35,30 35,20" />
<polygon points="20,80 60,80 80,45 40,45" />
</g></svg></a>
- <div class="clearfix"> </div>
</div>
<div id="searching" hidden></div>
<div id="search-zero" hidden></div>
<div id="items"></div>
<a href="#" id="older" hidden></a>
<span id="loading-older" hidden></span>
+ <div id="request-management-permission" hidden><div
+ id="management-permission-info"></div>
+ <a href="#" id="grant-management-permission"></a>
+ </div>
</div>
<div class="item" hidden>
diff --git a/chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.js b/chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.js
index e878fc7..6c88e3d 100644
--- a/chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.js
+++ b/chrome/common/extensions/docs/examples/api/downloads/download_manager/popup.js
@@ -26,6 +26,10 @@ function loadI18nMessages() {
setProperty('#empty', 'innerText', 'zeroItems');
setProperty('#searching', 'innerText', 'searching');
setProperty('#search-zero', 'innerText', 'zeroSearchResults');
+ setProperty('#management-permission-info', 'innerText',
+ 'managementPermissionInfo');
+ setProperty('#grant-management-permission', 'innerText',
+ 'grantManagementPermission');
setProperty('#older', 'innerText', 'showOlderDownloads');
setProperty('#loading-older', 'innerText', 'loadingOlderDownloads');
setProperty('.pause', 'title', 'pauseTitle');
@@ -296,9 +300,9 @@ DownloadItem.prototype.render = function() {
});
}
- item.getElement('removed').style.display = openable ? 'none' : 'inline-block';
+ item.getElement('removed').style.display = openable ? 'none' : 'inline';
item.getElement('open-filename').style.display = (
- openable ? 'inline-block' : 'none');
+ openable ? 'inline' : 'none');
item.getElement('in-progress').hidden = !in_progress;
item.getElement('pause').style.display = (
!in_progress || item.paused) ? 'none' : 'inline-block';
@@ -321,14 +325,43 @@ DownloadItem.prototype.render = function() {
item.getElement('removed').innerText = item.basename;
item.getElement('open-filename').innerText = item.basename;
+ function setByExtension(show) {
+ if (show) {
+ item.getElement('by-ext').title = item.byExtensionName;
+ item.getElement('by-ext').href =
+ 'chrome://extensions#' + item.byExtensionId;
+ item.getElement('by-ext img').src =
+ 'chrome://extension-icon/' + item.byExtensionId + '/48/1';
+ } else {
+ item.getElement('by-ext').hidden = true;
+ }
+ }
if (item.byExtensionId && item.byExtensionName) {
- item.getElement('by-ext').title = item.byExtensionName;
- item.getElement('by-ext').href =
- 'chrome://extensions#' + item.byExtensionId;
- item.getElement('by-ext img').src =
- 'chrome://extension-icon/' + item.byExtensionId + '/48/1';
+ chrome.permissions.contains({permissions: ['management']},
+ function(result) {
+ if (result) {
+ setByExtension(true);
+ } else {
+ setByExtension(false);
+ if (!localStorage.managementPermissionDenied) {
+ document.getElementById('request-management-permission').hidden =
+ false;
+ document.getElementById('grant-management-permission').onclick =
+ function() {
+ chrome.permissions.request({permissions: ['management']},
+ function(granted) {
+ setByExtension(granted);
+ if (!granted) {
+ localStorage.managementPermissionDenied = true;
+ }
+ });
+ return false;
+ };
+ }
+ }
+ });
} else {
- item.getElement('by-ext').hidden = true;
+ setByExtension(false);
}
if (!item.getElement('error').hidden) {
@@ -509,9 +542,9 @@ DownloadManager.showNew = function() {
var any_items = (document.getElementById('items').childNodes.length > 0);
document.getElementById('empty').style.display =
any_items ? 'none' : 'inline-block';
+ document.getElementById('head').style.borderBottomWidth =
+ (any_items ? 1 : 0) + 'px';
document.getElementById('clear-all').hidden = !any_items;
- document.getElementById('open-folder').style.float =
- any_items ? 'right' : 'none';
var query_search = document.getElementById('q');
query_search.hidden = !any_items;
@@ -682,7 +715,7 @@ if (chrome.downloads) {
window.onload = function() {
document.body.style.minWidth = (
- document.getElementById('q').offsetWidth +
+ document.getElementById('q-outer').offsetWidth +
document.getElementById('clear-all').offsetWidth +
document.getElementById('open-folder').offsetWidth) + 'px';
setLastOpened();
diff --git a/chrome/common/extensions/docs/examples/api/downloads/download_open/_locales/en/messages.json b/chrome/common/extensions/docs/examples/api/downloads/download_open/_locales/en/messages.json
index 5a6df11..eae1fbe 100644
--- a/chrome/common/extensions/docs/examples/api/downloads/download_open/_locales/en/messages.json
+++ b/chrome/common/extensions/docs/examples/api/downloads/download_open/_locales/en/messages.json
@@ -1,5 +1,5 @@
{"extName": {
- "message": "Download and Open Context Menu Button",
+ "message": "Download and Open Button",
"description": "Extension name"},
"extDesc": {
"message": "Download and Open Context Menu Button",