register custom schemes to access files through filesystem api
This commit is contained in:
parent
1276587ebe
commit
ad0c86db7a
2 changed files with 19 additions and 1 deletions
|
@ -23,8 +23,9 @@
|
||||||
#include "base/command_line.h"
|
#include "base/command_line.h"
|
||||||
#include "base/files/file_util.h"
|
#include "base/files/file_util.h"
|
||||||
#include "base/stl_util.h"
|
#include "base/stl_util.h"
|
||||||
#include "base/strings/string_util.h"
|
|
||||||
#include "base/strings/string_number_conversions.h"
|
#include "base/strings/string_number_conversions.h"
|
||||||
|
#include "base/strings/string_split.h"
|
||||||
|
#include "base/strings/string_util.h"
|
||||||
#include "chrome/browser/printing/printing_message_filter.h"
|
#include "chrome/browser/printing/printing_message_filter.h"
|
||||||
#include "chrome/browser/renderer_host/pepper/chrome_browser_pepper_host_factory.h"
|
#include "chrome/browser/renderer_host/pepper/chrome_browser_pepper_host_factory.h"
|
||||||
#include "chrome/browser/renderer_host/pepper/widevine_cdm_message_filter.h"
|
#include "chrome/browser/renderer_host/pepper/widevine_cdm_message_filter.h"
|
||||||
|
@ -279,6 +280,21 @@ bool AtomBrowserClient::CanCreateWindow(
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void AtomBrowserClient::GetAdditionalAllowedSchemesForFileSystem(
|
||||||
|
std::vector<std::string>* additional_schemes) {
|
||||||
|
// Parse --standard-schemes=scheme1,scheme2
|
||||||
|
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
|
||||||
|
std::string custom_schemes = command_line->GetSwitchValueASCII(
|
||||||
|
switches::kStandardSchemes);
|
||||||
|
if (!custom_schemes.empty()) {
|
||||||
|
std::vector<std::string> schemes_list = base::SplitString(
|
||||||
|
custom_schemes, ",", base::TRIM_WHITESPACE, base::SPLIT_WANT_NONEMPTY);
|
||||||
|
additional_schemes->insert(additional_schemes->end(),
|
||||||
|
schemes_list.begin(),
|
||||||
|
schemes_list.end());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
brightray::BrowserMainParts* AtomBrowserClient::OverrideCreateBrowserMainParts(
|
brightray::BrowserMainParts* AtomBrowserClient::OverrideCreateBrowserMainParts(
|
||||||
const content::MainFunctionParams&) {
|
const content::MainFunctionParams&) {
|
||||||
v8::V8::Initialize(); // Init V8 before creating main parts.
|
v8::V8::Initialize(); // Init V8 before creating main parts.
|
||||||
|
|
|
@ -94,6 +94,8 @@ class AtomBrowserClient : public brightray::BrowserClient,
|
||||||
int opener_render_view_id,
|
int opener_render_view_id,
|
||||||
int opener_render_frame_id,
|
int opener_render_frame_id,
|
||||||
bool* no_javascript_access) override;
|
bool* no_javascript_access) override;
|
||||||
|
void GetAdditionalAllowedSchemesForFileSystem(
|
||||||
|
std::vector<std::string>* schemes) override;
|
||||||
|
|
||||||
// brightray::BrowserClient:
|
// brightray::BrowserClient:
|
||||||
brightray::BrowserMainParts* OverrideCreateBrowserMainParts(
|
brightray::BrowserMainParts* OverrideCreateBrowserMainParts(
|
||||||
|
|
Loading…
Add table
Reference in a new issue