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 84b0e2f00b4ce38ce59a61c5fe678361898c919c..de621b4ed2176f7c8d643cb9c311398c91b2da2f 100644 |
--- a/chrome/browser/chromeos/extensions/file_handler_util.h |
+++ b/chrome/browser/chromeos/extensions/file_handler_util.h |
@@ -64,6 +64,10 @@ bool GetDefaultTask(Profile* profile, |
const GURL& url, |
const FileBrowserHandler** handler); |
+// Used for executing file actions. |
+typedef base::Callback<void(const extensions::Extension*)> |
satorux1
2012/06/07 22:47:17
nit: please put the parameter name.
hshi1
2012/06/08 00:22:05
Removed this definition as Toni suggested to get t
|
+ ExecuteFileActionsCallback; |
+ |
// Helper class for executing file browser file action. |
class FileTaskExecutor : public base::RefCountedThreadSafe<FileTaskExecutor> { |
public: |
@@ -106,10 +110,9 @@ class FileTaskExecutor : public base::RefCountedThreadSafe<FileTaskExecutor> { |
const std::vector<GURL>& file_urls); |
void ExecuteFailedOnUIThread(); |
- void ExecuteFileActionsOnUIThread(const std::string& file_system_name, |
- const GURL& file_system_root, |
- const FileDefinitionList& file_list, |
- int handler_id); |
+ void ExecuteFileActionsOnUIThread( |
+ const FileDefinitionList& file_list, |
+ const ExecuteFileActionsCallback& callback); |
void SetupPermissionsAndDispatchEvent(const std::string& file_system_name, |
const GURL& file_system_root, |
const FileDefinitionList& file_list, |
@@ -121,7 +124,18 @@ class FileTaskExecutor : public base::RefCountedThreadSafe<FileTaskExecutor> { |
void InitHandlerHostFileAccessPermissions( |
const FileDefinitionList& file_list, |
const extensions::Extension* handler_extension, |
- const std::string& action_id); |
+ const std::string& action_id, |
+ const ExecuteFileActionsCallback& callback); |
+ |
+ // Invoked upon completion of InitHandlerHostFileAccessPermissions initiated |
+ // by ExecuteFileActionsOnUIThread. |
+ void OnInitAccessForExecuteFileActionsOnUIThread( |
+ const std::string& file_system_name, |
+ const GURL& file_system_root, |
+ const FileDefinitionList& file_list, |
+ int handler_pid, |
+ const extensions::Extension* extension); |
+ |
// Registers file permissions from |handler_host_permissions_| with |
// ChildProcessSecurityPolicy for process with id |handler_pid|. |
void SetupHandlerHostFileAccessPermissions(int handler_pid); |