summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorserya@chromium.org <serya@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-06 18:36:05 +0000
committerserya@chromium.org <serya@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-06 18:36:05 +0000
commitd475f152f5e1f9e151fa7ca24329c4d0300ed8b3 (patch)
tree45ed88ee3ef5b866112f8d887bc02e42b1cb9cf2
parentc8c77b0e9119cf84b970c860525aa28595e1a1e2 (diff)
downloadchromium_src-d475f152f5e1f9e151fa7ca24329c4d0300ed8b3.zip
chromium_src-d475f152f5e1f9e151fa7ca24329c4d0300ed8b3.tar.gz
chromium_src-d475f152f5e1f9e151fa7ca24329c4d0300ed8b3.tar.bz2
Handling file actions in only one instance of file manager.
BUG=chromium-os:18604 TEST=None Review URL: http://codereview.chromium.org/7776031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99772 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/resources/file_manager/js/file_manager.js11
1 files changed, 10 insertions, 1 deletions
diff --git a/chrome/browser/resources/file_manager/js/file_manager.js b/chrome/browser/resources/file_manager/js/file_manager.js
index 1e4d2d7..560d21a 100644
--- a/chrome/browser/resources/file_manager/js/file_manager.js
+++ b/chrome/browser/resources/file_manager/js/file_manager.js
@@ -1663,6 +1663,7 @@ FileManager.prototype = {
// Tweak images, titles of internal tasks.
var task_parts = task.taskId.split('|');
if (task_parts[0] == this.getExtensionId_()) {
+ task.internal = true;
if (task_parts[1] == 'preview') {
// TODO(serya): This hack needed until task.iconUrl get working
// (see GetFileTasksFileBrowserFunction::RunImpl).
@@ -1804,7 +1805,15 @@ FileManager.prototype = {
};
FileManager.prototype.onTaskButtonClicked_ = function(event) {
- chrome.fileBrowserPrivate.executeTask(event.srcElement.task.taskId,
+ var task = event.srcElement.task;
+ if (task.internal) {
+ // For internal tasks call the handler directly to avoid being handled
+ // multiple times.
+ var taskId = task.taskId.split('|')[1];
+ this.onFileTaskExecute_(taskId, {entries: this.selection.entries});
+ return;
+ }
+ chrome.fileBrowserPrivate.executeTask(task.taskId,
this.selection.urls);
};