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

Unified Diff: chrome/browser/download/save_package.cc

Issue 172074: Show or open downloaded items on the UI thread for Mac (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 4 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/browser/download/save_package.cc
===================================================================
--- chrome/browser/download/save_package.cc (revision 23654)
+++ chrome/browser/download/save_package.cc (working copy)
@@ -437,7 +437,7 @@
// If the save source is from file system, inform SaveFileManager to copy
// corresponding file to the file path which this SaveItem specifies.
if (info->save_source == SaveFileCreateInfo::SAVE_FILE_FROM_FILE) {
- file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
+ file_manager_->file_loop()->PostTask(FROM_HERE,
NewRunnableMethod(file_manager_,
&SaveFileManager::SaveLocalFile,
save_item->url(),
@@ -543,7 +543,7 @@
it != saved_failed_items_.end(); ++it)
save_ids.push_back(it->second->save_id());
- file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
+ file_manager_->file_loop()->PostTask(FROM_HERE,
NewRunnableMethod(file_manager_,
&SaveFileManager::RemoveSavedFileFromFileMap,
save_ids));
@@ -572,7 +572,7 @@
final_names.push_back(std::make_pair(it->first,
it->second->full_path()));
- file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
+ file_manager_->file_loop()->PostTask(FROM_HERE,
NewRunnableMethod(file_manager_,
&SaveFileManager::RenameAllFiles,
final_names,
@@ -597,7 +597,7 @@
it != saved_failed_items_.end(); ++it)
save_ids.push_back(it->second->save_id());
- file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
+ file_manager_->file_loop()->PostTask(FROM_HERE,
NewRunnableMethod(file_manager_,
&SaveFileManager::RemoveSavedFileFromFileMap,
save_ids));
@@ -693,7 +693,7 @@
save_item->url(),
this);
if (save_item->save_id() != -1)
- file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
+ file_manager_->file_loop()->PostTask(FROM_HERE,
NewRunnableMethod(file_manager_,
&SaveFileManager::CancelSave,
save_item->save_id()));
@@ -735,10 +735,16 @@
void SavePackage::ShowDownloadInShell() {
DCHECK(file_manager_);
DCHECK(finished_ && !canceled() && !saved_main_file_path_.empty());
- file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
+ DCHECK(MessageLoop::current() == file_manager_->ui_loop());
+#if defined(OS_MACOSX)
+ // Mac OS X requires opening downloads on the UI thread.
+ platform_util::ShowItemInFolder(saved_main_file_path_);
+#else
+ file_manager_->file_loop()->PostTask(FROM_HERE,
NewRunnableMethod(file_manager_,
&SaveFileManager::OnShowSavedFileInShell,
saved_main_file_path_));
+#endif
}
// Calculate the percentage of whole save page job.
@@ -855,7 +861,7 @@
if (flag == webkit_glue::DomSerializerDelegate::ALL_FRAMES_ARE_FINISHED) {
for (SaveUrlItemMap::iterator it = in_progress_items_.begin();
it != in_progress_items_.end(); ++it) {
- file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
+ file_manager_->file_loop()->PostTask(FROM_HERE,
NewRunnableMethod(file_manager_,
&SaveFileManager::SaveFinished,
it->second->save_id(),
@@ -879,7 +885,7 @@
memcpy(new_data->data(), data.data(), data.size());
// Call write file functionality in file thread.
- file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
+ file_manager_->file_loop()->PostTask(FROM_HERE,
NewRunnableMethod(file_manager_,
&SaveFileManager::UpdateSaveProgress,
save_item->save_id(),
@@ -889,7 +895,7 @@
// Current frame is completed saving, call finish in file thread.
if (flag == webkit_glue::DomSerializerDelegate::CURRENT_FRAME_IS_FINISHED) {
- file_manager_->GetSaveLoop()->PostTask(FROM_HERE,
+ file_manager_->file_loop()->PostTask(FROM_HERE,
NewRunnableMethod(file_manager_,
&SaveFileManager::SaveFinished,
save_item->save_id(),
« no previous file with comments | « chrome/browser/download/save_file_manager.cc ('k') | chrome/browser/renderer_host/save_file_resource_handler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698