Index: chrome/browser/chromeos/extensions/file_handler_util.h |
diff --git a/chrome/browser/chromeos/extensions/file_handler_util.h b/chrome/browser/chromeos/extensions/file_handler_util.h |
index 3c939f8e78244a836af7a9fb416a01f5e8c0e930..f14a7152668fa1c49b257245281936d83ff3d43b 100644 |
--- a/chrome/browser/chromeos/extensions/file_handler_util.h |
+++ b/chrome/browser/chromeos/extensions/file_handler_util.h |
@@ -22,6 +22,10 @@ namespace extensions { |
class Extension; |
} // namespace extensions |
+namespace fileapi { |
+class FileSystemURL; |
+} |
+ |
namespace file_handler_util { |
// Specifies the task type for a task id that represents some file action, Drive |
@@ -70,7 +74,7 @@ bool CrackTaskID(const std::string& task_id, |
// This generates a list of default tasks (tasks set as default by the user in |
// prefs) from the |common_tasks|. |
void FindDefaultTasks(Profile* profile, |
- const std::vector<GURL>& files_list, |
+ const std::vector<FilePath>& files_list, |
const std::set<const FileBrowserHandler*>& common_tasks, |
std::set<const FileBrowserHandler*>* default_tasks); |
@@ -79,13 +83,14 @@ bool FindCommonTasks(Profile* profile, |
const std::vector<GURL>& files_list, |
std::set<const FileBrowserHandler*>* common_tasks); |
-// Finds a task for a file whose URL is |url|. |
+// Finds a task for a file whose URL is |url| and whose path is |path|. |
// Returns default task if one is defined (The default task is the task that is |
// assigned to file browser task button by default). If default task is not |
// found, tries to match the url with one of the builtin tasks. |
-bool GetTaskForURL(Profile* profile, |
- const GURL& url, |
- const FileBrowserHandler** handler); |
+bool GetTaskForURLAndPath(Profile* profile, |
+ const GURL& url, |
+ const FilePath& path, |
+ const FileBrowserHandler** handler); |
// Used for returning success or failure from task executions. |
typedef base::Callback<void(bool)> FileTaskFinishedCallback; |
@@ -103,7 +108,7 @@ class FileTaskExecutor : public base::RefCountedThreadSafe<FileTaskExecutor> { |
const std::string& action_id); |
// Same as ExecuteAndNotify, but no notification is performed. |
- virtual bool Execute(const std::vector<GURL>& file_urls); |
+ virtual bool Execute(const std::vector<fileapi::FileSystemURL>& file_urls); |
// Initiates execution of file handler task for each element of |file_urls|. |
// Return |false| if the execution cannot be initiated. Otherwise returns |
@@ -111,8 +116,9 @@ class FileTaskExecutor : public base::RefCountedThreadSafe<FileTaskExecutor> { |
// been handled. If there is an error during processing the list of files, the |
// caller will be informed of the failure via |done|, and the rest of |
// the files will not be processed. |
- virtual bool ExecuteAndNotify(const std::vector<GURL>& file_urls, |
- const FileTaskFinishedCallback& done) = 0; |
+ virtual bool ExecuteAndNotify( |
+ const std::vector<fileapi::FileSystemURL>& file_urls, |
+ const FileTaskFinishedCallback& done) = 0; |
protected: |
explicit FileTaskExecutor(Profile* profile, |
@@ -123,7 +129,8 @@ class FileTaskExecutor : public base::RefCountedThreadSafe<FileTaskExecutor> { |
// Checks if the file browser extension had file access permissions for the |
// list of files. |
- bool FileBrowserHasAccessPermissionForFiles(const std::vector<GURL>& files); |
+ bool FileBrowserHasAccessPermissionForFiles( |
+ const std::vector<fileapi::FileSystemURL>& files); |
// Returns the profile that this task was created with. |
Profile* profile() { return profile_; } |