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

Side by Side Diff: chrome/browser/extensions/api/file_system/file_entry_picker.cc

Issue 2934143002: Move chrome.fileSystem implementation to //extensions (Closed)
Patch Set: rebase Created 3 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/extensions/api/file_system/file_entry_picker.h" 5 #include "chrome/browser/extensions/api/file_system/file_entry_picker.h"
6 6
7 #include <memory> 7 #include <memory>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/files/file_path.h" 10 #include "base/files/file_path.h"
11 #include "base/memory/ptr_util.h" 11 #include "base/memory/ptr_util.h"
12 #include "base/strings/string16.h" 12 #include "base/strings/string16.h"
13 #include "chrome/browser/platform_util.h" 13 #include "chrome/browser/platform_util.h"
14 #include "chrome/browser/ui/chrome_select_file_policy.h" 14 #include "chrome/browser/ui/chrome_select_file_policy.h"
15 #include "content/public/browser/web_contents.h" 15 #include "content/public/browser/web_contents.h"
16 #include "extensions/browser/api/file_system/file_system_delegate.h"
16 #include "ui/gfx/native_widget_types.h" 17 #include "ui/gfx/native_widget_types.h"
17 #include "ui/shell_dialogs/selected_file_info.h" 18 #include "ui/shell_dialogs/selected_file_info.h"
18 19
19 namespace extensions { 20 namespace extensions {
20 21
21 FileEntryPicker::FileEntryPicker( 22 FileEntryPicker::FileEntryPicker(
22 content::WebContents* web_contents, 23 content::WebContents* web_contents,
23 const base::FilePath& suggested_name, 24 const base::FilePath& suggested_name,
24 const ui::SelectFileDialog::FileTypeInfo& file_type_info, 25 const ui::SelectFileDialog::FileTypeInfo& file_type_info,
25 ui::SelectFileDialog::Type picker_type, 26 ui::SelectFileDialog::Type picker_type,
26 FilesSelectedCallback files_selected_callback, 27 FileSystemDelegate::FilesSelectedCallback files_selected_callback,
27 base::OnceClosure file_selection_canceled_callback) 28 base::OnceClosure file_selection_canceled_callback)
28 : files_selected_callback_(std::move(files_selected_callback)), 29 : files_selected_callback_(std::move(files_selected_callback)),
29 file_selection_canceled_callback_( 30 file_selection_canceled_callback_(
30 std::move(file_selection_canceled_callback)) { 31 std::move(file_selection_canceled_callback)) {
31 CHECK(web_contents); 32 CHECK(web_contents);
32 gfx::NativeWindow owning_window = 33 gfx::NativeWindow owning_window =
33 platform_util::GetTopLevel(web_contents->GetNativeView()); 34 platform_util::GetTopLevel(web_contents->GetNativeView());
34 select_file_dialog_ = ui::SelectFileDialog::Create( 35 select_file_dialog_ = ui::SelectFileDialog::Create(
35 this, base::MakeUnique<ChromeSelectFilePolicy>(web_contents).release()); 36 this, base::MakeUnique<ChromeSelectFilePolicy>(web_contents).release());
36 select_file_dialog_->SelectFile( 37 select_file_dialog_->SelectFile(
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
76 paths.push_back(file.file_path); 77 paths.push_back(file.file_path);
77 MultiFilesSelected(paths, params); 78 MultiFilesSelected(paths, params);
78 } 79 }
79 80
80 void FileEntryPicker::FileSelectionCanceled(void* params) { 81 void FileEntryPicker::FileSelectionCanceled(void* params) {
81 std::move(file_selection_canceled_callback_).Run(); 82 std::move(file_selection_canceled_callback_).Run();
82 delete this; 83 delete this;
83 } 84 }
84 85
85 } // namespace extensions 86 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698