Revert "feat: upgrade to Chromium 72.0.3626.52 (#16334)"

This reverts commit 1918e76913.
This commit is contained in:
Samuel Attard
2019-01-22 12:01:04 -08:00
parent 58a6fe13d6
commit 0b85fb7ea2
178 changed files with 1734 additions and 2102 deletions

View File

@@ -8,10 +8,6 @@
#include <memory>
#include <string>
#if defined(OS_LINUX)
#include <glib.h> // for g_setenv()
#endif
#include "atom/app/atom_content_client.h"
#include "atom/browser/atom_browser_client.h"
#include "atom/browser/relauncher.h"
@@ -186,36 +182,6 @@ bool AtomMainDelegate::BasicStartupComplete(int* exit_code) {
return false;
}
void AtomMainDelegate::PostEarlyInitialization(bool is_running_tests) {
std::string custom_locale;
ui::ResourceBundle::InitSharedInstanceWithLocale(
custom_locale, nullptr, ui::ResourceBundle::LOAD_COMMON_RESOURCES);
auto* cmd_line = base::CommandLine::ForCurrentProcess();
if (cmd_line->HasSwitch(::switches::kLang)) {
const std::string locale = cmd_line->GetSwitchValueASCII(::switches::kLang);
const base::FilePath locale_file_path =
ui::ResourceBundle::GetSharedInstance().GetLocaleFilePath(locale, true);
if (!locale_file_path.empty()) {
custom_locale = locale;
#if defined(OS_LINUX)
/* When built with USE_GLIB, libcc's GetApplicationLocaleInternal() uses
* glib's g_get_language_names(), which keys off of getenv("LC_ALL") */
g_setenv("LC_ALL", custom_locale.c_str(), TRUE);
#endif
}
}
#if defined(OS_MACOSX)
if (custom_locale.empty())
l10n_util::OverrideLocaleWithCocoaLocale();
#endif
LoadResourceBundle(custom_locale);
AtomBrowserClient::SetApplicationLocale(
l10n_util::GetApplicationLocale(custom_locale));
}
void AtomMainDelegate::PreSandboxStartup() {
auto* command_line = base::CommandLine::ForCurrentProcess();

View File

@@ -25,7 +25,6 @@ class AtomMainDelegate : public content::ContentMainDelegate {
bool BasicStartupComplete(int* exit_code) override;
void PreSandboxStartup() override;
void PreCreateMainMessageLoop() override;
void PostEarlyInitialization(bool is_running_tests) override;
content::ContentBrowserClient* CreateContentBrowserClient() override;
content::ContentRendererClient* CreateContentRendererClient() override;
content::ContentUtilityClient* CreateContentUtilityClient() override;

View File

@@ -30,7 +30,7 @@
#include "base/files/file_path.h"
#include "base/files/file_util.h"
#include "base/path_service.h"
#include "base/system/sys_info.h"
#include "base/sys_info.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/icon_manager.h"
#include "chrome/common/chrome_paths.h"
@@ -780,24 +780,24 @@ void App::OnGpuProcessCrashed(base::TerminationStatus status) {
void App::BrowserChildProcessLaunchedAndConnected(
const content::ChildProcessData& data) {
ChildProcessLaunched(data.process_type, data.GetProcess().Handle());
ChildProcessLaunched(data.process_type, data.GetHandle());
}
void App::BrowserChildProcessHostDisconnected(
const content::ChildProcessData& data) {
ChildProcessDisconnected(base::GetProcId(data.GetProcess().Handle()));
ChildProcessDisconnected(base::GetProcId(data.GetHandle()));
}
void App::BrowserChildProcessCrashed(
const content::ChildProcessData& data,
const content::ChildProcessTerminationInfo& info) {
ChildProcessDisconnected(base::GetProcId(data.GetProcess().Handle()));
ChildProcessDisconnected(base::GetProcId(data.GetHandle()));
}
void App::BrowserChildProcessKilled(
const content::ChildProcessData& data,
const content::ChildProcessTerminationInfo& info) {
ChildProcessDisconnected(base::GetProcId(data.GetProcess().Handle()));
ChildProcessDisconnected(base::GetProcId(data.GetHandle()));
}
void App::RenderProcessReady(content::RenderProcessHost* host) {
@@ -1387,9 +1387,7 @@ void Initialize(v8::Local<v8::Object> exports,
void* priv) {
v8::Isolate* isolate = context->GetIsolate();
mate::Dictionary dict(isolate, exports);
dict.Set("App", atom::api::App::GetConstructor(isolate)
->GetFunction(context)
.ToLocalChecked());
dict.Set("App", atom::api::App::GetConstructor(isolate)->GetFunction());
dict.Set("app", atom::api::App::Create(isolate));
#if defined(OS_MACOSX)
auto browser = base::Unretained(Browser::Get());

View File

@@ -147,9 +147,7 @@ void Initialize(v8::Local<v8::Object> exports,
v8::Isolate* isolate = context->GetIsolate();
mate::Dictionary dict(isolate, exports);
dict.Set("autoUpdater", AutoUpdater::Create(isolate));
dict.Set("AutoUpdater", AutoUpdater::GetConstructor(isolate)
->GetFunction(context)
.ToLocalChecked());
dict.Set("AutoUpdater", AutoUpdater::GetConstructor(isolate)->GetFunction());
}
} // namespace

View File

@@ -159,9 +159,8 @@ void Initialize(v8::Local<v8::Object> exports,
v8::Isolate* isolate = context->GetIsolate();
BrowserView::SetConstructor(isolate, base::Bind(&BrowserView::New));
mate::Dictionary browser_view(isolate, BrowserView::GetConstructor(isolate)
->GetFunction(context)
.ToLocalChecked());
mate::Dictionary browser_view(
isolate, BrowserView::GetConstructor(isolate)->GetFunction());
browser_view.SetMethod("fromId",
&mate::TrackableObject<BrowserView>::FromWeakMapID);
browser_view.SetMethod("getAllViews",

View File

@@ -59,9 +59,8 @@ void BrowserWindow::OverrideNSWindowContentView(InspectableWebContents* iwc) {
// Make NativeWindow use a NSView as content view.
static_cast<NativeWindowMac*>(window())->OverrideNSWindowContentView();
// Add webview to contentView.
NSView* webView = iwc->GetView()->GetNativeView().GetNativeNSView();
NSView* contentView =
[window()->GetNativeWindow().GetNativeNSWindow() contentView];
NSView* webView = iwc->GetView()->GetNativeView();
NSView* contentView = [window()->GetNativeWindow() contentView];
[webView setFrame:[contentView bounds]];
// ensure that buttons view is floated to top of view hierarchy
@@ -81,7 +80,7 @@ void BrowserWindow::UpdateDraggableRegions(
// All ControlRegionViews should be added as children of the WebContentsView,
// because WebContentsView will be removed and re-added when entering and
// leaving fullscreen mode.
NSView* webView = web_contents()->GetNativeView().GetNativeNSView();
NSView* webView = web_contents()->GetNativeView();
NSInteger webViewWidth = NSWidth([webView bounds]);
NSInteger webViewHeight = NSHeight([webView bounds]);

View File

@@ -194,9 +194,7 @@ void Initialize(v8::Local<v8::Object> exports,
void* priv) {
v8::Isolate* isolate = context->GetIsolate();
mate::Dictionary(isolate, exports)
.Set("Debugger", Debugger::GetConstructor(isolate)
->GetFunction(context)
.ToLocalChecked());
.Set("Debugger", Debugger::GetConstructor(isolate)->GetFunction());
}
} // namespace

View File

@@ -244,9 +244,8 @@ void Initialize(v8::Local<v8::Object> exports,
void* priv) {
v8::Isolate* isolate = context->GetIsolate();
mate::Dictionary(isolate, exports)
.Set("DownloadItem", atom::api::DownloadItem::GetConstructor(isolate)
->GetFunction(context)
.ToLocalChecked());
.Set("DownloadItem",
atom::api::DownloadItem::GetConstructor(isolate)->GetFunction());
}
} // namespace

View File

@@ -132,9 +132,8 @@ void Initialize(v8::Local<v8::Object> exports,
v8::Isolate* isolate = context->GetIsolate();
mate::Dictionary dict(isolate, exports);
dict.Set("inAppPurchase", InAppPurchase::Create(isolate));
dict.Set("InAppPurchase", InAppPurchase::GetConstructor(isolate)
->GetFunction(context)
.ToLocalChecked());
dict.Set("InAppPurchase",
InAppPurchase::GetConstructor(isolate)->GetFunction());
#endif
}

View File

@@ -233,9 +233,7 @@ void Initialize(v8::Local<v8::Object> exports,
Menu::SetConstructor(isolate, base::Bind(&Menu::New));
mate::Dictionary dict(isolate, exports);
dict.Set(
"Menu",
Menu::GetConstructor(isolate)->GetFunction(context).ToLocalChecked());
dict.Set("Menu", Menu::GetConstructor(isolate)->GetFunction());
#if defined(OS_MACOSX)
dict.SetMethod("setApplicationMenu", &Menu::SetApplicationMenu);
dict.SetMethod("sendActionToFirstResponder",

View File

@@ -56,7 +56,7 @@ void MenuMac::PopupOnUI(const base::WeakPtr<NativeWindow>& native_window,
base::Closure callback) {
if (!native_window)
return;
NSWindow* nswindow = native_window->GetNativeWindow().GetNativeNSWindow();
NSWindow* nswindow = native_window->GetNativeWindow();
auto close_callback = base::Bind(
&MenuMac::OnClosed, weak_factory_.GetWeakPtr(), window_id, callback);
@@ -99,7 +99,7 @@ void MenuMac::PopupOnUI(const base::WeakPtr<NativeWindow>& native_window,
[popup_controllers_[window_id] setCloseCallback:close_callback];
// Make sure events can be pumped while the menu is up.
base::MessageLoopCurrent::ScopedNestableTaskAllower allow;
base::MessageLoop::ScopedNestableTaskAllower allow;
// One of the events that could be pumped is |window.close()|.
// User-initiated event-tracking loops protect against this by

View File

@@ -31,9 +31,7 @@ void Net::BuildPrototype(v8::Isolate* isolate,
}
v8::Local<v8::Value> Net::URLRequest(v8::Isolate* isolate) {
return URLRequest::GetConstructor(isolate)
->GetFunction(isolate->GetCurrentContext())
.ToLocalChecked();
return URLRequest::GetConstructor(isolate)->GetFunction();
}
} // namespace api
@@ -55,8 +53,7 @@ void Initialize(v8::Local<v8::Object> exports,
mate::Dictionary dict(isolate, exports);
dict.Set("net", Net::Create(isolate));
dict.Set("Net",
Net::GetConstructor(isolate)->GetFunction(context).ToLocalChecked());
dict.Set("Net", Net::GetConstructor(isolate)->GetFunction());
}
} // namespace

View File

@@ -263,9 +263,8 @@ void Initialize(v8::Local<v8::Object> exports,
Notification::SetConstructor(isolate, base::Bind(&Notification::New));
mate::Dictionary dict(isolate, exports);
dict.Set("Notification", Notification::GetConstructor(isolate)
->GetFunction(context)
.ToLocalChecked());
dict.Set("Notification",
Notification::GetConstructor(isolate)->GetFunction());
dict.SetMethod("isSupported", &Notification::IsSupported);
}

View File

@@ -141,9 +141,8 @@ void Initialize(v8::Local<v8::Object> exports,
v8::Isolate* isolate = context->GetIsolate();
mate::Dictionary dict(isolate, exports);
dict.Set("powerMonitor", PowerMonitor::Create(isolate));
dict.Set("PowerMonitor", PowerMonitor::GetConstructor(isolate)
->GetFunction(context)
.ToLocalChecked());
dict.Set("PowerMonitor",
PowerMonitor::GetConstructor(isolate)->GetFunction());
}
} // namespace

View File

@@ -164,9 +164,7 @@ void Initialize(v8::Local<v8::Object> exports,
v8::Isolate* isolate = context->GetIsolate();
mate::Dictionary dict(isolate, exports);
dict.Set("screen", Screen::Create(isolate));
dict.Set(
"Screen",
Screen::GetConstructor(isolate)->GetFunction(context).ToLocalChecked());
dict.Set("Screen", Screen::GetConstructor(isolate)->GetFunction());
}
} // namespace

View File

@@ -444,9 +444,10 @@ void Session::ClearStorageData(mate::Arguments* args) {
// https://w3c.github.io/mediacapture-main/#dom-mediadeviceinfo-deviceid
MediaDeviceIDSalt::Reset(browser_context()->prefs());
}
storage_partition->ClearData(options.storage_types, options.quota_types,
options.origin, base::Time(), base::Time::Max(),
base::Bind(&OnClearStorageDataDone, callback));
storage_partition->ClearData(
options.storage_types, options.quota_types, options.origin,
content::StoragePartition::OriginMatcherFunction(), base::Time(),
base::Time::Max(), base::Bind(&OnClearStorageDataDone, callback));
}
void Session::FlushStorageData() {
@@ -804,12 +805,8 @@ void Initialize(v8::Local<v8::Object> exports,
void* priv) {
v8::Isolate* isolate = context->GetIsolate();
mate::Dictionary dict(isolate, exports);
dict.Set(
"Session",
Session::GetConstructor(isolate)->GetFunction(context).ToLocalChecked());
dict.Set(
"Cookies",
Cookies::GetConstructor(isolate)->GetFunction(context).ToLocalChecked());
dict.Set("Session", Session::GetConstructor(isolate)->GetFunction());
dict.Set("Cookies", Cookies::GetConstructor(isolate)->GetFunction());
dict.SetMethod("fromPartition", &FromPartition);
}

View File

@@ -121,9 +121,8 @@ void Initialize(v8::Local<v8::Object> exports,
v8::Isolate* isolate = context->GetIsolate();
mate::Dictionary dict(isolate, exports);
dict.Set("systemPreferences", SystemPreferences::Create(isolate));
dict.Set("SystemPreferences", SystemPreferences::GetConstructor(isolate)
->GetFunction(context)
.ToLocalChecked());
dict.Set("SystemPreferences",
SystemPreferences::GetConstructor(isolate)->GetFunction());
}
} // namespace

View File

@@ -1179,9 +1179,8 @@ void Initialize(v8::Local<v8::Object> exports,
v8::Isolate* isolate = context->GetIsolate();
TopLevelWindow::SetConstructor(isolate, base::Bind(&TopLevelWindow::New));
mate::Dictionary constructor(isolate, TopLevelWindow::GetConstructor(isolate)
->GetFunction(context)
.ToLocalChecked());
mate::Dictionary constructor(
isolate, TopLevelWindow::GetConstructor(isolate)->GetFunction());
constructor.SetMethod("fromId",
&mate::TrackableObject<TopLevelWindow>::FromWeakMapID);
constructor.SetMethod("getAllWindows",

View File

@@ -254,9 +254,7 @@ void Initialize(v8::Local<v8::Object> exports,
Tray::SetConstructor(isolate, base::Bind(&Tray::New));
mate::Dictionary dict(isolate, exports);
dict.Set(
"Tray",
Tray::GetConstructor(isolate)->GetFunction(context).ToLocalChecked());
dict.Set("Tray", Tray::GetConstructor(isolate)->GetFunction());
}
} // namespace

View File

@@ -76,9 +76,8 @@ void Initialize(v8::Local<v8::Object> exports,
v8::Isolate* isolate = context->GetIsolate();
View::SetConstructor(isolate, base::Bind(&View::New));
mate::Dictionary constructor(
isolate,
View::GetConstructor(isolate)->GetFunction(context).ToLocalChecked());
mate::Dictionary constructor(isolate,
View::GetConstructor(isolate)->GetFunction());
mate::Dictionary dict(isolate, exports);
dict.Set("View", constructor);

View File

@@ -47,7 +47,6 @@
#include "atom/common/native_mate_converters/value_converter.h"
#include "atom/common/options_switches.h"
#include "base/message_loop/message_loop.h"
#include "base/no_destructor.h"
#include "base/strings/utf_string_conversions.h"
#include "base/threading/thread_restrictions.h"
#include "base/threading/thread_task_runner_handle.h"
@@ -241,7 +240,7 @@ namespace api {
namespace {
content::ServiceWorkerContext* GetServiceWorkerContext(
content::WebContents* web_contents) {
const content::WebContents* web_contents) {
auto* context = web_contents->GetBrowserContext();
auto* site_instance = web_contents->GetSiteInstance();
if (!context || !site_instance)
@@ -422,14 +421,15 @@ void WebContents::InitWithSessionAndOptions(
#if defined(OS_LINUX) || defined(OS_WIN)
// Update font settings.
static const base::NoDestructor<gfx::FontRenderParams> params(
gfx::GetFontRenderParams(gfx::FontRenderParamsQuery(), nullptr));
prefs->should_antialias_text = params->antialiasing;
prefs->use_subpixel_positioning = params->subpixel_positioning;
prefs->hinting = params->hinting;
prefs->use_autohinter = params->autohinter;
prefs->use_bitmaps = params->use_bitmaps;
prefs->subpixel_rendering = params->subpixel_rendering;
CR_DEFINE_STATIC_LOCAL(
const gfx::FontRenderParams, params,
(gfx::GetFontRenderParams(gfx::FontRenderParamsQuery(), nullptr)));
prefs->should_antialias_text = params.antialiasing;
prefs->use_subpixel_positioning = params.subpixel_positioning;
prefs->hinting = params.hinting;
prefs->use_autohinter = params.autohinter;
prefs->use_bitmaps = params.use_bitmaps;
prefs->subpixel_rendering = params.subpixel_rendering;
#endif
// Save the preferences in C++.
@@ -470,9 +470,9 @@ WebContents::~WebContents() {
RenderViewDeleted(web_contents()->GetRenderViewHost());
if (type_ == WEB_VIEW) {
DCHECK(!web_contents()->GetOuterWebContents())
<< "Should never manually destroy an attached webview";
// For webview simply destroy the WebContents immediately.
// TODO(zcbenz): Add an internal API for webview instead of using
// destroy(), so we don't have to add a special branch here.
DestroyWebContents(false /* async */);
} else if (type_ == BROWSER_WINDOW && owner_window()) {
// For BrowserWindow we should close the window and clean up everything
@@ -617,15 +617,15 @@ void WebContents::UpdateTargetURL(content::WebContents* source,
Emit("update-target-url", url);
}
bool WebContents::HandleKeyboardEvent(
void WebContents::HandleKeyboardEvent(
content::WebContents* source,
const content::NativeWebKeyboardEvent& event) {
if (type_ == WEB_VIEW && embedder_) {
// Send the unhandled keyboard events back to the embedder.
return embedder_->HandleKeyboardEvent(source, event);
embedder_->HandleKeyboardEvent(source, event);
} else {
// Go to the default keyboard handling.
return CommonWebContentsDelegate::HandleKeyboardEvent(source, event);
CommonWebContentsDelegate::HandleKeyboardEvent(source, event);
}
}
@@ -1129,7 +1129,7 @@ void WebContents::NavigationEntryCommitted(
void WebContents::SetBackgroundThrottling(bool allowed) {
background_throttling_ = allowed;
auto* contents = web_contents();
const auto* contents = web_contents();
if (!contents) {
return;
}
@@ -1188,9 +1188,8 @@ void WebContents::LoadURL(const GURL& url, const mate::Dictionary& options) {
if (!options.Get("httpReferrer", &params.referrer)) {
GURL http_referrer;
if (options.Get("httpReferrer", &http_referrer))
params.referrer =
content::Referrer(http_referrer.GetAsReferrer(),
network::mojom::ReferrerPolicy::kDefault);
params.referrer = content::Referrer(http_referrer.GetAsReferrer(),
blink::kWebReferrerPolicyDefault);
}
std::string user_agent;
@@ -1794,7 +1793,7 @@ void WebContents::StartDrag(const mate::Dictionary& item,
// Start dragging.
if (!files.empty()) {
base::MessageLoopCurrent::ScopedNestableTaskAllower allow;
base::MessageLoop::ScopedNestableTaskAllower allow;
DragFileItems(files, icon->image(), web_contents()->GetNativeView());
} else {
args->ThrowError("Must specify either 'file' or 'files' option");
@@ -2150,7 +2149,6 @@ void WebContents::BuildPrototype(v8::Isolate* isolate,
.SetMethod("startDrag", &WebContents::StartDrag)
.SetMethod("isGuest", &WebContents::IsGuest)
.SetMethod("attachToIframe", &WebContents::AttachToIframe)
.SetMethod("detachFromOuterFrame", &WebContents::DetachFromOuterFrame)
.SetMethod("isOffscreen", &WebContents::IsOffScreen)
#if BUILDFLAG(ENABLE_OSR)
.SetMethod("startPainting", &WebContents::StartPainting)
@@ -2286,9 +2284,7 @@ void Initialize(v8::Local<v8::Object> exports,
void* priv) {
v8::Isolate* isolate = context->GetIsolate();
mate::Dictionary dict(isolate, exports);
dict.Set("WebContents", WebContents::GetConstructor(isolate)
->GetFunction(context)
.ToLocalChecked());
dict.Set("WebContents", WebContents::GetConstructor(isolate)->GetFunction());
dict.SetMethod("create", &WebContents::Create);
dict.SetMethod("fromId", &mate::TrackableObject<WebContents>::FromWeakMapID);
dict.SetMethod("getAllWebContents",

View File

@@ -242,7 +242,6 @@ class WebContents : public mate::TrackableObject<WebContents>,
bool IsGuest() const;
void AttachToIframe(content::WebContents* embedder_web_contents,
int embedder_frame_id);
void DetachFromOuterFrame();
// Methods for offscreen rendering
bool IsOffScreen() const;
@@ -363,7 +362,7 @@ class WebContents : public mate::TrackableObject<WebContents>,
void CloseContents(content::WebContents* source) override;
void ActivateContents(content::WebContents* contents) override;
void UpdateTargetURL(content::WebContents* source, const GURL& url) override;
bool HandleKeyboardEvent(
void HandleKeyboardEvent(
content::WebContents* source,
const content::NativeWebKeyboardEvent& event) override;
content::KeyboardEventProcessingResult PreHandleKeyboardEvent(

View File

@@ -17,7 +17,7 @@ bool WebContents::IsFocused() const {
return false;
if (GetType() != BACKGROUND_PAGE) {
auto window = [web_contents()->GetNativeView().GetNativeNSView() window];
auto window = [web_contents()->GetNativeView() window];
// On Mac the render widget host view does not lose focus when the window
// loses focus so check if the top level window is the key window.
if (window && ![window isKeyWindow])

View File

@@ -4,12 +4,9 @@
#include "atom/browser/api/atom_api_web_contents.h"
#include "content/browser/web_contents/web_contents_impl.h"
#if BUILDFLAG(ENABLE_OSR)
#include "atom/browser/osr/osr_render_widget_host_view.h"
#include "atom/browser/osr/osr_web_contents_view.h"
#endif
#include "content/browser/web_contents/web_contents_impl.h"
// Including both web_contents_impl.h and node.h would introduce a error, we
// have to isolate the usage of WebContentsImpl into a clean file to fix it:
@@ -19,13 +16,6 @@ namespace atom {
namespace api {
void WebContents::DetachFromOuterFrame() {
// See detach_webview_frame.patch on how to detach.
auto* impl = static_cast<content::WebContentsImpl*>(web_contents());
impl->GetRenderManagerForTesting()->RemoveOuterDelegateFrame();
}
#if BUILDFLAG(ENABLE_OSR)
OffScreenWebContentsView* WebContents::GetOffScreenWebContentsView() const {
if (IsOffScreen()) {
const auto* impl =
@@ -45,7 +35,6 @@ OffScreenRenderWidgetHostView* WebContents::GetOffScreenRenderWidgetHostView()
return nullptr;
}
}
#endif
} // namespace api

View File

@@ -35,8 +35,7 @@ v8::Local<v8::Object> CreateEventObject(v8::Isolate* isolate) {
}
return v8::Local<v8::ObjectTemplate>::New(isolate, event_template)
->NewInstance(isolate->GetCurrentContext())
.ToLocalChecked();
->NewInstance();
}
} // namespace

View File

@@ -95,7 +95,6 @@
#endif // BUILDFLAG(OVERRIDE_LOCATION_PROVIDER)
#if BUILDFLAG(ENABLE_TTS)
#include "chrome/browser/speech/tts_controller_delegate_impl.h"
#include "chrome/browser/speech/tts_message_filter.h"
#endif // BUILDFLAG(ENABLE_TTS)
@@ -159,6 +158,8 @@ AtomBrowserClient* AtomBrowserClient::Get() {
// static
void AtomBrowserClient::SetApplicationLocale(const std::string& locale) {
DCHECK_CURRENTLY_ON(BrowserThread::UI);
if (!BrowserThread::IsThreadInitialized(BrowserThread::IO) ||
!base::PostTaskWithTraits(
FROM_HERE, {BrowserThread::IO},
@@ -367,14 +368,6 @@ AtomBrowserClient::CreateSpeechRecognitionManagerDelegate() {
return new AtomSpeechRecognitionManagerDelegate;
}
content::TtsControllerDelegate* AtomBrowserClient::GetTtsControllerDelegate() {
#if BUILDFLAG(ENABLE_TTS)
return TtsControllerDelegateImpl::GetInstance();
#else
return nullptr;
#endif
}
void AtomBrowserClient::OverrideWebkitPrefs(content::RenderViewHost* host,
content::WebPreferences* prefs) {
prefs->javascript_enabled = true;
@@ -543,17 +536,6 @@ AtomBrowserClient::CreateQuotaPermissionContext() {
return new AtomQuotaPermissionContext;
}
content::GeneratedCodeCacheSettings
AtomBrowserClient::GetGeneratedCodeCacheSettings(
content::BrowserContext* context) {
// TODO(deepak1556): Use platform cache directory.
base::FilePath cache_path = context->GetPath();
// If we pass 0 for size, disk_cache will pick a default size using the
// heuristics based on available disk size. These are implemented in
// disk_cache::PreferredCacheSize in net/disk_cache/cache_util.cc.
return content::GeneratedCodeCacheSettings(true, 0, cache_path);
}
void AtomBrowserClient::AllowCertificateError(
content::WebContents* web_contents,
int cert_error,
@@ -822,9 +804,7 @@ bool AtomBrowserClient::HandleExternalProtocol(
content::NavigationUIData* navigation_data,
bool is_main_frame,
ui::PageTransition page_transition,
bool has_user_gesture,
const std::string& method,
const net::HttpRequestHeaders& headers) {
bool has_user_gesture) {
base::PostTaskWithTraits(
FROM_HERE, {BrowserThread::UI},
base::BindOnce(&HandleExternalProtocolInUI, url, web_contents_getter,

View File

@@ -74,7 +74,6 @@ class AtomBrowserClient : public content::ContentBrowserClient,
service_manager::mojom::ServiceRequest* service_request) override;
content::SpeechRecognitionManagerDelegate*
CreateSpeechRecognitionManagerDelegate() override;
content::TtsControllerDelegate* GetTtsControllerDelegate() override;
void OverrideWebkitPrefs(content::RenderViewHost* render_view_host,
content::WebPreferences* prefs) override;
SiteInstanceForNavigationType ShouldOverrideSiteInstanceForNavigation(
@@ -92,8 +91,6 @@ class AtomBrowserClient : public content::ContentBrowserClient,
void DidCreatePpapiPlugin(content::BrowserPpapiHost* browser_host) override;
std::string GetGeolocationApiKey() override;
content::QuotaPermissionContext* CreateQuotaPermissionContext() override;
content::GeneratedCodeCacheSettings GetGeneratedCodeCacheSettings(
content::BrowserContext* context) override;
void AllowCertificateError(
content::WebContents* web_contents,
int cert_error,
@@ -168,9 +165,7 @@ class AtomBrowserClient : public content::ContentBrowserClient,
content::NavigationUIData* navigation_data,
bool is_main_frame,
ui::PageTransition page_transition,
bool has_user_gesture,
const std::string& method,
const net::HttpRequestHeaders& headers) override;
bool has_user_gesture) override;
private:
struct ProcessPreferences {

View File

@@ -191,6 +191,11 @@ base::FilePath AtomBrowserContext::GetPath() const {
return path_;
}
base::FilePath AtomBrowserContext::GetCachePath() const {
// TODO(deepak1556): Use platform cache directory.
return path_;
}
bool AtomBrowserContext::IsOffTheRecord() const {
return in_memory_;
}

View File

@@ -60,6 +60,7 @@ class AtomBrowserContext
// content::BrowserContext:
base::FilePath GetPath() const override;
base::FilePath GetCachePath() const override;
bool IsOffTheRecord() const override;
content::ResourceContext* GetResourceContext() override;
std::unique_ptr<content::ZoomLevelDelegate> CreateZoomLevelDelegate(

View File

@@ -47,7 +47,9 @@
#include "services/device/public/mojom/constants.mojom.h"
#include "services/service_manager/public/cpp/connector.h"
#include "ui/base/idle/idle.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/material_design/material_design_controller.h"
#include "ui/base/resource/resource_bundle.h"
#include "ui/base/ui_base_switches.h"
#if defined(USE_AURA)
@@ -71,7 +73,6 @@
#if defined(OS_WIN)
#include "ui/base/cursor/cursor_loader_win.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/l10n/l10n_util_win.h"
#include "ui/display/win/dpi.h"
#include "ui/gfx/platform_font_win.h"
@@ -354,6 +355,9 @@ int AtomBrowserMainParts::PreCreateThreads() {
layout_provider_.reset(new views::LayoutProvider());
// Initialize the app locale.
AtomBrowserClient::SetApplicationLocale(
l10n_util::GetApplicationLocale(custom_locale_));
fake_browser_process_->SetApplicationLocale(
AtomBrowserClient::Get()->GetApplicationLocale());
@@ -509,6 +513,29 @@ void AtomBrowserMainParts::PreMainMessageLoopStart() {
#endif
void AtomBrowserMainParts::PreMainMessageLoopStartCommon() {
// Initialize ui::ResourceBundle.
ui::ResourceBundle::InitSharedInstanceWithLocale(
"", nullptr, ui::ResourceBundle::DO_NOT_LOAD_COMMON_RESOURCES);
auto* cmd_line = base::CommandLine::ForCurrentProcess();
if (cmd_line->HasSwitch(switches::kLang)) {
const std::string locale = cmd_line->GetSwitchValueASCII(switches::kLang);
const base::FilePath locale_file_path =
ui::ResourceBundle::GetSharedInstance().GetLocaleFilePath(locale, true);
if (!locale_file_path.empty()) {
custom_locale_ = locale;
#if defined(OS_LINUX)
/* When built with USE_GLIB, libcc's GetApplicationLocaleInternal() uses
* glib's g_get_language_names(), which keys off of getenv("LC_ALL") */
g_setenv("LC_ALL", custom_locale_.c_str(), TRUE);
#endif
}
}
#if defined(OS_MACOSX)
if (custom_locale_.empty())
l10n_util::OverrideLocaleWithCocoaLocale();
#endif
LoadResourceBundle(custom_locale_);
#if defined(OS_MACOSX)
InitializeMainNib();
#endif

View File

@@ -112,6 +112,7 @@ class AtomBrowserMainParts : public content::BrowserMainParts {
#endif
std::unique_ptr<views::LayoutProvider> layout_provider_;
std::string custom_locale_;
// A fake BrowserProcess object that used to feed the source code from chrome.
std::unique_ptr<BrowserProcessImpl> fake_browser_process_;

View File

@@ -325,7 +325,7 @@ std::string Browser::DockGetBadgeText() {
void Browser::DockHide() {
for (auto* const& window : WindowList::GetWindows())
[window->GetNativeWindow().GetNativeNSWindow() setCanHide:NO];
[window->GetNativeWindow() setCanHide:NO];
ProcessSerialNumber psn = {0, kCurrentProcess};
TransformProcessType(&psn, kProcessTransformToUIElementApplication);

View File

@@ -258,7 +258,7 @@ BrowserProcessImpl::safe_browsing_detection_service() {
return nullptr;
}
subresource_filter::RulesetService*
subresource_filter::ContentRulesetService*
BrowserProcessImpl::subresource_filter_ruleset_service() {
return nullptr;
}
@@ -299,11 +299,6 @@ gcm::GCMDriver* BrowserProcessImpl::gcm_driver() {
return nullptr;
}
resource_coordinator::ResourceCoordinatorParts*
BrowserProcessImpl::resource_coordinator_parts() {
return nullptr;
}
resource_coordinator::TabManager* BrowserProcessImpl::GetTabManager() {
return nullptr;
}

View File

@@ -86,8 +86,8 @@ class BrowserProcessImpl : public BrowserProcess {
safe_browsing::SafeBrowsingService* safe_browsing_service() override;
safe_browsing::ClientSideDetectionService* safe_browsing_detection_service()
override;
subresource_filter::RulesetService* subresource_filter_ruleset_service()
override;
subresource_filter::ContentRulesetService*
subresource_filter_ruleset_service() override;
optimization_guide::OptimizationGuideService* optimization_guide_service()
override;
net_log::ChromeNetLog* net_log() override;
@@ -98,8 +98,6 @@ class BrowserProcessImpl : public BrowserProcess {
WebRtcLogUploader* webrtc_log_uploader() override;
network_time::NetworkTimeTracker* network_time_tracker() override;
gcm::GCMDriver* gcm_driver() override;
resource_coordinator::ResourceCoordinatorParts* resource_coordinator_parts()
override;
resource_coordinator::TabManager* GetTabManager() override;
shell_integration::DefaultWebClientState CachedDefaultWebClientState()
override;

View File

@@ -20,7 +20,6 @@
#include "base/files/file_util.h"
#include "base/json/json_reader.h"
#include "base/task/post_task.h"
#include "base/threading/scoped_blocking_call.h"
#include "base/threading/sequenced_task_runner_handle.h"
#include "chrome/browser/ssl/security_state_tab_helper.h"
#include "chrome/browser/ui/browser_dialogs.h"
@@ -122,14 +121,14 @@ std::unique_ptr<base::DictionaryValue> CreateFileSystemValue(
}
void WriteToFile(const base::FilePath& path, const std::string& content) {
base::ScopedBlockingCall scoped_blocking_call(base::BlockingType::WILL_BLOCK);
base::AssertBlockingAllowed();
DCHECK(!path.empty());
base::WriteFile(path, content.data(), content.size());
}
void AppendToFile(const base::FilePath& path, const std::string& content) {
base::ScopedBlockingCall scoped_blocking_call(base::BlockingType::WILL_BLOCK);
base::AssertBlockingAllowed();
DCHECK(!path.empty());
base::AppendToFile(path, content.data(), content.size());

View File

@@ -100,7 +100,7 @@ class CommonWebContentsDelegate : public content::WebContentsDelegate,
content::WebContents* web_contents,
content::SecurityStyleExplanations* explanations) override;
bool TakeFocus(content::WebContents* source, bool reverse) override;
bool HandleKeyboardEvent(
void HandleKeyboardEvent(
content::WebContents* source,
const content::NativeWebKeyboardEvent& event) override;

View File

@@ -17,40 +17,33 @@
namespace atom {
bool CommonWebContentsDelegate::HandleKeyboardEvent(
void CommonWebContentsDelegate::HandleKeyboardEvent(
content::WebContents* source,
const content::NativeWebKeyboardEvent& event) {
if (event.skip_in_browser ||
event.GetType() == content::NativeWebKeyboardEvent::kChar)
return false;
return;
// Escape exits tabbed fullscreen mode.
if (event.windows_key_code == ui::VKEY_ESCAPE && is_html_fullscreen()) {
ExitFullscreenModeForTab(source);
return true;
return;
}
// Check if the webContents has preferences and to ignore shortcuts
auto* web_preferences = WebContentsPreferences::From(source);
if (web_preferences &&
web_preferences->IsEnabled("ignoreMenuShortcuts", false))
return false;
return;
// Send the event to the menu before sending it to the window
if (event.os_event.type == NSKeyDown &&
[[NSApp mainMenu] performKeyEquivalent:event.os_event])
return true;
return;
if (event.os_event.window &&
[event.os_event.window isKindOfClass:[EventDispatchingWindow class]]) {
[event.os_event.window isKindOfClass:[EventDispatchingWindow class]])
[event.os_event.window redispatchKeyEvent:event.os_event];
// FIXME(nornagon): this isn't the right return value; we should implement
// devtools windows as Widgets in order to take advantage of the
// pre-existing redispatch code in bridged_native_widget.
return false;
}
return false;
}
} // namespace atom

View File

@@ -17,28 +17,25 @@
namespace atom {
bool CommonWebContentsDelegate::HandleKeyboardEvent(
void CommonWebContentsDelegate::HandleKeyboardEvent(
content::WebContents* source,
const content::NativeWebKeyboardEvent& event) {
// Escape exits tabbed fullscreen mode.
if (event.windows_key_code == ui::VKEY_ESCAPE && is_html_fullscreen()) {
ExitFullscreenModeForTab(source);
return true;
return;
}
// Check if the webContents has preferences and to ignore shortcuts
auto* web_preferences = WebContentsPreferences::From(source);
if (web_preferences &&
web_preferences->IsEnabled("ignoreMenuShortcuts", false))
return false;
return;
// Let the NativeWindow handle other parts.
if (owner_window()) {
owner_window()->HandleKeyboardEvent(source, event);
return true;
}
return false;
}
void CommonWebContentsDelegate::ShowAutofillPopup(

View File

@@ -8,11 +8,8 @@
#import "atom/browser/mac/atom_application_delegate.h"
#include "atom/browser/mac/dict_util.h"
#include "base/auto_reset.h"
#include "base/observer_list.h"
#include "base/strings/sys_string_conversions.h"
#include "content/public/browser/browser_accessibility_state.h"
#include "content/public/browser/native_event_processor_mac.h"
#include "content/public/browser/native_event_processor_observer_mac.h"
namespace {
@@ -25,12 +22,6 @@ inline void dispatch_sync_main(dispatch_block_t block) {
} // namespace
@interface AtomApplication () <NativeEventProcessor> {
base::ObserverList<content::NativeEventProcessorObserver>::Unchecked
observers_;
}
@end
@implementation AtomApplication
+ (AtomApplication*)sharedApplication {
@@ -57,8 +48,6 @@ inline void dispatch_sync_main(dispatch_block_t block) {
- (void)sendEvent:(NSEvent*)event {
base::AutoReset<BOOL> scoper(&handlingSendEvent_, YES);
content::ScopedNotifyNativeEventProcessorObserver scopedObserverNotifier(
&observers_, event);
[super sendEvent:event];
}
@@ -199,14 +188,4 @@ inline void dispatch_sync_main(dispatch_block_t block) {
atom::Browser::Get()->ShowAboutPanel();
}
- (void)addNativeEventProcessorObserver:
(content::NativeEventProcessorObserver*)observer {
observers_.AddObserver(observer);
}
- (void)removeNativeEventProcessorObserver:
(content::NativeEventProcessorObserver*)observer {
observers_.RemoveObserver(observer);
}
@end

View File

@@ -160,8 +160,7 @@ namespace atom {
NativeBrowserViewMac::NativeBrowserViewMac(
InspectableWebContents* inspectable_web_contents)
: NativeBrowserView(inspectable_web_contents) {
auto* view =
GetInspectableWebContentsView()->GetNativeView().GetNativeNSView();
auto* view = GetInspectableWebContentsView()->GetNativeView();
view.autoresizingMask = kDefaultAutoResizingMask;
}
@@ -176,14 +175,12 @@ void NativeBrowserViewMac::SetAutoResizeFlags(uint8_t flags) {
autoresizing_mask |= NSViewHeightSizable;
}
auto* view =
GetInspectableWebContentsView()->GetNativeView().GetNativeNSView();
auto* view = GetInspectableWebContentsView()->GetNativeView();
view.autoresizingMask = autoresizing_mask;
}
void NativeBrowserViewMac::SetBounds(const gfx::Rect& bounds) {
auto* view =
GetInspectableWebContentsView()->GetNativeView().GetNativeNSView();
auto* view = GetInspectableWebContentsView()->GetNativeView();
auto* superview = view.superview;
const auto superview_height = superview ? superview.frame.size.height : 0;
view.frame =
@@ -192,17 +189,15 @@ void NativeBrowserViewMac::SetBounds(const gfx::Rect& bounds) {
}
void NativeBrowserViewMac::SetBackgroundColor(SkColor color) {
auto* view =
GetInspectableWebContentsView()->GetNativeView().GetNativeNSView();
auto* view = GetInspectableWebContentsView()->GetNativeView();
view.wantsLayer = YES;
view.layer.backgroundColor = skia::CGColorCreateFromSkColor(color);
}
void NativeBrowserViewMac::UpdateDraggableRegions(
const std::vector<gfx::Rect>& drag_exclude_rects) {
NSView* web_view = GetWebContents()->GetNativeView().GetNativeNSView();
NSView* inspectable_view =
GetInspectableWebContentsView()->GetNativeView().GetNativeNSView();
NSView* web_view = GetWebContents()->GetNativeView();
NSView* inspectable_view = GetInspectableWebContentsView()->GetNativeView();
NSView* window_content_view = inspectable_view.superview;
const auto window_content_view_height = NSHeight(window_content_view.bounds);

View File

@@ -347,8 +347,7 @@ NativeWindowMac::NativeWindowMac(const mate::Dictionary& options,
params.type = views::Widget::InitParams::TYPE_WINDOW;
params.native_widget = new AtomNativeWidgetMac(this, styleMask, widget());
widget()->Init(params);
window_ = static_cast<AtomNSWindow*>(
widget()->GetNativeWindow().GetNativeNSWindow());
window_ = static_cast<AtomNSWindow*>(widget()->GetNativeWindow());
[window_ setEnableLargerThanScreen:enable_larger_than_screen()];
@@ -498,7 +497,7 @@ void NativeWindowMac::SetContentView(views::View* view) {
void NativeWindowMac::Close() {
// When this is a sheet showing, performClose won't work.
if (is_modal() && parent() && IsVisible()) {
[parent()->GetNativeWindow().GetNativeNSWindow() endSheet:window_];
[parent()->GetNativeWindow() endSheet:window_];
CloseImmediately();
return;
}
@@ -546,10 +545,9 @@ bool NativeWindowMac::IsFocused() {
void NativeWindowMac::Show() {
if (is_modal() && parent()) {
if ([window_ sheetParent] == nil)
[parent()->GetNativeWindow().GetNativeNSWindow()
beginSheet:window_
completionHandler:^(NSModalResponse){
}];
[parent()->GetNativeWindow() beginSheet:window_
completionHandler:^(NSModalResponse){
}];
return;
}
@@ -575,7 +573,7 @@ void NativeWindowMac::ShowInactive() {
void NativeWindowMac::Hide() {
if (is_modal() && parent()) {
[window_ orderOut:nil];
[parent()->GetNativeWindow().GetNativeNSWindow() endSheet:window_];
[parent()->GetNativeWindow() endSheet:window_];
return;
}
@@ -899,7 +897,7 @@ void NativeWindowMac::FlashFrame(bool flash) {
void NativeWindowMac::SetSkipTaskbar(bool skip) {}
void NativeWindowMac::SetSimpleFullScreen(bool simple_fullscreen) {
NSWindow* window = GetNativeWindow().GetNativeNSWindow();
NSWindow* window = GetNativeWindow();
if (simple_fullscreen && !is_simple_fullscreen_) {
is_simple_fullscreen_ = true;
@@ -1081,8 +1079,7 @@ void NativeWindowMac::AddBrowserView(NativeBrowserView* view) {
}
add_browser_view(view);
auto* native_view =
view->GetInspectableWebContentsView()->GetNativeView().GetNativeNSView();
auto* native_view = view->GetInspectableWebContentsView()->GetNativeView();
[[window_ contentView] addSubview:native_view
positioned:NSWindowAbove
relativeTo:nil];
@@ -1100,8 +1097,7 @@ void NativeWindowMac::RemoveBrowserView(NativeBrowserView* view) {
return;
}
[view->GetInspectableWebContentsView()->GetNativeView().GetNativeNSView()
removeFromSuperview];
[view->GetInspectableWebContentsView()->GetNativeView() removeFromSuperview];
remove_browser_view(view);
[CATransaction commit];
@@ -1216,12 +1212,11 @@ void NativeWindowMac::ToggleTabBar() {
}
bool NativeWindowMac::AddTabbedWindow(NativeWindow* window) {
if (window_ == window->GetNativeWindow().GetNativeNSWindow()) {
if (window_ == window->GetNativeWindow()) {
return false;
} else {
if (@available(macOS 10.12, *))
[window_ addTabbedWindow:window->GetNativeWindow().GetNativeNSWindow()
ordered:NSWindowAbove];
[window_ addTabbedWindow:window->GetNativeWindow() ordered:NSWindowAbove];
}
return true;
}
@@ -1446,8 +1441,7 @@ void NativeWindowMac::InternalSetParentWindow(NativeWindow* parent,
NativeWindow::SetParentWindow(parent);
// Do not remove/add if we are already properly attached.
if (attach && parent &&
[window_ parentWindow] == parent->GetNativeWindow().GetNativeNSWindow())
if (attach && parent && [window_ parentWindow] == parent->GetNativeWindow())
return;
// Remove current parent window.
@@ -1457,9 +1451,7 @@ void NativeWindowMac::InternalSetParentWindow(NativeWindow* parent,
// Set new parent window.
// Note that this method will force the window to become visible.
if (parent && attach)
[parent->GetNativeWindow().GetNativeNSWindow()
addChildWindow:window_
ordered:NSWindowAbove];
[parent->GetNativeWindow() addChildWindow:window_ ordered:NSWindowAbove];
}
void NativeWindowMac::ShowWindowButton(NSWindowButton button) {

View File

@@ -1216,14 +1216,6 @@ void NativeWindowViews::OnWidgetBoundsChanged(views::Widget* changed_widget,
}
}
void NativeWindowViews::OnWidgetDestroying(views::Widget* widget) {
#if defined(OS_LINUX)
aura::Window* window = GetNativeWindow();
if (window)
window->RemovePreTargetHandler(this);
#endif
}
void NativeWindowViews::DeleteDelegate() {
if (is_modal() && this->parent()) {
auto* parent = this->parent();

View File

@@ -161,7 +161,6 @@ class NativeWindowViews : public NativeWindow,
void AutoresizeBrowserView(int width_delta,
int height_delta,
NativeBrowserView* browser_view);
void OnWidgetDestroying(views::Widget* widget) override;
// views::WidgetDelegate:
void DeleteDelegate() override;
views::View* GetInitiallyFocusedView() override;

View File

@@ -419,12 +419,16 @@ bool AtomNetworkDelegate::OnCanAccessFile(
return true;
}
bool AtomNetworkDelegate::OnForcePrivacyMode(
bool AtomNetworkDelegate::OnCanEnablePrivacyMode(
const GURL& url,
const GURL& first_party_for_cookies) const {
return false;
}
bool AtomNetworkDelegate::OnAreExperimentalCookieFeaturesEnabled() const {
return true;
}
bool AtomNetworkDelegate::OnCancelURLRequestWithPolicyViolatingReferrerHeader(
const net::URLRequest& request,
const GURL& target_url,

View File

@@ -127,8 +127,10 @@ class AtomNetworkDelegate : public net::NetworkDelegate {
bool OnCanAccessFile(const net::URLRequest& request,
const base::FilePath& original_path,
const base::FilePath& absolute_path) const override;
bool OnForcePrivacyMode(const GURL& url,
const GURL& first_party_for_cookies) const override;
bool OnCanEnablePrivacyMode(
const GURL& url,
const GURL& first_party_for_cookies) const override;
bool OnAreExperimentalCookieFeaturesEnabled() const override;
bool OnCancelURLRequestWithPolicyViolatingReferrerHeader(
const net::URLRequest& request,
const GURL& target_url,

View File

@@ -107,7 +107,15 @@ class ResourceContext : public content::ResourceContext {
ResourceContext() = default;
~ResourceContext() override = default;
net::URLRequestContext* GetRequestContext() override {
return request_context_;
}
private:
friend class URLRequestContextGetter;
net::URLRequestContext* request_context_ = nullptr;
DISALLOW_COPY_AND_ASSIGN(ResourceContext);
};
@@ -324,6 +332,8 @@ net::URLRequestContext* URLRequestContextGetter::GetURLRequestContext() {
}
top_job_factory_->Chain(std::move(inner_job_factory));
url_request_context_->set_job_factory(top_job_factory_.get());
context_handle_->resource_context_->request_context_ = url_request_context_;
}
return url_request_context_;

View File

@@ -92,9 +92,7 @@ void ShowCertificateTrust(atom::NativeWindow* parent_window,
SecTrustRef trust = nullptr;
SecTrustCreateWithCertificates(cert_chain, sec_policy, &trust);
NSWindow* window = parent_window
? parent_window->GetNativeWindow().GetNativeNSWindow()
: nil;
NSWindow* window = parent_window ? parent_window->GetNativeWindow() : nil;
auto msg = base::SysUTF8ToNSString(message);
auto panel = [[SFCertificateTrustPanel alloc] init];

View File

@@ -43,7 +43,7 @@
} else {
auto* contents = inspectableWebContentsView_->inspectable_web_contents()
->GetWebContents();
auto* contentsView = contents->GetNativeView().GetNativeNSView();
auto contentsView = contents->GetNativeView();
[contentsView setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable];
[self addSubview:contentsView];
}
@@ -79,7 +79,7 @@
inspectableWebContentsView_->inspectable_web_contents();
auto* devToolsWebContents =
inspectable_web_contents->GetDevToolsWebContents();
auto* devToolsView = devToolsWebContents->GetNativeView().GetNativeNSView();
auto devToolsView = devToolsWebContents->GetNativeView();
devtools_visible_ = visible;
if (devtools_docked_) {
@@ -134,7 +134,7 @@
inspectableWebContentsView_->inspectable_web_contents();
auto* devToolsWebContents =
inspectable_web_contents->GetDevToolsWebContents();
auto devToolsView = devToolsWebContents->GetNativeView().GetNativeNSView();
auto devToolsView = devToolsWebContents->GetNativeView();
auto styleMask = NSWindowStyleMaskTitled | NSWindowStyleMaskClosable |
NSMiniaturizableWindowMask | NSWindowStyleMaskResizable |
@@ -203,7 +203,7 @@
if (!inspectable_web_contents || inspectable_web_contents->IsGuest())
return;
auto* webContents = inspectable_web_contents->GetWebContents();
auto* webContentsView = webContents->GetNativeView().GetNativeNSView();
auto webContentsView = webContents->GetNativeView();
NSView* view = [notification object];
if ([[webContentsView subviews] containsObject:view]) {
@@ -215,7 +215,7 @@
inspectable_web_contents->GetDevToolsWebContents();
if (!devToolsWebContents)
return;
auto devToolsView = devToolsWebContents->GetNativeView().GetNativeNSView();
auto devToolsView = devToolsWebContents->GetNativeView();
if ([[devToolsView subviews] containsObject:view]) {
devtools_is_first_responder_ = YES;

View File

@@ -21,7 +21,7 @@ class AtomNativeWidgetMac : public views::NativeWidgetMac {
protected:
// NativeWidgetMac:
NativeWidgetMacNSWindow* CreateNSWindow(
const views_bridge_mac::mojom::CreateWindowParams* params) override;
const views::Widget::InitParams& params) override;
private:
NativeWindowMac* shell_;

View File

@@ -19,7 +19,7 @@ AtomNativeWidgetMac::AtomNativeWidgetMac(
AtomNativeWidgetMac::~AtomNativeWidgetMac() {}
NativeWidgetMacNSWindow* AtomNativeWidgetMac::CreateNSWindow(
const views_bridge_mac::mojom::CreateWindowParams* params) {
const views::Widget::InitParams& params) {
return [[[AtomNSWindow alloc] initWithShell:shell_ styleMask:style_mask_]
autorelease];
}

View File

@@ -9,7 +9,6 @@
#include "atom/browser/ui/cocoa/atom_preview_item.h"
#include "atom/browser/ui/cocoa/atom_touch_bar.h"
#include "base/mac/mac_util.h"
#include "ui/views/cocoa/bridged_native_widget_host_impl.h"
#include "ui/views/widget/native_widget_mac.h"
#include "ui/views_bridge_mac/bridged_native_widget_impl.h"
@@ -22,13 +21,12 @@
// on the fly.
// TODO(zcbenz): Add interface in NativeWidgetMac to allow overriding creating
// window delegate.
auto* bridge_host = views::BridgedNativeWidgetHostImpl::GetFromNativeWindow(
auto* bridged_view = views::BridgedNativeWidgetImpl::GetFromNativeWindow(
shell->GetNativeWindow());
auto* bridged_view = bridge_host->bridge_impl();
if ((self = [super initWithBridgedNativeWidget:bridged_view])) {
shell_ = shell;
is_zooming_ = false;
level_ = [shell_->GetNativeWindow().GetNativeNSWindow() level];
level_ = [shell_->GetNativeWindow() level];
}
return self;
}
@@ -140,7 +138,7 @@
}
- (void)windowWillMiniaturize:(NSNotification*)notification {
NSWindow* window = shell_->GetNativeWindow().GetNativeNSWindow();
NSWindow* window = shell_->GetNativeWindow();
// store the current status window level to be restored in
// windowDidDeminiaturize
level_ = [window level];
@@ -154,7 +152,7 @@
- (void)windowDidDeminiaturize:(NSNotification*)notification {
[super windowDidDeminiaturize:notification];
[shell_->GetNativeWindow().GetNativeNSWindow() setLevel:level_];
[shell_->GetNativeWindow() setLevel:level_];
shell_->NotifyWindowRestore();
}
@@ -181,7 +179,7 @@
// artifacts.
if (@available(macOS 10.10, *)) {
if (shell_->title_bar_style() == atom::NativeWindowMac::HIDDEN_INSET) {
NSWindow* window = shell_->GetNativeWindow().GetNativeNSWindow();
NSWindow* window = shell_->GetNativeWindow();
[window setToolbar:nil];
}
}
@@ -194,7 +192,7 @@
// For frameless window we don't show set title for normal mode since the
// titlebar is expected to be empty, but after entering fullscreen mode we
// have to set one, because title bar is visible here.
NSWindow* window = shell_->GetNativeWindow().GetNativeNSWindow();
NSWindow* window = shell_->GetNativeWindow();
if ((shell_->transparent() || !shell_->has_frame()) &&
// FIXME(zcbenz): Showing titlebar for hiddenInset window is weird under
// fullscreen mode.
@@ -223,7 +221,7 @@
- (void)windowWillExitFullScreen:(NSNotification*)notification {
if (@available(macOS 10.10, *)) {
// Restore the titlebar visibility.
NSWindow* window = shell_->GetNativeWindow().GetNativeNSWindow();
NSWindow* window = shell_->GetNativeWindow();
if ((shell_->transparent() || !shell_->has_frame()) &&
(shell_->title_bar_style() != atom::NativeWindowMac::HIDDEN_INSET ||
shell_->fullscreen_window_title())) {
@@ -249,9 +247,8 @@
// Clears the delegate when window is going to be closed, since EL Capitan it
// is possible that the methods of delegate would get called after the window
// has been closed.
auto* bridge_host = views::BridgedNativeWidgetHostImpl::GetFromNativeWindow(
auto* bridged_view = views::BridgedNativeWidgetImpl::GetFromNativeWindow(
shell_->GetNativeWindow());
auto* bridged_view = bridge_host->bridge_impl();
bridged_view->OnWindowWillClose();
}

View File

@@ -33,27 +33,26 @@ void DragFileItems(const std::vector<base::FilePath>& files,
// Synthesize a drag event, since we don't have access to the actual event
// that initiated a drag (possibly consumed by the Web UI, for example).
NSWindow* window = [view.GetNativeNSView() window];
NSPoint position = [window mouseLocationOutsideOfEventStream];
NSPoint position = [[view window] mouseLocationOutsideOfEventStream];
NSTimeInterval eventTime = [[NSApp currentEvent] timestamp];
NSEvent* dragEvent = [NSEvent mouseEventWithType:NSLeftMouseDragged
location:position
modifierFlags:NSLeftMouseDraggedMask
timestamp:eventTime
windowNumber:[window windowNumber]
windowNumber:[[view window] windowNumber]
context:nil
eventNumber:0
clickCount:1
pressure:1.0];
// Run the drag operation.
[window dragImage:icon.ToNSImage()
at:position
offset:NSZeroSize
event:dragEvent
pasteboard:pasteboard
source:view.GetNativeNSView()
slideBack:YES];
[[view window] dragImage:icon.ToNSImage()
at:position
offset:NSZeroSize
event:dragEvent
pasteboard:pasteboard
source:view
slideBack:YES];
}
} // namespace atom

View File

@@ -210,8 +210,7 @@ int RunModalDialog(NSSavePanel* dialog, const DialogSettings& settings) {
settings.force_detached) {
chosen = [dialog runModal];
} else {
NSWindow* window =
settings.parent_window->GetNativeWindow().GetNativeNSWindow();
NSWindow* window = settings.parent_window->GetNativeWindow();
[dialog beginSheetModalForWindow:window
completionHandler:^(NSInteger c) {
@@ -329,8 +328,7 @@ void ShowOpenDialog(const DialogSettings& settings,
OpenDialogCompletion(chosen, dialog, settings, callback);
}];
} else {
NSWindow* window =
settings.parent_window->GetNativeWindow().GetNativeNSWindow();
NSWindow* window = settings.parent_window->GetNativeWindow();
[dialog beginSheetModalForWindow:window
completionHandler:^(NSInteger chosen) {
OpenDialogCompletion(chosen, dialog, settings, callback);
@@ -391,8 +389,7 @@ void ShowSaveDialog(const DialogSettings& settings,
SaveDialogCompletion(chosen, dialog, settings, callback);
}];
} else {
NSWindow* window =
settings.parent_window->GetNativeWindow().GetNativeNSWindow();
NSWindow* window = settings.parent_window->GetNativeWindow();
[dialog beginSheetModalForWindow:window
completionHandler:^(NSInteger chosen) {
SaveDialogCompletion(chosen, dialog, settings, callback);

View File

@@ -779,11 +779,12 @@ bool InspectableWebContentsImpl::ShouldCreateWebContents(
return false;
}
bool InspectableWebContentsImpl::HandleKeyboardEvent(
void InspectableWebContentsImpl::HandleKeyboardEvent(
content::WebContents* source,
const content::NativeWebKeyboardEvent& event) {
auto* delegate = web_contents_->GetDelegate();
return !delegate || delegate->HandleKeyboardEvent(source, event);
if (delegate)
delegate->HandleKeyboardEvent(source, event);
}
void InspectableWebContentsImpl::CloseContents(content::WebContents* source) {

View File

@@ -182,7 +182,7 @@ class InspectableWebContentsImpl
const GURL& target_url,
const std::string& partition_id,
content::SessionStorageNamespace* session_storage_namespace) override;
bool HandleKeyboardEvent(content::WebContents*,
void HandleKeyboardEvent(content::WebContents*,
const content::NativeWebKeyboardEvent&) override;
void CloseContents(content::WebContents* source) override;
content::ColorChooser* OpenColorChooser(

View File

@@ -156,7 +156,7 @@ int ShowMessageBox(NativeWindow* parent_window,
andAlert:alert
callEndModal:true];
NSWindow* window = parent_window->GetNativeWindow().GetNativeNSWindow();
NSWindow* window = parent_window->GetNativeWindow();
[alert beginSheetModalForWindow:window
modalDelegate:delegate
didEndSelector:@selector(alertDidEnd:returnCode:contextInfo:)
@@ -193,9 +193,7 @@ void ShowMessageBox(NativeWindow* parent_window,
andAlert:alert
callEndModal:false];
NSWindow* window =
parent_window ? parent_window->GetNativeWindow().GetNativeNSWindow()
: nil;
NSWindow* window = parent_window ? parent_window->GetNativeWindow() : nil;
[alert
beginSheetModalForWindow:window
modalDelegate:delegate

View File

@@ -47,6 +47,9 @@ bool ViewsDelegate::GetSavedWindowPlacement(
return false;
}
void ViewsDelegate::NotifyAccessibilityEvent(views::View* view,
ax::mojom::Event event_type) {}
void ViewsDelegate::NotifyMenuItemFocused(const base::string16& menu_name,
const base::string16& menu_item_name,
int item_index,

View File

@@ -27,6 +27,8 @@ class ViewsDelegate : public views::ViewsDelegate {
const std::string& window_name,
gfx::Rect* bounds,
ui::WindowShowState* show_state) const override;
void NotifyAccessibilityEvent(views::View* view,
ax::mojom::Event event_type) override;
void NotifyMenuItemFocused(const base::string16& menu_name,
const base::string16& menu_item_name,
int item_index,

View File

@@ -23,7 +23,8 @@ SubmenuButton::SubmenuButton(const base::string16& title,
views::MenuButtonListener* menu_button_listener,
const SkColor& background_color)
: views::MenuButton(gfx::RemoveAcceleratorChar(title, '&', NULL, NULL),
menu_button_listener),
menu_button_listener,
false),
background_color_(background_color) {
#if defined(OS_LINUX)
// Dont' use native style border.
@@ -71,7 +72,7 @@ void SubmenuButton::SetUnderlineColor(SkColor color) {
}
void SubmenuButton::GetAccessibleNodeData(ui::AXNodeData* node_data) {
node_data->SetName(GetAccessibleName());
node_data->SetName(accessible_name());
node_data->role = ax::mojom::Role::kPopUpButton;
}

View File

@@ -73,29 +73,6 @@ bool GetAsInteger(const base::Value* val,
return false;
}
bool GetAsAutoplayPolicy(const base::Value* val,
const base::StringPiece& path,
content::AutoplayPolicy* out) {
std::string policy_str;
if (GetAsString(val, path, &policy_str)) {
if (policy_str == "no-user-gesture-required") {
*out = content::AutoplayPolicy::kNoUserGestureRequired;
return true;
} else if (policy_str == "user-gesture-required") {
*out = content::AutoplayPolicy::kUserGestureRequired;
return true;
} else if (policy_str == "user-gesture-required-for-cross-origin") {
*out = content::AutoplayPolicy::kUserGestureRequiredForCrossOrigin;
return true;
} else if (policy_str == "document-user-activation-required") {
*out = content::AutoplayPolicy::kDocumentUserActivationRequired;
return true;
}
return false;
}
return false;
}
} // namespace
namespace atom {
@@ -387,10 +364,6 @@ void WebContentsPreferences::OverrideWebkitPrefs(
IsEnabled("textAreasAreResizable", true /* default_value */);
prefs->navigate_on_drag_drop =
IsEnabled("navigateOnDragDrop", false /* default_value */);
if (!GetAsAutoplayPolicy(&preference_, "autoplayPolicy",
&prefs->autoplay_policy)) {
prefs->autoplay_policy = content::AutoplayPolicy::kNoUserGestureRequired;
}
// Check if webgl should be enabled.
bool is_webgl_enabled = IsEnabled("webgl", true /* default_value */);

View File

@@ -105,7 +105,7 @@ class FileSelectHelper : public base::RefCounted<FileSelectHelper>,
void OnFilesSelected(std::vector<FileChooserFileInfoPtr> file_info) {
if (listener_) {
listener_->FileSelected(std::move(file_info), base::FilePath(), mode_);
listener_->FileSelected(std::move(file_info), mode_);
listener_.reset();
}
render_frame_host_ = nullptr;
@@ -265,7 +265,7 @@ void WebDialogHelper::EnumerateDirectory(
blink::mojom::NativeFileInfo::New(path, base::string16())));
}
listener->FileSelected(std::move(file_info), dir,
listener->FileSelected(std::move(file_info),
FileChooserParams::Mode::kUploadFolder);
}

View File

@@ -38,13 +38,11 @@ void WebViewGuestDelegate::AttachToIframe(
DCHECK_EQ(embedder_web_contents_,
content::WebContents::FromRenderFrameHost(embedder_frame));
content::WebContents* guest_web_contents = api_web_contents_->web_contents();
// Attach this inner WebContents |guest_web_contents| to the outer
// WebContents |embedder_web_contents|. The outer WebContents's
// frame |embedder_frame| hosts the inner WebContents.
guest_web_contents->AttachToOuterWebContentsFrame(
base::WrapUnique<content::WebContents>(guest_web_contents),
embedder_frame);
api_web_contents_->web_contents()->AttachToOuterWebContentsFrame(
embedder_web_contents_, embedder_frame);
ResetZoomController();

View File

@@ -52,7 +52,7 @@ mate::Handle<NativeImage> NativeImage::CreateFromNamedImage(
png_data = bufferFromNSImage(
gfx::Image(gfx::ImageSkiaOperations::CreateHSLShiftedImage(
gfx_image.AsImageSkia(), shift))
.AsNSImage());
.CopyNSImage());
}
return CreateFromPNG(args->isolate(), (char*)[png_data bytes],

View File

@@ -19,10 +19,10 @@
#include "atom/common/native_mate_converters/string16_converter.h"
#include "atom/common/promise_util.h"
#include "base/logging.h"
#include "base/process/process.h"
#include "base/process/process_handle.h"
#include "base/process/process_info.h"
#include "base/process/process_metrics_iocounters.h"
#include "base/system/sys_info.h"
#include "base/sys_info.h"
#include "base/threading/thread_restrictions.h"
#include "chrome/common/chrome_version.h"
#include "native_mate/dictionary.h"
@@ -189,7 +189,7 @@ v8::Local<v8::Value> AtomBindings::GetHeapStatistics(v8::Isolate* isolate) {
// static
v8::Local<v8::Value> AtomBindings::GetCreationTime(v8::Isolate* isolate) {
auto timeValue = base::Process::Current().CreationTime();
auto timeValue = base::CurrentProcessInfo::CreationTime();
if (timeValue.is_null()) {
return v8::Null(isolate);
}

View File

@@ -25,7 +25,7 @@ v8::Local<v8::Function> CreateConstructor(v8::Isolate* isolate,
isolate, base::Bind(&mate::internal::InvokeNew<Sig>, func));
templ->InstanceTemplate()->SetInternalFieldCount(1);
T::BuildPrototype(isolate, templ);
return templ->GetFunction(isolate->GetCurrentContext()).ToLocalChecked();
return templ->GetFunction();
}
} // namespace mate

View File

@@ -9,7 +9,13 @@
// Generate constructors.
#include "ipc/struct_constructor_macros.h"
// lint: must come after struct_constructor_macros.
// must go after struct_contructor_macros
#include "atom/common/common_message_generator.h"
// Generate destructors.
#include "ipc/struct_destructor_macros.h"
// must go after struct_destructor_macros
#include "atom/common/common_message_generator.h"
// Generate param traits write methods.
@@ -28,4 +34,4 @@ namespace IPC {
#include "ipc/param_traits_log_macros.h"
namespace IPC {
#include "atom/common/common_message_generator.h"
} // namespace IPC
} // namespace IPC

View File

@@ -473,26 +473,25 @@ v8::Local<v8::Value> Converter<blink::WebCache::ResourceTypeStats>::ToV8(
}
// static
v8::Local<v8::Value> Converter<network::mojom::ReferrerPolicy>::ToV8(
v8::Local<v8::Value> Converter<blink::WebReferrerPolicy>::ToV8(
v8::Isolate* isolate,
const network::mojom::ReferrerPolicy& in) {
const blink::WebReferrerPolicy& in) {
switch (in) {
case network::mojom::ReferrerPolicy::kDefault:
case blink::kWebReferrerPolicyDefault:
return mate::StringToV8(isolate, "default");
case network::mojom::ReferrerPolicy::kAlways:
case blink::kWebReferrerPolicyAlways:
return mate::StringToV8(isolate, "unsafe-url");
case network::mojom::ReferrerPolicy::kNoReferrerWhenDowngrade:
case blink::kWebReferrerPolicyNoReferrerWhenDowngrade:
return mate::StringToV8(isolate, "no-referrer-when-downgrade");
case network::mojom::ReferrerPolicy::kNever:
case blink::kWebReferrerPolicyNever:
return mate::StringToV8(isolate, "no-referrer");
case network::mojom::ReferrerPolicy::kOrigin:
case blink::kWebReferrerPolicyOrigin:
return mate::StringToV8(isolate, "origin");
case network::mojom::ReferrerPolicy::
kNoReferrerWhenDowngradeOriginWhenCrossOrigin:
case blink::kWebReferrerPolicyNoReferrerWhenDowngradeOriginWhenCrossOrigin:
return mate::StringToV8(isolate, "strict-origin-when-cross-origin");
case network::mojom::ReferrerPolicy::kSameOrigin:
case blink::kWebReferrerPolicySameOrigin:
return mate::StringToV8(isolate, "same-origin");
case network::mojom::ReferrerPolicy::kStrictOrigin:
case blink::kWebReferrerPolicyStrictOrigin:
return mate::StringToV8(isolate, "strict-origin");
default:
return mate::StringToV8(isolate, "no-referrer");
@@ -500,28 +499,28 @@ v8::Local<v8::Value> Converter<network::mojom::ReferrerPolicy>::ToV8(
}
// static
bool Converter<network::mojom::ReferrerPolicy>::FromV8(
bool Converter<blink::WebReferrerPolicy>::FromV8(
v8::Isolate* isolate,
v8::Handle<v8::Value> val,
network::mojom::ReferrerPolicy* out) {
blink::WebReferrerPolicy* out) {
std::string policy = base::ToLowerASCII(gin::V8ToString(isolate, val));
if (policy == "default")
*out = network::mojom::ReferrerPolicy::kDefault;
*out = blink::kWebReferrerPolicyDefault;
else if (policy == "unsafe-url")
*out = network::mojom::ReferrerPolicy::kAlways;
*out = blink::kWebReferrerPolicyAlways;
else if (policy == "no-referrer-when-downgrade")
*out = network::mojom::ReferrerPolicy::kNoReferrerWhenDowngrade;
*out = blink::kWebReferrerPolicyNoReferrerWhenDowngrade;
else if (policy == "no-referrer")
*out = network::mojom::ReferrerPolicy::kNever;
*out = blink::kWebReferrerPolicyNever;
else if (policy == "origin")
*out = network::mojom::ReferrerPolicy::kOrigin;
*out = blink::kWebReferrerPolicyOrigin;
else if (policy == "strict-origin-when-cross-origin")
*out = network::mojom::ReferrerPolicy::
kNoReferrerWhenDowngradeOriginWhenCrossOrigin;
*out =
blink::kWebReferrerPolicyNoReferrerWhenDowngradeOriginWhenCrossOrigin;
else if (policy == "same-origin")
*out = network::mojom::ReferrerPolicy::kSameOrigin;
*out = blink::kWebReferrerPolicySameOrigin;
else if (policy == "strict-origin")
*out = network::mojom::ReferrerPolicy::kStrictOrigin;
*out = blink::kWebReferrerPolicyStrictOrigin;
else
return false;
return true;

View File

@@ -123,12 +123,12 @@ struct Converter<blink::WebCache::ResourceTypeStats> {
};
template <>
struct Converter<network::mojom::ReferrerPolicy> {
struct Converter<blink::WebReferrerPolicy> {
static v8::Local<v8::Value> ToV8(v8::Isolate* isolate,
const network::mojom::ReferrerPolicy& in);
const blink::WebReferrerPolicy& in);
static bool FromV8(v8::Isolate* isolate,
v8::Local<v8::Value> val,
network::mojom::ReferrerPolicy* out);
blink::WebReferrerPolicy* out);
};
v8::Local<v8::Value> EditFlagsToV8(v8::Isolate* isolate, int editFlags);

View File

@@ -43,19 +43,16 @@ void CallTranslater(v8::Local<v8::External> external,
mate::Arguments* args) {
// Whether the callback should only be called for once.
v8::Isolate* isolate = args->isolate();
auto context = isolate->GetCurrentContext();
bool one_time =
state->Has(context, mate::StringToSymbol(isolate, "oneTime")).ToChecked();
bool one_time = state->Has(mate::StringToSymbol(isolate, "oneTime"));
// Check if the callback has already been called.
if (one_time) {
auto called_symbol = mate::StringToSymbol(isolate, "called");
if (state->Has(context, called_symbol).ToChecked()) {
if (state->Has(called_symbol)) {
args->ThrowError("callback can only be called for once");
return;
} else {
state->Set(context, called_symbol, v8::Boolean::New(isolate, true))
.ToChecked();
state->Set(called_symbol, v8::Boolean::New(isolate, true));
}
}
@@ -133,10 +130,9 @@ v8::Local<v8::Value> CreateFunctionFromTranslater(v8::Isolate* isolate,
Dictionary state = mate::Dictionary::CreateEmpty(isolate);
if (one_time)
state.Set("oneTime", true);
auto context = isolate->GetCurrentContext();
return BindFunctionWith(
isolate, context, call_translater->GetFunction(context).ToLocalChecked(),
holder->handle.Get(isolate), state.GetHandle());
return BindFunctionWith(isolate, isolate->GetCurrentContext(),
call_translater->GetFunction(),
holder->handle.Get(isolate), state.GetHandle());
}
// func.bind(func, arg1).

View File

@@ -55,10 +55,8 @@ struct V8FunctionInvoker<v8::Local<v8::Value>(ArgTypes...)> {
v8::Local<v8::Context> context = holder->CreationContext();
v8::Context::Scope context_scope(context);
std::vector<v8::Local<v8::Value>> args{ConvertToV8(isolate, raw)...};
v8::Local<v8::Value> ret(holder
->Call(context, holder, args.size(),
args.empty() ? nullptr : &args.front())
.ToLocalChecked());
v8::Local<v8::Value> ret(holder->Call(
holder, args.size(), args.empty() ? nullptr : &args.front()));
return handle_scope.Escape(ret);
}
};
@@ -78,10 +76,7 @@ struct V8FunctionInvoker<void(ArgTypes...)> {
v8::Local<v8::Context> context = holder->CreationContext();
v8::Context::Scope context_scope(context);
std::vector<v8::Local<v8::Value>> args{ConvertToV8(isolate, raw)...};
holder
->Call(context, holder, args.size(),
args.empty() ? nullptr : &args.front())
.ToLocalChecked();
holder->Call(holder, args.size(), args.empty() ? nullptr : &args.front());
}
};

View File

@@ -331,9 +331,8 @@ base::Value* V8ValueConverter::FromV8ValueImpl(FromV8ValueState* state,
v8::Local<v8::Value> toISOString =
date->Get(v8::String::NewFromUtf8(isolate, "toISOString"));
if (toISOString->IsFunction()) {
v8::Local<v8::Value> result = toISOString.As<v8::Function>()
->Call(context, val, 0, nullptr)
.ToLocalChecked();
v8::Local<v8::Value> result =
toISOString.As<v8::Function>()->Call(val, 0, nullptr);
if (!result.IsEmpty()) {
v8::String::Utf8Value utf8(isolate,
result->ToString(context).ToLocalChecked());

View File

@@ -7,7 +7,7 @@
#include <windows.h>
#include "base/logging.h"
#include "base/system/sys_info.h"
#include "base/sys_info.h"
namespace atom {

View File

@@ -211,11 +211,10 @@ void SpellCheckClient::SpellCheckWords(
v8::Local<v8::FunctionTemplate> templ = mate::CreateFunctionTemplate(
isolate_, base::Bind(&SpellCheckClient::OnSpellCheckDone, AsWeakPtr()));
auto context = isolate_->GetCurrentContext();
v8::Local<v8::Value> args[] = {mate::ConvertToV8(isolate_, words),
templ->GetFunction(context).ToLocalChecked()};
templ->GetFunction()};
// Call javascript with the words and the callback function
scope.spell_check_->Call(context, scope.provider_, 2, args).ToLocalChecked();
scope.spell_check_->Call(scope.provider_, 2, args);
}
// Returns whether or not the given string is a contraction.

View File

@@ -222,9 +222,7 @@ int WebFrame::GetWebFrameId(v8::Local<v8::Value> content_window) {
void WebFrame::SetSpellCheckProvider(mate::Arguments* args,
const std::string& language,
v8::Local<v8::Object> provider) {
auto context = args->isolate()->GetCurrentContext();
if (!provider->Has(context, mate::StringToV8(args->isolate(), "spellCheck"))
.ToChecked()) {
if (!provider->Has(mate::StringToV8(args->isolate(), "spellCheck"))) {
args->ThrowError("\"spellCheck\" has to be defined");
return;
}
@@ -284,7 +282,7 @@ void WebFrame::RegisterURLSchemeAsPrivileged(const std::string& scheme,
privileged_scheme);
}
if (corsEnabled) {
url::AddCorsEnabledScheme(scheme.c_str());
url::AddCORSEnabledScheme(scheme.c_str());
}
}
@@ -543,9 +541,7 @@ void Initialize(v8::Local<v8::Object> exports,
v8::Isolate* isolate = context->GetIsolate();
mate::Dictionary dict(isolate, exports);
dict.Set("webFrame", WebFrame::Create(isolate));
dict.Set(
"WebFrame",
WebFrame::GetConstructor(isolate)->GetFunction(context).ToLocalChecked());
dict.Set("WebFrame", WebFrame::GetConstructor(isolate)->GetFunction());
}
} // namespace

View File

@@ -45,6 +45,7 @@ bool ContentSettingsObserver::AllowStorage(bool local) {
}
bool ContentSettingsObserver::AllowIndexedDB(
const blink::WebString& name,
const blink::WebSecurityOrigin& security_origin) {
blink::WebFrame* frame = render_frame()->GetWebFrame();
if (frame->GetSecurityOrigin().IsUnique() ||

View File

@@ -22,7 +22,8 @@ class ContentSettingsObserver : public content::RenderFrameObserver,
const blink::WebString& display_name,
unsigned estimated_size) override;
bool AllowStorage(bool local) override;
bool AllowIndexedDB(const blink::WebSecurityOrigin& security_origin) override;
bool AllowIndexedDB(const blink::WebString& name,
const blink::WebSecurityOrigin& security_origin) override;
private:
// content::RenderFrameObserver implementation.

View File

@@ -4,6 +4,7 @@
#include "atom/utility/atom_content_utility_client.h"
#include <string>
#include <utility>
#include "base/command_line.h"
@@ -94,6 +95,11 @@ void AtomContentUtilityClient::RegisterServices(StaticServiceMap* services) {
proxy_resolver_info);
#if BUILDFLAG(ENABLE_PRINTING)
service_manager::EmbeddedServiceInfo pdf_compositor_info;
pdf_compositor_info.factory =
base::BindRepeating(&printing::CreatePdfCompositorService, std::string());
services->emplace(printing::mojom::kServiceName, pdf_compositor_info);
service_manager::EmbeddedServiceInfo printing_info;
printing_info.factory =
base::BindRepeating(&printing::PrintingService::CreateService);
@@ -101,18 +107,4 @@ void AtomContentUtilityClient::RegisterServices(StaticServiceMap* services) {
#endif
}
std::unique_ptr<service_manager::Service>
AtomContentUtilityClient::HandleServiceRequest(
const std::string& service_name,
service_manager::mojom::ServiceRequest request) {
#if BUILDFLAG(ENABLE_PRINTING)
if (service_name == printing::mojom::kServiceName) {
return printing::CreatePdfCompositorService(std::string(),
std::move(request));
}
#endif
return nullptr;
}
} // namespace atom

View File

@@ -6,7 +6,6 @@
#define ATOM_UTILITY_ATOM_CONTENT_UTILITY_CLIENT_H_
#include <memory>
#include <string>
#include <vector>
#include "base/compiler_specific.h"
@@ -28,10 +27,6 @@ class AtomContentUtilityClient : public content::ContentUtilityClient {
bool OnMessageReceived(const IPC::Message& message) override;
void RegisterServices(StaticServiceMap* services) override;
std::unique_ptr<service_manager::Service> HandleServiceRequest(
const std::string& service_name,
service_manager::mojom::ServiceRequest request) override;
private:
#if BUILDFLAG(ENABLE_PRINTING) && defined(OS_WIN)
std::unique_ptr<printing::PrintingHandler> printing_handler_;