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

Unified Diff: chrome/browser/file_select_helper.cc

Issue 10908262: [cros] disable GDrive option on certain file pickers (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: invert default in file manager Created 8 years, 3 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
« no previous file with comments | « chrome/browser/file_select_helper.h ('k') | chrome/browser/resources/file_manager/js/file_manager.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/file_select_helper.cc
diff --git a/chrome/browser/file_select_helper.cc b/chrome/browser/file_select_helper.cc
index 7438a5063b83e835bc24273c2a59edca060fbd38..43118c5a06f70d249c6def938b85264bb33ddbb4 100644
--- a/chrome/browser/file_select_helper.cc
+++ b/chrome/browser/file_select_helper.cc
@@ -245,15 +245,18 @@ void FileSelectHelper::OnListDone(int id, int error) {
EnumerateDirectoryEnd();
}
-ui::SelectFileDialog::FileTypeInfo*
+scoped_ptr<ui::SelectFileDialog::FileTypeInfo>
FileSelectHelper::GetFileTypesFromAcceptType(
const std::vector<string16>& accept_types) {
+ scoped_ptr<ui::SelectFileDialog::FileTypeInfo> base_file_type(
+ new ui::SelectFileDialog::FileTypeInfo());
+ base_file_type->support_gdata = true;
if (accept_types.empty())
- return NULL;
+ return base_file_type.Pass();
// Create FileTypeInfo and pre-allocate for the first extension list.
scoped_ptr<ui::SelectFileDialog::FileTypeInfo> file_type(
- new ui::SelectFileDialog::FileTypeInfo());
+ new ui::SelectFileDialog::FileTypeInfo(*base_file_type));
file_type->include_all_files = true;
file_type->extensions.resize(1);
std::vector<FilePath::StringType>* extensions = &file_type->extensions.back();
@@ -289,7 +292,7 @@ FileSelectHelper::GetFileTypesFromAcceptType(
// If no valid extension is added, bail out.
if (valid_type_count == 0)
- return NULL;
+ return base_file_type.Pass();
// Use a generic description "Custom Files" if either of the following is
// true:
@@ -307,7 +310,7 @@ FileSelectHelper::GetFileTypesFromAcceptType(
l10n_util::GetStringUTF16(description_id));
}
- return file_type.release();
+ return file_type.Pass();
}
// static
@@ -361,8 +364,7 @@ void FileSelectHelper::RunFileChooser(RenderViewHost* render_view_host,
void FileSelectHelper::RunFileChooserOnFileThread(
const FileChooserParams& params) {
- select_file_types_.reset(
- GetFileTypesFromAcceptType(params.accept_types));
+ select_file_types_ = GetFileTypesFromAcceptType(params.accept_types);
BrowserThread::PostTask(
BrowserThread::UI, FROM_HERE,
@@ -412,7 +414,8 @@ void FileSelectHelper::RunFileChooserOnUIThread(
params.title,
default_file_name,
select_file_types_.get(),
- select_file_types_.get() ? 1 : 0, // 1-based index.
+ select_file_types_.get() && !select_file_types_->extensions.empty() ?
+ 1 : 0, // 1-based index of default extension to show.
FILE_PATH_LITERAL(""),
owning_window,
#if defined(OS_ANDROID)
« no previous file with comments | « chrome/browser/file_select_helper.h ('k') | chrome/browser/resources/file_manager/js/file_manager.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698