Skip to content
This repository was archived by the owner on Jan 4, 2019. It is now read-only.

Commit 4a4d3de

Browse files
Sydney Libridiver
Sydney Li
authored andcommitted
Pull in file chooser from Chromium
fix brave/browser-laptop#10666 fix brave/browser-laptop#8601 Auditors: @darkdh, @bbondy, @bsclifton, @bridiver
1 parent 0aa85d0 commit 4a4d3de

10 files changed

+52
-279
lines changed

atom/browser/BUILD.gn

-2
Original file line numberDiff line numberDiff line change
@@ -165,8 +165,6 @@ source_set("browser") {
165165
"web_contents_permission_helper.h",
166166
"web_contents_preferences.cc",
167167
"web_contents_preferences.h",
168-
"web_dialog_helper.cc",
169-
"web_dialog_helper.h",
170168
"window_list.cc",
171169
"window_list.h",
172170
"window_list_observer.h",

atom/browser/common_web_contents_delegate.cc

+3-7
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@
1414
#include "atom/browser/native_window.h"
1515
#include "atom/browser/ui/file_dialog.h"
1616
#include "atom/browser/web_contents_permission_helper.h"
17-
#include "atom/browser/web_dialog_helper.h"
1817
#include "atom/common/atom_constants.h"
1918
#include "base/files/file_util.h"
2019
#include "base/strings/utf_string_conversions.h"
2120
#include "brave/browser/brave_javascript_dialog_manager.h"
2221
#include "chrome/browser/certificate_viewer.h"
2322
#include "chrome/browser/ssl/security_state_tab_helper.h"
2423
#include "chrome/browser/ui/browser.h"
24+
#include "chrome/browser/file_select_helper.h"
2525
#include "chrome/browser/ui/browser_dialogs.h"
2626
#include "chrome/common/pref_names.h"
2727
#include "chrome/grit/generated_resources.h"
@@ -278,17 +278,13 @@ content::ColorChooser* CommonWebContentsDelegate::OpenColorChooser(
278278
void CommonWebContentsDelegate::RunFileChooser(
279279
content::RenderFrameHost* render_frame_host,
280280
const content::FileChooserParams& params) {
281-
if (!web_dialog_helper_)
282-
web_dialog_helper_.reset(new WebDialogHelper(owner_window()));
283-
web_dialog_helper_->RunFileChooser(render_frame_host, params);
281+
FileSelectHelper::RunFileChooser(render_frame_host, params);
284282
}
285283

286284
void CommonWebContentsDelegate::EnumerateDirectory(content::WebContents* guest,
287285
int request_id,
288286
const base::FilePath& path) {
289-
if (!web_dialog_helper_)
290-
web_dialog_helper_.reset(new WebDialogHelper(owner_window()));
291-
web_dialog_helper_->EnumerateDirectory(guest, request_id, path);
287+
FileSelectHelper::EnumerateDirectory(guest, request_id, path);
292288
}
293289

294290
void CommonWebContentsDelegate::EnterFullscreenModeForTab(

atom/browser/common_web_contents_delegate.h

-2
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ namespace atom {
2020

2121
class AtomBrowserContext;
2222
class NativeWindow;
23-
class WebDialogHelper;
2423

2524
class CommonWebContentsDelegate
2625
: public content::WebContentsDelegate,
@@ -144,7 +143,6 @@ class CommonWebContentsDelegate
144143
// Whether window is fullscreened by window api.
145144
bool native_fullscreen_;
146145

147-
std::unique_ptr<WebDialogHelper> web_dialog_helper_;
148146
scoped_refptr<DevToolsFileSystemIndexer> devtools_file_system_indexer_;
149147

150148
// Make sure BrowserContext is alwasys destroyed after WebContents.

atom/browser/web_dialog_helper.cc

-222
This file was deleted.

atom/browser/web_dialog_helper.h

-45
This file was deleted.

brave/browser/brave_browser_context.cc

+8
Original file line numberDiff line numberDiff line change
@@ -637,6 +637,14 @@ BraveBrowserContext::GetIOTaskRunner() {
637637
GetPath(), BrowserThread::GetBlockingPool());
638638
}
639639

640+
base::FilePath BraveBrowserContext::last_selected_directory() {
641+
return GetPrefs()->GetFilePath(prefs::kSelectFileLastDirectory);
642+
}
643+
644+
void BraveBrowserContext::set_last_selected_directory(const base::FilePath& path) {
645+
GetPrefs()->SetFilePath(prefs::kSelectFileLastDirectory, path);
646+
}
647+
640648
} // namespace brave
641649

642650
namespace atom {

brave/browser/brave_browser_context.h

+2
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,8 @@ class BraveBrowserContext : public Profile {
8787
bool HasOffTheRecordProfile() override;
8888
Profile* GetOriginalProfile() override;
8989
bool IsSameProfile(Profile* profile) override;
90+
base::FilePath last_selected_directory() override;
91+
void set_last_selected_directory(const base::FilePath& path) override;
9092

9193
user_prefs::PrefRegistrySyncable* pref_registry() const override {
9294
return pref_registry_.get(); }

0 commit comments

Comments
 (0)