Merge pull request #17088 from electron/chromium-upgrade/74
feat: upgrade to Chromium 74.0.3724.8
This commit is contained in:
commit
699ef08e84
121 changed files with 637 additions and 1164 deletions
|
@ -513,10 +513,9 @@ steps-lint: &steps-lint
|
|||
name: Download GN Binary
|
||||
command: |
|
||||
chromium_revision="$(grep -A1 chromium_version src/electron/DEPS | tr -d '\n' | cut -d\' -f4)"
|
||||
buildtools_revision="$(curl -sL "https://chromium.googlesource.com/chromium/src/+/${chromium_revision}/DEPS?format=TEXT" | base64 -d | grep buildtools_revision -A1 | tr -d '\n' | cut -d\' -f4)"
|
||||
|
||||
git clone https://chromium.googlesource.com/chromium/buildtools "buildtools"
|
||||
(cd "buildtools" && git checkout "$buildtools_revision")
|
||||
mkdir -p "buildtools/linux64"
|
||||
curl -sL "https://chromium.googlesource.com/chromium/src/+/${chromium_revision}/buildtools/linux64/gn.sha1?format=TEXT" | base64 -d > "buildtools/linux64/gn.sha1"
|
||||
echo 'export CHROMIUM_BUILDTOOLS_PATH="'"$PWD"'/buildtools"' >> $BASH_ENV
|
||||
|
||||
download_from_google_storage --bucket chromium-gn -s "buildtools/linux64/gn.sha1"
|
||||
|
|
2
DEPS
2
DEPS
|
@ -10,7 +10,7 @@ gclient_gn_args = [
|
|||
|
||||
vars = {
|
||||
'chromium_version':
|
||||
'73.0.3683.68',
|
||||
'74.0.3724.8',
|
||||
'node_version':
|
||||
'5e32b02e3c180c9997d60fe85042d335b6d9a588',
|
||||
|
||||
|
|
|
@ -79,6 +79,8 @@ build_script:
|
|||
appveyor PushArtifact out/Default/symbols.zip
|
||||
}
|
||||
test_script:
|
||||
# Workaround for https://github.com/appveyor/ci/issues/2420
|
||||
- set "PATH=%PATH%;C:\Program Files\Git\mingw64\libexec\git-core"
|
||||
- ps: >-
|
||||
if ((-Not (Test-Path Env:\ELECTRON_RELEASE)) -And ($env:GN_CONFIG -in "testing", "release")) {
|
||||
$env:RUN_TESTS="true"
|
||||
|
|
|
@ -6,15 +6,15 @@
|
|||
|
||||
#include "base/no_destructor.h"
|
||||
#include "printing/buildflags/buildflags.h"
|
||||
#include "services/proxy_resolver/proxy_resolver_manifest.h"
|
||||
#include "services/proxy_resolver/public/cpp/manifest.h"
|
||||
#include "services/service_manager/public/cpp/manifest_builder.h"
|
||||
|
||||
#if BUILDFLAG(ENABLE_PRINTING)
|
||||
#include "components/services/pdf_compositor/pdf_compositor_manifest.h"
|
||||
#include "components/services/pdf_compositor/public/cpp/manifest.h"
|
||||
#endif
|
||||
|
||||
#if BUILDFLAG(ENABLE_PRINT_PREVIEW)
|
||||
#include "chrome/services/printing/manifest.h"
|
||||
#include "chrome/services/printing/public/cpp/manifest.h"
|
||||
#endif
|
||||
|
||||
const service_manager::Manifest& GetElectronContentBrowserOverlayManifest() {
|
||||
|
@ -34,10 +34,10 @@ GetElectronPackagedServicesOverlayManifest() {
|
|||
static base::NoDestructor<std::vector<service_manager::Manifest>> manifests{{
|
||||
proxy_resolver::GetManifest(),
|
||||
#if BUILDFLAG(ENABLE_PRINTING)
|
||||
pdf_compositor::GetManifest(),
|
||||
printing::GetPdfCompositorManifest(),
|
||||
#endif
|
||||
#if BUILDFLAG(ENABLE_PRINT_PREVIEW)
|
||||
chrome_printing::GetManifest(),
|
||||
GetChromePrintingManifest(),
|
||||
#endif
|
||||
}};
|
||||
return *manifests;
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
#include "atom/common/native_mate_converters/callback.h"
|
||||
#include "atom/common/promise_util.h"
|
||||
#include "base/process/process_iterator.h"
|
||||
#include "base/process/process_metrics.h"
|
||||
#include "base/task/cancelable_task_tracker.h"
|
||||
#include "chrome/browser/icon_manager.h"
|
||||
#include "chrome/browser/process_singleton.h"
|
||||
|
|
|
@ -139,7 +139,8 @@ inline net::CookieStore* GetCookieStore(
|
|||
// Remove cookies from |list| not matching |filter|, and pass it to |callback|.
|
||||
void FilterCookies(std::unique_ptr<base::DictionaryValue> filter,
|
||||
util::Promise promise,
|
||||
const net::CookieList& list) {
|
||||
const net::CookieList& list,
|
||||
const net::CookieStatusList& excluded_list) {
|
||||
net::CookieList result;
|
||||
for (const auto& cookie : list) {
|
||||
if (MatchesCookie(filter.get(), cookie))
|
||||
|
@ -175,14 +176,50 @@ void RemoveCookieOnIO(scoped_refptr<net::URLRequestContextGetter> getter,
|
|||
const GURL& url,
|
||||
const std::string& name,
|
||||
util::Promise promise) {
|
||||
GetCookieStore(getter)->DeleteCookieAsync(
|
||||
url, name,
|
||||
base::BindOnce(util::Promise::ResolveEmptyPromise, std::move(promise)));
|
||||
net::CookieDeletionInfo cookie_info;
|
||||
cookie_info.url = url;
|
||||
cookie_info.name = name;
|
||||
GetCookieStore(getter)->DeleteAllMatchingInfoAsync(
|
||||
std::move(cookie_info),
|
||||
base::BindOnce(
|
||||
[](util::Promise promise, uint32_t num_deleted) {
|
||||
util::Promise::ResolveEmptyPromise(std::move(promise));
|
||||
},
|
||||
std::move(promise)));
|
||||
}
|
||||
|
||||
// Callback of SetCookie.
|
||||
void OnSetCookie(util::Promise promise, bool success) {
|
||||
if (success) {
|
||||
void OnSetCookie(util::Promise promise,
|
||||
net::CanonicalCookie::CookieInclusionStatus status) {
|
||||
std::string errmsg;
|
||||
switch (status) {
|
||||
case net::CanonicalCookie::CookieInclusionStatus::EXCLUDE_HTTP_ONLY:
|
||||
errmsg = "Failed to create httponly cookie";
|
||||
break;
|
||||
case net::CanonicalCookie::CookieInclusionStatus::EXCLUDE_SECURE_ONLY:
|
||||
errmsg = "Cannot create a secure cookie from an insecure URL";
|
||||
break;
|
||||
case net::CanonicalCookie::CookieInclusionStatus::EXCLUDE_FAILURE_TO_STORE:
|
||||
errmsg = "Failed to parse cookie";
|
||||
break;
|
||||
case net::CanonicalCookie::CookieInclusionStatus::EXCLUDE_INVALID_DOMAIN:
|
||||
errmsg = "Failed to get cookie domain";
|
||||
break;
|
||||
case net::CanonicalCookie::CookieInclusionStatus::EXCLUDE_INVALID_PREFIX:
|
||||
errmsg = "Failed because the cookie violated prefix rules.";
|
||||
break;
|
||||
case net::CanonicalCookie::CookieInclusionStatus::
|
||||
EXCLUDE_NONCOOKIEABLE_SCHEME:
|
||||
errmsg = "Cannot set cookie for current scheme";
|
||||
break;
|
||||
case net::CanonicalCookie::CookieInclusionStatus::INCLUDE:
|
||||
errmsg = "";
|
||||
break;
|
||||
default:
|
||||
errmsg = "Setting cookie failed";
|
||||
break;
|
||||
}
|
||||
if (errmsg.empty()) {
|
||||
base::PostTaskWithTraits(
|
||||
FROM_HERE, {BrowserThread::UI},
|
||||
base::BindOnce(util::Promise::ResolveEmptyPromise, std::move(promise)));
|
||||
|
@ -190,7 +227,7 @@ void OnSetCookie(util::Promise promise, bool success) {
|
|||
base::PostTaskWithTraits(
|
||||
FROM_HERE, {BrowserThread::UI},
|
||||
base::BindOnce(util::Promise::RejectPromise, std::move(promise),
|
||||
"Setting cookie failed"));
|
||||
std::move(errmsg)));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -206,13 +243,13 @@ void FlushCookieStoreOnIOThread(
|
|||
void SetCookieOnIO(scoped_refptr<net::URLRequestContextGetter> getter,
|
||||
std::unique_ptr<base::DictionaryValue> details,
|
||||
util::Promise promise) {
|
||||
std::string url, name, value, domain, path;
|
||||
std::string url_string, name, value, domain, path;
|
||||
bool secure = false;
|
||||
bool http_only = false;
|
||||
double creation_date;
|
||||
double expiration_date;
|
||||
double last_access_date;
|
||||
details->GetString("url", &url);
|
||||
details->GetString("url", &url_string);
|
||||
details->GetString("name", &name);
|
||||
details->GetString("value", &value);
|
||||
details->GetString("domain", &domain);
|
||||
|
@ -241,26 +278,33 @@ void SetCookieOnIO(scoped_refptr<net::URLRequestContextGetter> getter,
|
|||
: base::Time::FromDoubleT(last_access_date);
|
||||
}
|
||||
|
||||
GURL url(url_string);
|
||||
std::unique_ptr<net::CanonicalCookie> canonical_cookie(
|
||||
net::CanonicalCookie::CreateSanitizedCookie(
|
||||
GURL(url), name, value, domain, path, creation_time, expiration_time,
|
||||
url, name, value, domain, path, creation_time, expiration_time,
|
||||
last_access_time, secure, http_only,
|
||||
net::CookieSameSite::DEFAULT_MODE, net::COOKIE_PRIORITY_DEFAULT));
|
||||
auto completion_callback = base::BindOnce(OnSetCookie, std::move(promise));
|
||||
if (!canonical_cookie || !canonical_cookie->IsCanonical()) {
|
||||
std::move(completion_callback).Run(false);
|
||||
std::move(completion_callback)
|
||||
.Run(net::CanonicalCookie::CookieInclusionStatus::
|
||||
EXCLUDE_FAILURE_TO_STORE);
|
||||
return;
|
||||
}
|
||||
if (url.empty()) {
|
||||
std::move(completion_callback).Run(false);
|
||||
if (url.is_empty()) {
|
||||
std::move(completion_callback)
|
||||
.Run(net::CanonicalCookie::CookieInclusionStatus::
|
||||
EXCLUDE_INVALID_DOMAIN);
|
||||
return;
|
||||
}
|
||||
if (name.empty()) {
|
||||
std::move(completion_callback).Run(false);
|
||||
std::move(completion_callback)
|
||||
.Run(net::CanonicalCookie::CookieInclusionStatus::
|
||||
EXCLUDE_FAILURE_TO_STORE);
|
||||
return;
|
||||
}
|
||||
GetCookieStore(getter)->SetCanonicalCookieAsync(
|
||||
std::move(canonical_cookie), secure, http_only,
|
||||
std::move(canonical_cookie), url.scheme(), http_only,
|
||||
std::move(completion_callback));
|
||||
}
|
||||
|
||||
|
|
|
@ -45,7 +45,8 @@ void Debugger::DispatchProtocolMessage(DevToolsAgentHost* agent_host,
|
|||
v8::Locker locker(isolate());
|
||||
v8::HandleScope handle_scope(isolate());
|
||||
|
||||
std::unique_ptr<base::Value> parsed_message = base::JSONReader::Read(message);
|
||||
std::unique_ptr<base::Value> parsed_message =
|
||||
base::JSONReader::ReadDeprecated(message);
|
||||
if (!parsed_message || !parsed_message->is_dict())
|
||||
return;
|
||||
base::DictionaryValue* dict =
|
||||
|
@ -205,4 +206,4 @@ void Initialize(v8::Local<v8::Object> exports,
|
|||
|
||||
} // namespace
|
||||
|
||||
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_debugger, Initialize);
|
||||
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_debugger, Initialize)
|
||||
|
|
|
@ -232,4 +232,4 @@ void Initialize(v8::Local<v8::Object> exports,
|
|||
|
||||
} // namespace
|
||||
|
||||
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_desktop_capturer, Initialize);
|
||||
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_desktop_capturer, Initialize)
|
||||
|
|
|
@ -251,4 +251,4 @@ void Initialize(v8::Local<v8::Object> exports,
|
|||
|
||||
} // namespace
|
||||
|
||||
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_download_item, Initialize);
|
||||
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_download_item, Initialize)
|
||||
|
|
|
@ -151,4 +151,4 @@ void Initialize(v8::Local<v8::Object> exports,
|
|||
|
||||
} // namespace
|
||||
|
||||
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_power_save_blocker, Initialize);
|
||||
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_power_save_blocker, Initialize)
|
||||
|
|
|
@ -130,4 +130,4 @@ void Initialize(v8::Local<v8::Object> exports,
|
|||
|
||||
} // namespace
|
||||
|
||||
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_system_preferences, Initialize);
|
||||
NODE_LINKED_MODULE_CONTEXT_AWARE(atom_browser_system_preferences, Initialize)
|
||||
|
|
|
@ -97,7 +97,7 @@
|
|||
#endif
|
||||
|
||||
#if defined(OS_LINUX) || defined(OS_WIN)
|
||||
#include "content/public/common/renderer_preferences.h"
|
||||
#include "third_party/blink/public/mojom/renderer_preferences.mojom.h"
|
||||
#include "ui/gfx/font_render_params.h"
|
||||
#endif
|
||||
|
||||
|
@ -669,7 +669,8 @@ void WebContents::RendererResponsive(
|
|||
observer.OnRendererResponsive();
|
||||
}
|
||||
|
||||
bool WebContents::HandleContextMenu(const content::ContextMenuParams& params) {
|
||||
bool WebContents::HandleContextMenu(content::RenderFrameHost* render_frame_host,
|
||||
const content::ContextMenuParams& params) {
|
||||
if (params.custom_context.is_pepper_menu) {
|
||||
Emit("pepper-context-menu", std::make_pair(params, web_contents()),
|
||||
base::Bind(&content::WebContents::NotifyContextMenuClosed,
|
||||
|
|
|
@ -377,7 +377,8 @@ class WebContents : public mate::TrackableObject<WebContents>,
|
|||
void RendererResponsive(
|
||||
content::WebContents* source,
|
||||
content::RenderWidgetHost* render_widget_host) override;
|
||||
bool HandleContextMenu(const content::ContextMenuParams& params) override;
|
||||
bool HandleContextMenu(content::RenderFrameHost* render_frame_host,
|
||||
const content::ContextMenuParams& params) override;
|
||||
bool OnGoToEntryOffset(int offset) override;
|
||||
void FindReply(content::WebContents* web_contents,
|
||||
int request_id,
|
||||
|
|
|
@ -103,8 +103,7 @@ class EventEmitter : public Wrappable<T> {
|
|||
v8::HandleScope handle_scope(isolate());
|
||||
EmitEvent(isolate(), GetWrapper(), name, event, args...);
|
||||
return event->Get(StringToV8(isolate(), "defaultPrevented"))
|
||||
->BooleanValue(isolate()->GetCurrentContext())
|
||||
.ToChecked();
|
||||
->BooleanValue(isolate());
|
||||
}
|
||||
|
||||
DISALLOW_COPY_AND_ASSIGN(EventEmitter);
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
#include "content/public/browser/render_view_host.h"
|
||||
#include "content/public/browser/render_widget_host.h"
|
||||
#include "content/public/browser/render_widget_host_view.h"
|
||||
#include "media/capture/mojom/video_capture_types.mojom.h"
|
||||
#include "ui/gfx/skbitmap_operations.h"
|
||||
|
||||
#include "atom/common/node_includes.h"
|
||||
|
@ -87,7 +88,6 @@ void FrameSubscriber::RenderViewHostChanged(content::RenderViewHost* old_host,
|
|||
void FrameSubscriber::OnFrameCaptured(
|
||||
base::ReadOnlySharedMemoryRegion data,
|
||||
::media::mojom::VideoFrameInfoPtr info,
|
||||
const gfx::Rect& update_rect,
|
||||
const gfx::Rect& content_rect,
|
||||
viz::mojom::FrameSinkVideoConsumerFrameCallbacksPtr callbacks) {
|
||||
gfx::Size view_size = host_->GetView()->GetViewBounds().size();
|
||||
|
|
|
@ -45,7 +45,6 @@ class FrameSubscriber : public content::WebContentsObserver,
|
|||
void OnFrameCaptured(
|
||||
base::ReadOnlySharedMemoryRegion data,
|
||||
::media::mojom::VideoFrameInfoPtr info,
|
||||
const gfx::Rect& update_rect,
|
||||
const gfx::Rect& content_rect,
|
||||
viz::mojom::FrameSinkVideoConsumerFrameCallbacksPtr callbacks) override;
|
||||
void OnStopped() override;
|
||||
|
|
|
@ -83,6 +83,19 @@ void GPUInfoEnumerator::EndVideoEncodeAcceleratorSupportedProfile() {
|
|||
value_stack.pop();
|
||||
}
|
||||
|
||||
void GPUInfoEnumerator::BeginImageDecodeAcceleratorSupportedProfile() {
|
||||
value_stack.push(std::move(current));
|
||||
current = std::make_unique<base::DictionaryValue>();
|
||||
}
|
||||
|
||||
void GPUInfoEnumerator::EndImageDecodeAcceleratorSupportedProfile() {
|
||||
auto& top_value = value_stack.top();
|
||||
top_value->SetDictionary(kImageDecodeAcceleratorSupportedProfileKey,
|
||||
std::move(current));
|
||||
current = std::move(top_value);
|
||||
value_stack.pop();
|
||||
}
|
||||
|
||||
void GPUInfoEnumerator::BeginAuxAttributes() {
|
||||
value_stack.push(std::move(current));
|
||||
current = std::make_unique<base::DictionaryValue>();
|
||||
|
|
|
@ -22,6 +22,8 @@ class GPUInfoEnumerator final : public gpu::GPUInfo::Enumerator {
|
|||
"videoDecodeAcceleratorSupportedProfile";
|
||||
const char* kVideoEncodeAcceleratorSupportedProfileKey =
|
||||
"videoEncodeAcceleratorSupportedProfile";
|
||||
const char* kImageDecodeAcceleratorSupportedProfileKey =
|
||||
"imageDecodeAcceleratorSupportedProfile";
|
||||
const char* kAuxAttributesKey = "auxAttributes";
|
||||
const char* kOverlayCapabilityKey = "overlayCapability";
|
||||
const char* kDx12VulkanVersionInfoKey = "dx12VulkanVersionInfo";
|
||||
|
@ -41,6 +43,8 @@ class GPUInfoEnumerator final : public gpu::GPUInfo::Enumerator {
|
|||
void EndVideoDecodeAcceleratorSupportedProfile() override;
|
||||
void BeginVideoEncodeAcceleratorSupportedProfile() override;
|
||||
void EndVideoEncodeAcceleratorSupportedProfile() override;
|
||||
void BeginImageDecodeAcceleratorSupportedProfile() override;
|
||||
void EndImageDecodeAcceleratorSupportedProfile() override;
|
||||
void BeginAuxAttributes() override;
|
||||
void EndAuxAttributes() override;
|
||||
void BeginOverlayCapability() override;
|
||||
|
|
|
@ -45,6 +45,7 @@
|
|||
#include "electron/buildflags/buildflags.h"
|
||||
#include "media/base/localized_strings.h"
|
||||
#include "services/device/public/mojom/constants.mojom.h"
|
||||
#include "services/network/public/cpp/features.h"
|
||||
#include "services/service_manager/public/cpp/connector.h"
|
||||
#include "ui/base/idle/idle.h"
|
||||
#include "ui/base/material_design/material_design_controller.h"
|
||||
|
@ -209,7 +210,8 @@ void AtomBrowserMainParts::InitializeFeatureList() {
|
|||
// Can be reenabled when our site instance policy is aligned with chromium
|
||||
// when node integration is enabled.
|
||||
disable_features +=
|
||||
std::string(",") + features::kSpareRendererForSitePerProcess.name;
|
||||
std::string(",") + features::kSpareRendererForSitePerProcess.name +
|
||||
std::string(",") + network::features::kNetworkService.name;
|
||||
auto feature_list = std::make_unique<base::FeatureList>();
|
||||
feature_list->InitializeFromCommandLine(enable_features, disable_features);
|
||||
base::FeatureList::SetInstance(std::move(feature_list));
|
||||
|
@ -284,6 +286,7 @@ void AtomBrowserMainParts::RegisterDestructionCallback(
|
|||
|
||||
int AtomBrowserMainParts::PreEarlyInitialization() {
|
||||
InitializeFeatureList();
|
||||
field_trial_list_ = std::make_unique<base::FieldTrialList>(nullptr);
|
||||
OverrideAppLogsPath();
|
||||
#if defined(USE_X11)
|
||||
views::LinuxUI::SetInstance(BuildGtkUi());
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
#include <string>
|
||||
|
||||
#include "base/callback.h"
|
||||
#include "base/metrics/field_trial.h"
|
||||
#include "base/timer/timer.h"
|
||||
#include "content/public/browser/browser_context.h"
|
||||
#include "content/public/browser/browser_main_parts.h"
|
||||
|
@ -126,6 +127,7 @@ class AtomBrowserMainParts : public content::BrowserMainParts {
|
|||
std::unique_ptr<NodeEnvironment> node_env_;
|
||||
std::unique_ptr<NodeDebugger> node_debugger_;
|
||||
std::unique_ptr<IconManager> icon_manager_;
|
||||
std::unique_ptr<base::FieldTrialList> field_trial_list_;
|
||||
|
||||
base::RepeatingTimer gc_timer_;
|
||||
|
||||
|
|
|
@ -80,7 +80,7 @@ bool AtomResourceDispatcherHostDelegate::ShouldInterceptResourceAsStream(
|
|||
GURL* origin,
|
||||
std::string* payload) {
|
||||
#if BUILDFLAG(ENABLE_PDF_VIEWER)
|
||||
const content::ResourceRequestInfo* info =
|
||||
content::ResourceRequestInfo* info =
|
||||
content::ResourceRequestInfo::ForRequest(request);
|
||||
|
||||
int render_process_host_id;
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
#include "base/mac/bundle_locations.h"
|
||||
#include "base/mac/foundation_util.h"
|
||||
#include "base/mac/mac_util.h"
|
||||
#include "base/mac/scoped_cftyperef.h"
|
||||
#include "base/strings/string_number_conversions.h"
|
||||
#include "base/strings/sys_string_conversions.h"
|
||||
#include "net/base/mac/url_conversions.h"
|
||||
|
@ -114,16 +115,16 @@ bool Browser::IsDefaultProtocolClient(const std::string& protocol,
|
|||
|
||||
NSString* protocol_ns = [NSString stringWithUTF8String:protocol.c_str()];
|
||||
|
||||
CFStringRef bundle =
|
||||
LSCopyDefaultHandlerForURLScheme(base::mac::NSToCFCast(protocol_ns));
|
||||
NSString* bundleId =
|
||||
static_cast<NSString*>(base::mac::CFTypeRefToNSObjectAutorelease(bundle));
|
||||
base::ScopedCFTypeRef<CFStringRef> bundleId(
|
||||
LSCopyDefaultHandlerForURLScheme(base::mac::NSToCFCast(protocol_ns)));
|
||||
|
||||
if (!bundleId)
|
||||
return false;
|
||||
|
||||
// Ensure the comparison is case-insensitive
|
||||
// as LS does not persist the case of the bundle id.
|
||||
NSComparisonResult result = [bundleId caseInsensitiveCompare:identifier];
|
||||
NSComparisonResult result =
|
||||
[base::mac::CFToNSCast(bundleId) caseInsensitiveCompare:identifier];
|
||||
return result == NSOrderedSame;
|
||||
}
|
||||
|
||||
|
|
|
@ -508,7 +508,7 @@ void CommonWebContentsDelegate::DevToolsIndexPath(
|
|||
return;
|
||||
std::vector<std::string> excluded_folders;
|
||||
std::unique_ptr<base::Value> parsed_excluded_folders =
|
||||
base::JSONReader::Read(excluded_folders_message);
|
||||
base::JSONReader::ReadDeprecated(excluded_folders_message);
|
||||
if (parsed_excluded_folders && parsed_excluded_folders->is_list()) {
|
||||
const std::vector<base::Value>& folder_paths =
|
||||
parsed_excluded_folders->GetList();
|
||||
|
|
|
@ -20,12 +20,11 @@ using content::BrowserThread;
|
|||
|
||||
namespace atom {
|
||||
|
||||
LoginHandler::LoginHandler(
|
||||
net::URLRequest* request,
|
||||
const net::AuthChallengeInfo& auth_info,
|
||||
net::NetworkDelegate::AuthCallback callback,
|
||||
net::AuthCredentials* credentials,
|
||||
const content::ResourceRequestInfo* resource_request_info)
|
||||
LoginHandler::LoginHandler(net::URLRequest* request,
|
||||
const net::AuthChallengeInfo& auth_info,
|
||||
net::NetworkDelegate::AuthCallback callback,
|
||||
net::AuthCredentials* credentials,
|
||||
content::ResourceRequestInfo* resource_request_info)
|
||||
: credentials_(credentials),
|
||||
auth_info_(&auth_info),
|
||||
auth_callback_(std::move(callback)),
|
||||
|
|
|
@ -26,7 +26,7 @@ class LoginHandler : public base::RefCountedThreadSafe<LoginHandler> {
|
|||
const net::AuthChallengeInfo& auth_info,
|
||||
net::NetworkDelegate::AuthCallback callback,
|
||||
net::AuthCredentials* credentials,
|
||||
const content::ResourceRequestInfo* resource_request_info);
|
||||
content::ResourceRequestInfo* resource_request_info);
|
||||
|
||||
// The auth is cancelled, must be called on UI thread.
|
||||
void CancelAuth();
|
||||
|
|
|
@ -17,22 +17,6 @@
|
|||
- (void)setAppearance:(NSAppearance*)appearance API_AVAILABLE(macosx(10.14));
|
||||
@end
|
||||
|
||||
#if !defined(MAC_OS_X_VERSION_10_13_2)
|
||||
|
||||
// forward declare Touch ID APIs
|
||||
typedef NS_ENUM(NSInteger, LABiometryType) {
|
||||
LABiometryTypeNone = 0,
|
||||
LABiometryTypeFaceID = 1,
|
||||
LABiometryTypeTouchID = 2,
|
||||
} API_AVAILABLE(macosx(10.13.2));
|
||||
|
||||
@interface LAContext (HighSierraPointTwoSDK)
|
||||
@property(nonatomic, readonly)
|
||||
LABiometryType biometryType API_AVAILABLE(macosx(10.13.2));
|
||||
@end
|
||||
|
||||
#endif
|
||||
|
||||
// forward declare Access APIs
|
||||
typedef NSString* AVMediaType NS_EXTENSIBLE_STRING_ENUM;
|
||||
|
||||
|
|
|
@ -101,7 +101,7 @@ void ToDictionary(base::DictionaryValue* details, net::URLRequest* request) {
|
|||
FillRequestDetails(details, request);
|
||||
details->SetInteger("id", request->identifier());
|
||||
details->SetDouble("timestamp", base::Time::Now().ToDoubleT() * 1000);
|
||||
const auto* info = content::ResourceRequestInfo::ForRequest(request);
|
||||
auto* info = content::ResourceRequestInfo::ForRequest(request);
|
||||
if (info) {
|
||||
details->SetString("resourceType",
|
||||
ResourceTypeToString(info->GetResourceType()));
|
||||
|
@ -149,9 +149,8 @@ void ToDictionary(base::DictionaryValue* details, const GURL& location) {
|
|||
}
|
||||
|
||||
void ToDictionary(base::DictionaryValue* details,
|
||||
const net::HostPortPair& host_port) {
|
||||
if (host_port.host().empty())
|
||||
details->SetString("ip", host_port.host());
|
||||
const net::IPEndPoint& remote_endpoint) {
|
||||
details->SetString("ip", remote_endpoint.ToStringWithoutPort());
|
||||
}
|
||||
|
||||
void ToDictionary(base::DictionaryValue* details, bool from_cache) {
|
||||
|
@ -328,9 +327,9 @@ void AtomNetworkDelegate::OnBeforeRedirect(net::URLRequest* request,
|
|||
if (!base::ContainsKey(simple_listeners_, kOnBeforeRedirect))
|
||||
return;
|
||||
|
||||
HandleSimpleEvent(kOnBeforeRedirect, request, new_location,
|
||||
request->response_headers(), request->GetSocketAddress(),
|
||||
request->was_cached());
|
||||
HandleSimpleEvent(
|
||||
kOnBeforeRedirect, request, new_location, request->response_headers(),
|
||||
request->GetResponseRemoteEndpoint(), request->was_cached());
|
||||
}
|
||||
|
||||
void AtomNetworkDelegate::OnResponseStarted(net::URLRequest* request,
|
||||
|
|
|
@ -177,8 +177,6 @@ URLRequestContextGetter::Handle::CreateNetworkContextParams() {
|
|||
base_path.Append(chrome::kNetworkPersistentStateFilename);
|
||||
network_context_params->cookie_path =
|
||||
base_path.Append(chrome::kCookieFilename);
|
||||
network_context_params->channel_id_path =
|
||||
base_path.Append(chrome::kChannelIDFilename);
|
||||
network_context_params->restore_old_session_cookies = false;
|
||||
network_context_params->persist_session_cookies = false;
|
||||
// TODO(deepak1556): Matches the existing behavior https://git.io/fxHMl,
|
||||
|
|
|
@ -122,7 +122,7 @@ void PlatformNotificationService::CloseNotification(
|
|||
|
||||
void PlatformNotificationService::GetDisplayedNotifications(
|
||||
content::BrowserContext* browser_context,
|
||||
const DisplayedNotificationsCallback& callback) {}
|
||||
DisplayedNotificationsCallback callback) {}
|
||||
|
||||
int64_t PlatformNotificationService::ReadNextPersistentNotificationId(
|
||||
content::BrowserContext* browser_context) {
|
||||
|
|
|
@ -43,7 +43,7 @@ class PlatformNotificationService
|
|||
const std::string& notification_id) override;
|
||||
void GetDisplayedNotifications(
|
||||
content::BrowserContext* browser_context,
|
||||
const DisplayedNotificationsCallback& callback) override;
|
||||
DisplayedNotificationsCallback callback) override;
|
||||
int64_t ReadNextPersistentNotificationId(
|
||||
content::BrowserContext* browser_context) override;
|
||||
void RecordNotificationUkmEvent(
|
||||
|
|
|
@ -97,10 +97,10 @@ void DevToolsManagerDelegate::Inspect(content::DevToolsAgentHost* agent_host) {}
|
|||
void DevToolsManagerDelegate::HandleCommand(
|
||||
content::DevToolsAgentHost* agent_host,
|
||||
content::DevToolsAgentHostClient* client,
|
||||
std::unique_ptr<base::DictionaryValue> command,
|
||||
const std::string& method,
|
||||
const std::string& message,
|
||||
NotHandledCallback callback) {
|
||||
std::move(callback).Run(std::move(command), message);
|
||||
std::move(callback).Run(message);
|
||||
}
|
||||
|
||||
scoped_refptr<content::DevToolsAgentHost>
|
||||
|
|
|
@ -25,7 +25,7 @@ class DevToolsManagerDelegate : public content::DevToolsManagerDelegate {
|
|||
void Inspect(content::DevToolsAgentHost* agent_host) override;
|
||||
void HandleCommand(content::DevToolsAgentHost* agent_host,
|
||||
content::DevToolsAgentHostClient* client,
|
||||
std::unique_ptr<base::DictionaryValue> command,
|
||||
const std::string& method,
|
||||
const std::string& message,
|
||||
NotHandledCallback callback) override;
|
||||
scoped_refptr<content::DevToolsAgentHost> CreateNewTarget(
|
||||
|
|
|
@ -74,20 +74,29 @@ const char kTitleFormat[] = "Developer Tools - %s";
|
|||
|
||||
const size_t kMaxMessageChunkSize = IPC::Channel::kMaximumMessageSize / 4;
|
||||
|
||||
void RectToDictionary(const gfx::Rect& bounds, base::DictionaryValue* dict) {
|
||||
dict->SetInteger("x", bounds.x());
|
||||
dict->SetInteger("y", bounds.y());
|
||||
dict->SetInteger("width", bounds.width());
|
||||
dict->SetInteger("height", bounds.height());
|
||||
base::Value RectToDictionary(const gfx::Rect& bounds) {
|
||||
base::Value dict(base::Value::Type::DICTIONARY);
|
||||
dict.SetKey("x", base::Value(bounds.x()));
|
||||
dict.SetKey("y", base::Value(bounds.y()));
|
||||
dict.SetKey("width", base::Value(bounds.width()));
|
||||
dict.SetKey("height", base::Value(bounds.height()));
|
||||
return dict;
|
||||
}
|
||||
|
||||
void DictionaryToRect(const base::DictionaryValue& dict, gfx::Rect* bounds) {
|
||||
int x = 0, y = 0, width = 800, height = 600;
|
||||
dict.GetInteger("x", &x);
|
||||
dict.GetInteger("y", &y);
|
||||
dict.GetInteger("width", &width);
|
||||
dict.GetInteger("height", &height);
|
||||
*bounds = gfx::Rect(x, y, width, height);
|
||||
gfx::Rect DictionaryToRect(const base::Value* dict) {
|
||||
const base::Value* found = dict->FindKey("x");
|
||||
int x = found ? found->GetInt() : 0;
|
||||
|
||||
found = dict->FindKey("y");
|
||||
int y = found ? found->GetInt() : 0;
|
||||
|
||||
found = dict->FindKey("width");
|
||||
int width = found ? found->GetInt() : 800;
|
||||
|
||||
found = dict->FindKey("height");
|
||||
int height = found ? found->GetInt() : 600;
|
||||
|
||||
return gfx::Rect(x, y, width, height);
|
||||
}
|
||||
|
||||
bool IsPointInRect(const gfx::Point& point, const gfx::Rect& rect) {
|
||||
|
@ -199,9 +208,8 @@ InspectableWebContentsView* CreateInspectableContentsView(
|
|||
InspectableWebContentsImpl* inspectable_web_contents_impl);
|
||||
|
||||
void InspectableWebContentsImpl::RegisterPrefs(PrefRegistrySimple* registry) {
|
||||
std::unique_ptr<base::DictionaryValue> bounds_dict(new base::DictionaryValue);
|
||||
RectToDictionary(gfx::Rect(0, 0, 800, 600), bounds_dict.get());
|
||||
registry->RegisterDictionaryPref(kDevToolsBoundsPref, std::move(bounds_dict));
|
||||
registry->RegisterDictionaryPref(kDevToolsBoundsPref,
|
||||
RectToDictionary(gfx::Rect(0, 0, 800, 600)));
|
||||
registry->RegisterDoublePref(kDevToolsZoomPref, 0.);
|
||||
registry->RegisterDictionaryPref(kDevToolsPreferences);
|
||||
}
|
||||
|
@ -218,9 +226,9 @@ InspectableWebContentsImpl::InspectableWebContentsImpl(
|
|||
is_guest_(is_guest),
|
||||
view_(CreateInspectableContentsView(this)),
|
||||
weak_factory_(this) {
|
||||
auto* bounds_dict = pref_service_->GetDictionary(kDevToolsBoundsPref);
|
||||
if (bounds_dict) {
|
||||
DictionaryToRect(*bounds_dict, &devtools_bounds_);
|
||||
const base::Value* bounds_dict = pref_service_->Get(kDevToolsBoundsPref);
|
||||
if (bounds_dict->is_dict()) {
|
||||
devtools_bounds_ = DictionaryToRect(bounds_dict);
|
||||
// Sometimes the devtools window is out of screen or has too small size.
|
||||
if (devtools_bounds_.height() < 100 || devtools_bounds_.width() < 100) {
|
||||
devtools_bounds_.set_height(600);
|
||||
|
@ -410,9 +418,7 @@ gfx::Rect InspectableWebContentsImpl::GetDevToolsBounds() const {
|
|||
}
|
||||
|
||||
void InspectableWebContentsImpl::SaveDevToolsBounds(const gfx::Rect& bounds) {
|
||||
base::DictionaryValue bounds_dict;
|
||||
RectToDictionary(bounds, &bounds_dict);
|
||||
pref_service_->Set(kDevToolsBoundsPref, bounds_dict);
|
||||
pref_service_->Set(kDevToolsBoundsPref, RectToDictionary(bounds));
|
||||
devtools_bounds_ = bounds;
|
||||
}
|
||||
|
||||
|
@ -687,7 +693,8 @@ void InspectableWebContentsImpl::HandleMessageFromDevToolsFrontend(
|
|||
base::ListValue* params = &empty_params;
|
||||
|
||||
base::DictionaryValue* dict = nullptr;
|
||||
std::unique_ptr<base::Value> parsed_message(base::JSONReader::Read(message));
|
||||
std::unique_ptr<base::Value> parsed_message(
|
||||
base::JSONReader::ReadDeprecated(message));
|
||||
if (!parsed_message || !parsed_message->GetAsDictionary(&dict) ||
|
||||
!dict->GetString(kFrontendHostMethod, &method) ||
|
||||
(dict->HasKey(kFrontendHostParams) &&
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
#include "content/public/browser/render_process_host.h"
|
||||
#include "content/public/browser/render_view_host.h"
|
||||
#include "content/public/browser/web_contents.h"
|
||||
#include "content/public/browser/web_contents_observer.h"
|
||||
#include "net/base/mime_util.h"
|
||||
#include "ui/shell_dialogs/selected_file_info.h"
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ void WebViewGuestDelegate::AttachToIframe(
|
|||
// 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(
|
||||
embedder_web_contents_->AttachInnerWebContents(
|
||||
base::WrapUnique<content::WebContents>(guest_web_contents),
|
||||
embedder_frame);
|
||||
|
||||
|
|
|
@ -186,16 +186,15 @@ bool Archive::Init() {
|
|||
return false;
|
||||
}
|
||||
|
||||
std::string error;
|
||||
base::JSONReader reader;
|
||||
std::unique_ptr<base::Value> value(reader.ReadToValue(header));
|
||||
base::Optional<base::Value> value = base::JSONReader::Read(header);
|
||||
if (!value || !value->is_dict()) {
|
||||
LOG(ERROR) << "Failed to parse header: " << error;
|
||||
LOG(ERROR) << "Failed to parse header";
|
||||
return false;
|
||||
}
|
||||
|
||||
header_size_ = 8 + size;
|
||||
header_.reset(static_cast<base::DictionaryValue*>(value.release()));
|
||||
header_ = base::DictionaryValue::From(
|
||||
std::make_unique<base::Value>(value->Clone()));
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
|
||||
#include "atom/common/native_mate_converters/string16_converter.h"
|
||||
#include "base/logging.h"
|
||||
#include "base/numerics/safe_conversions.h"
|
||||
#include "base/threading/thread_task_runner_handle.h"
|
||||
#include "components/spellcheck/renderer/spellcheck_worditerator.h"
|
||||
#include "native_mate/converter.h"
|
||||
|
@ -146,17 +147,22 @@ void SpellCheckClient::SpellCheckText() {
|
|||
|
||||
SpellCheckScope scope(*this);
|
||||
base::string16 word;
|
||||
size_t word_start;
|
||||
size_t word_length;
|
||||
std::vector<base::string16> words;
|
||||
auto& word_map = pending_request_param_->wordmap();
|
||||
blink::WebTextCheckingResult result;
|
||||
for (;;) { // Run until end of text
|
||||
const auto status =
|
||||
text_iterator_.GetNextWord(&word, &result.location, &result.length);
|
||||
text_iterator_.GetNextWord(&word, &word_start, &word_length);
|
||||
if (status == SpellcheckWordIterator::IS_END_OF_TEXT)
|
||||
break;
|
||||
if (status == SpellcheckWordIterator::IS_SKIPPABLE)
|
||||
continue;
|
||||
|
||||
result.location = base::checked_cast<int>(word_start);
|
||||
result.length = base::checked_cast<int>(word_length);
|
||||
|
||||
// If the given word is a concatenated word of two or more valid words
|
||||
// (e.g. "hello:hello"), we should treat it as a valid word.
|
||||
std::vector<base::string16> contraction_words;
|
||||
|
@ -233,8 +239,8 @@ bool SpellCheckClient::IsContraction(
|
|||
contraction_iterator_.SetText(contraction.c_str(), contraction.length());
|
||||
|
||||
base::string16 word;
|
||||
int word_start;
|
||||
int word_length;
|
||||
size_t word_start;
|
||||
size_t word_length;
|
||||
for (auto status =
|
||||
contraction_iterator_.GetNextWord(&word, &word_start, &word_length);
|
||||
status != SpellcheckWordIterator::IS_END_OF_TEXT;
|
||||
|
|
|
@ -102,7 +102,7 @@ class ScriptExecutionCallback : public blink::WebScriptExecutionCallback {
|
|||
|
||||
void Completed(
|
||||
const blink::WebVector<v8::Local<v8::Value>>& result) override {
|
||||
if (!callback_.is_null() && !result.IsEmpty() && !result[0].IsEmpty())
|
||||
if (!callback_.is_null() && !result.empty() && !result[0].IsEmpty())
|
||||
// Right now only single results per frame is supported.
|
||||
callback_.Run(result[0]);
|
||||
delete this;
|
||||
|
|
|
@ -19,10 +19,7 @@ ContentSettingsObserver::ContentSettingsObserver(
|
|||
|
||||
ContentSettingsObserver::~ContentSettingsObserver() {}
|
||||
|
||||
bool ContentSettingsObserver::AllowDatabase(
|
||||
const blink::WebString& name,
|
||||
const blink::WebString& display_name,
|
||||
unsigned estimated_size) {
|
||||
bool ContentSettingsObserver::AllowDatabase() {
|
||||
blink::WebFrame* frame = render_frame()->GetWebFrame();
|
||||
if (frame->GetSecurityOrigin().IsUnique() ||
|
||||
frame->Top()->GetSecurityOrigin().IsUnique())
|
||||
|
|
|
@ -18,9 +18,7 @@ class ContentSettingsObserver : public content::RenderFrameObserver,
|
|||
~ContentSettingsObserver() override;
|
||||
|
||||
// blink::WebContentSettingsClient implementation.
|
||||
bool AllowDatabase(const blink::WebString& name,
|
||||
const blink::WebString& display_name,
|
||||
unsigned estimated_size) override;
|
||||
bool AllowDatabase() override;
|
||||
bool AllowStorage(bool local) override;
|
||||
bool AllowIndexedDB(const blink::WebSecurityOrigin& security_origin) override;
|
||||
|
||||
|
|
|
@ -13,7 +13,3 @@ ffmpeg_branding = "Chrome"
|
|||
enable_basic_printing = true
|
||||
|
||||
is_cfi = false
|
||||
|
||||
# FIXME(deepak1556): workaround for https://crbug.com/924225
|
||||
# remove this when clang roll 352138 lands.
|
||||
enable_precompiled_headers = false
|
||||
|
|
|
@ -10,14 +10,14 @@ source_set("manifests") {
|
|||
|
||||
deps = [
|
||||
"//printing/buildflags",
|
||||
"//services/proxy_resolver:proxy_resolver_manifest",
|
||||
"//services/proxy_resolver/public/cpp:manifest",
|
||||
]
|
||||
|
||||
if (enable_basic_printing) {
|
||||
deps += [ "//components/services/pdf_compositor:pdf_compositor_manifest" ]
|
||||
deps += [ "//components/services/pdf_compositor/public/cpp:manifest" ]
|
||||
}
|
||||
|
||||
if (enable_print_preview) {
|
||||
deps += [ "//chrome/services/printing:manifest" ]
|
||||
deps += [ "//chrome/services/printing/public/cpp:manifest" ]
|
||||
}
|
||||
}
|
||||
|
|
|
@ -23,9 +23,9 @@ inline WrappableBase* InvokeFactory(
|
|||
Arguments* args,
|
||||
const base::Callback<WrappableBase*()>& callback) {
|
||||
return callback.Run();
|
||||
};
|
||||
}
|
||||
|
||||
template<typename P1>
|
||||
template <typename P1>
|
||||
inline WrappableBase* InvokeFactory(
|
||||
Arguments* args,
|
||||
const base::Callback<WrappableBase*(P1)>& callback) {
|
||||
|
@ -33,9 +33,9 @@ inline WrappableBase* InvokeFactory(
|
|||
if (!GetNextArgument(args, 0, true, &a1))
|
||||
return nullptr;
|
||||
return callback.Run(a1);
|
||||
};
|
||||
}
|
||||
|
||||
template<typename P1, typename P2>
|
||||
template <typename P1, typename P2>
|
||||
inline WrappableBase* InvokeFactory(
|
||||
Arguments* args,
|
||||
const base::Callback<WrappableBase*(P1, P2)>& callback) {
|
||||
|
@ -45,9 +45,9 @@ inline WrappableBase* InvokeFactory(
|
|||
!GetNextArgument(args, 0, false, &a2))
|
||||
return nullptr;
|
||||
return callback.Run(a1, a2);
|
||||
};
|
||||
}
|
||||
|
||||
template<typename P1, typename P2, typename P3>
|
||||
template <typename P1, typename P2, typename P3>
|
||||
inline WrappableBase* InvokeFactory(
|
||||
Arguments* args,
|
||||
const base::Callback<WrappableBase*(P1, P2, P3)>& callback) {
|
||||
|
@ -59,9 +59,9 @@ inline WrappableBase* InvokeFactory(
|
|||
!GetNextArgument(args, 0, false, &a3))
|
||||
return nullptr;
|
||||
return callback.Run(a1, a2, a3);
|
||||
};
|
||||
}
|
||||
|
||||
template<typename P1, typename P2, typename P3, typename P4>
|
||||
template <typename P1, typename P2, typename P3, typename P4>
|
||||
inline WrappableBase* InvokeFactory(
|
||||
Arguments* args,
|
||||
const base::Callback<WrappableBase*(P1, P2, P3, P4)>& callback) {
|
||||
|
@ -75,9 +75,9 @@ inline WrappableBase* InvokeFactory(
|
|||
!GetNextArgument(args, 0, false, &a4))
|
||||
return nullptr;
|
||||
return callback.Run(a1, a2, a3, a4);
|
||||
};
|
||||
}
|
||||
|
||||
template<typename P1, typename P2, typename P3, typename P4, typename P5>
|
||||
template <typename P1, typename P2, typename P3, typename P4, typename P5>
|
||||
inline WrappableBase* InvokeFactory(
|
||||
Arguments* args,
|
||||
const base::Callback<WrappableBase*(P1, P2, P3, P4, P5)>& callback) {
|
||||
|
@ -93,10 +93,14 @@ inline WrappableBase* InvokeFactory(
|
|||
!GetNextArgument(args, 0, false, &a5))
|
||||
return nullptr;
|
||||
return callback.Run(a1, a2, a3, a4, a5);
|
||||
};
|
||||
}
|
||||
|
||||
template<typename P1, typename P2, typename P3, typename P4, typename P5,
|
||||
typename P6>
|
||||
template <typename P1,
|
||||
typename P2,
|
||||
typename P3,
|
||||
typename P4,
|
||||
typename P5,
|
||||
typename P6>
|
||||
inline WrappableBase* InvokeFactory(
|
||||
Arguments* args,
|
||||
const base::Callback<WrappableBase*(P1, P2, P3, P4, P5, P6)>& callback) {
|
||||
|
@ -114,11 +118,12 @@ inline WrappableBase* InvokeFactory(
|
|||
!GetNextArgument(args, 0, false, &a6))
|
||||
return nullptr;
|
||||
return callback.Run(a1, a2, a3, a4, a5, a6);
|
||||
};
|
||||
}
|
||||
|
||||
template<typename Sig>
|
||||
template <typename Sig>
|
||||
void InvokeNew(const base::Callback<Sig>& factory,
|
||||
v8::Isolate* isolate, Arguments* args) {
|
||||
v8::Isolate* isolate,
|
||||
Arguments* args) {
|
||||
if (!args->IsConstructCall()) {
|
||||
args->ThrowError("Requires constructor call");
|
||||
return;
|
||||
|
|
|
@ -1,6 +1,3 @@
|
|||
add_ec_group_order_bits_for_openssl_compatibility.patch
|
||||
add_ec_key_key2buf_for_openssl_compatibility.patch
|
||||
expose_ripemd160.patch
|
||||
expose_aes-cfb.patch
|
||||
sync_sorted_ciphers.patch
|
||||
handle_pub_key_null_in_ec_key_set_public_key.patch
|
||||
|
|
|
@ -1,39 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Jeremy Apthorp <jeremya@chromium.org>
|
||||
Date: Wed, 19 Dec 2018 14:42:26 -0800
|
||||
Subject: Add EC_GROUP_order_bits for OpenSSL compatibility
|
||||
|
||||
Change-Id: I37149fa4274357d84befff85728ce2337131afa7
|
||||
Reviewed-on: https://boringssl-review.googlesource.com/c/33804
|
||||
Commit-Queue: Adam Langley <agl@google.com>
|
||||
Reviewed-by: Adam Langley <agl@google.com>
|
||||
|
||||
diff --git a/crypto/fipsmodule/ec/ec.c b/crypto/fipsmodule/ec/ec.c
|
||||
index bd0662a703d6285df51735c5d4870d21a82b39cf..90b9d71f61f8d6d7ddf838c47a59729748d0d0f2 100644
|
||||
--- a/crypto/fipsmodule/ec/ec.c
|
||||
+++ b/crypto/fipsmodule/ec/ec.c
|
||||
@@ -625,6 +625,10 @@ int EC_GROUP_get_order(const EC_GROUP *group, BIGNUM *order, BN_CTX *ctx) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
+int EC_GROUP_order_bits(const EC_GROUP *group) {
|
||||
+ return BN_num_bits(&group->order);
|
||||
+}
|
||||
+
|
||||
int EC_GROUP_get_cofactor(const EC_GROUP *group, BIGNUM *cofactor,
|
||||
BN_CTX *ctx) {
|
||||
// All |EC_GROUP|s have cofactor 1.
|
||||
diff --git a/include/openssl/ec.h b/include/openssl/ec.h
|
||||
index 966393ea3b726214aa84a604c8e5a13654dcdf76..c65a1a7519fd80b681d1cf899792ee46aaa8bad6 100644
|
||||
--- a/include/openssl/ec.h
|
||||
+++ b/include/openssl/ec.h
|
||||
@@ -133,6 +133,9 @@ OPENSSL_EXPORT const EC_POINT *EC_GROUP_get0_generator(const EC_GROUP *group);
|
||||
// |group| that specifies the order of the group.
|
||||
OPENSSL_EXPORT const BIGNUM *EC_GROUP_get0_order(const EC_GROUP *group);
|
||||
|
||||
+// EC_GROUP_order_bits returns the number of bits of the order of |group|.
|
||||
+OPENSSL_EXPORT int EC_GROUP_order_bits(const EC_GROUP *group);
|
||||
+
|
||||
// EC_GROUP_get_cofactor sets |*cofactor| to the cofactor of |group| using
|
||||
// |ctx|, if it's not NULL. It returns one on success and zero otherwise.
|
||||
OPENSSL_EXPORT int EC_GROUP_get_cofactor(const EC_GROUP *group,
|
|
@ -1,65 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Jeremy Apthorp <jeremya@chromium.org>
|
||||
Date: Wed, 19 Dec 2018 14:46:14 -0800
|
||||
Subject: Add EC_KEY_key2buf for OpenSSL compatibility
|
||||
|
||||
Change-Id: If45ef3a9bb757bd0c7f592f40ececaf4aa2f607d
|
||||
Reviewed-on: https://boringssl-review.googlesource.com/c/33824
|
||||
Reviewed-by: Adam Langley <agl@google.com>
|
||||
Commit-Queue: Adam Langley <agl@google.com>
|
||||
|
||||
diff --git a/crypto/fipsmodule/ec/ec_key.c b/crypto/fipsmodule/ec/ec_key.c
|
||||
index 632dc9b2d902dfba01567f4c02ad7ad6d0c8c3e8..4bc12a073650f66f5ae8ba2beabb9a6fb2b21878 100644
|
||||
--- a/crypto/fipsmodule/ec/ec_key.c
|
||||
+++ b/crypto/fipsmodule/ec/ec_key.c
|
||||
@@ -394,6 +394,33 @@ err:
|
||||
return ok;
|
||||
}
|
||||
|
||||
+size_t EC_KEY_key2buf(EC_KEY *key, point_conversion_form_t form,
|
||||
+ unsigned char **out_buf, BN_CTX *ctx) {
|
||||
+ if (key == NULL || key->pub_key == NULL || key->group == NULL) {
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ const size_t len =
|
||||
+ EC_POINT_point2oct(key->group, key->pub_key, form, NULL, 0, ctx);
|
||||
+ if (len == 0) {
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ uint8_t *buf = OPENSSL_malloc(len);
|
||||
+ if (buf == NULL) {
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ if (EC_POINT_point2oct(key->group, key->pub_key, form, buf, len, ctx) !=
|
||||
+ len) {
|
||||
+ OPENSSL_free(buf);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ *out_buf = buf;
|
||||
+ return len;
|
||||
+}
|
||||
+
|
||||
int EC_KEY_generate_key(EC_KEY *key) {
|
||||
if (key == NULL || key->group == NULL) {
|
||||
OPENSSL_PUT_ERROR(EC, ERR_R_PASSED_NULL_PARAMETER);
|
||||
diff --git a/include/openssl/ec_key.h b/include/openssl/ec_key.h
|
||||
index 9bc788758b26bb4883626a80f3e0b8c8d6eb7974..3b1a5666fa1f2071212393a3f5c8d5394c32efeb 100644
|
||||
--- a/include/openssl/ec_key.h
|
||||
+++ b/include/openssl/ec_key.h
|
||||
@@ -177,6 +177,12 @@ OPENSSL_EXPORT int EC_KEY_set_public_key_affine_coordinates(EC_KEY *key,
|
||||
BIGNUM *x,
|
||||
BIGNUM *y);
|
||||
|
||||
+// EC_KEY_key2buf encodes the public key in |key| to an allocated octet string
|
||||
+// and sets |*out_buf| to point to it. It returns the length of the encoded
|
||||
+// octet string or zero if an error occurred.
|
||||
+OPENSSL_EXPORT size_t EC_KEY_key2buf(EC_KEY *key, point_conversion_form_t form,
|
||||
+ unsigned char **out_buf, BN_CTX *ctx);
|
||||
+
|
||||
|
||||
// Key generation.
|
||||
|
|
@ -5,7 +5,7 @@ Subject: expose aes-{128,256}-cfb
|
|||
|
||||
|
||||
diff --git a/crypto/cipher_extra/cipher_extra.c b/crypto/cipher_extra/cipher_extra.c
|
||||
index 1b23ad32f8cff2a00512ba58d24b47b628e7920c..be7ef07b2c188a76890deb0f305cf92fcc57a64e 100644
|
||||
index b132265bc103658dba3de6e0c3dc50d3634da5b0..588a4773437c311877f275bf3679f9688cda3c46 100644
|
||||
--- a/crypto/cipher_extra/cipher_extra.c
|
||||
+++ b/crypto/cipher_extra/cipher_extra.c
|
||||
@@ -101,10 +101,14 @@ const EVP_CIPHER *EVP_get_cipherbyname(const char *name) {
|
||||
|
@ -41,44 +41,40 @@ index d3a176163303a202baeb1f95727c6ed3525439d6..21d108a7b73d454aa6b0e324df4b6708
|
|||
const EVP_CIPHER *EVP_aes_128_cfb128(void) { return &aes_128_cfb128; }
|
||||
+const EVP_CIPHER *EVP_aes_256_cfb128(void) { return &aes_256_cfb128; }
|
||||
diff --git a/decrepit/evp/evp_do_all.c b/decrepit/evp/evp_do_all.c
|
||||
index acc4719b7e9c4c4461fc6142f2ae9156b407915b..8b008a401ec2f2d0673f6876609dd5786cace4c2 100644
|
||||
index 53cb9d2dc8f1962a70dc12b648d27c32be8aca4b..84af06fc56e4aa72d4d48801d7c037add0221747 100644
|
||||
--- a/decrepit/evp/evp_do_all.c
|
||||
+++ b/decrepit/evp/evp_do_all.c
|
||||
@@ -20,10 +20,12 @@ void EVP_CIPHER_do_all_sorted(void (*callback)(const EVP_CIPHER *cipher,
|
||||
@@ -20,8 +20,10 @@ void EVP_CIPHER_do_all_sorted(void (*callback)(const EVP_CIPHER *cipher,
|
||||
const char *unused, void *arg),
|
||||
void *arg) {
|
||||
callback(EVP_aes_128_cbc(), "AES-128-CBC", NULL, arg);
|
||||
+ callback(EVP_aes_128_cfb128(), "AES-128-CFB", NULL, arg);
|
||||
callback(EVP_aes_128_ctr(), "AES-128-CTR", NULL, arg);
|
||||
callback(EVP_aes_128_ecb(), "AES-128-ECB", NULL, arg);
|
||||
callback(EVP_aes_128_ofb(), "AES-128-OFB", NULL, arg);
|
||||
callback(EVP_aes_192_cbc(), "AES-192-CBC", NULL, arg);
|
||||
callback(EVP_aes_256_cbc(), "AES-256-CBC", NULL, arg);
|
||||
+ callback(EVP_aes_256_cfb128(), "AES-256-CFB", NULL, arg);
|
||||
callback(EVP_aes_128_ctr(), "AES-128-CTR", NULL, arg);
|
||||
callback(EVP_aes_192_ctr(), "AES-192-CTR", NULL, arg);
|
||||
callback(EVP_aes_256_ctr(), "AES-256-CTR", NULL, arg);
|
||||
callback(EVP_aes_256_ecb(), "AES-256-ECB", NULL, arg);
|
||||
callback(EVP_aes_256_ofb(), "AES-256-OFB", NULL, arg);
|
||||
@@ -38,10 +40,12 @@ void EVP_CIPHER_do_all_sorted(void (*callback)(const EVP_CIPHER *cipher,
|
||||
@@ -44,8 +46,10 @@ void EVP_CIPHER_do_all_sorted(void (*callback)(const EVP_CIPHER *cipher,
|
||||
|
||||
// OpenSSL returns everything twice, the second time in lower case.
|
||||
callback(EVP_aes_128_cbc(), "aes-128-cbc", NULL, arg);
|
||||
+ callback(EVP_aes_128_cfb128(), "aes-128-cfb", NULL, arg);
|
||||
callback(EVP_aes_128_ctr(), "aes-128-ctr", NULL, arg);
|
||||
callback(EVP_aes_128_ecb(), "aes-128-ecb", NULL, arg);
|
||||
callback(EVP_aes_128_ofb(), "aes-128-ofb", NULL, arg);
|
||||
callback(EVP_aes_192_cbc(), "aes-192-cbc", NULL, arg);
|
||||
callback(EVP_aes_256_cbc(), "aes-256-cbc", NULL, arg);
|
||||
+ callback(EVP_aes_256_cfb128(), "aes-256-cfb", NULL, arg);
|
||||
callback(EVP_aes_128_ctr(), "aes-128-ctr", NULL, arg);
|
||||
callback(EVP_aes_192_ctr(), "aes-192-ctr", NULL, arg);
|
||||
callback(EVP_aes_256_ctr(), "aes-256-ctr", NULL, arg);
|
||||
callback(EVP_aes_256_ecb(), "aes-256-ecb", NULL, arg);
|
||||
callback(EVP_aes_256_ofb(), "aes-256-ofb", NULL, arg);
|
||||
diff --git a/include/openssl/cipher.h b/include/openssl/cipher.h
|
||||
index e9545c82ca7e663ae25d9e85d29acea2be54d38f..4902859cdb96012eae7956d9fc3b1dcd47a71c07 100644
|
||||
index ea7a940ab3003f6919322ef1c4b7caaa9dea8588..5320d5d84c10c6396eb869dc1767b31afeeac4ef 100644
|
||||
--- a/include/openssl/cipher.h
|
||||
+++ b/include/openssl/cipher.h
|
||||
@@ -421,6 +421,7 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_192_ofb(void);
|
||||
@@ -424,6 +424,7 @@ OPENSSL_EXPORT const EVP_CIPHER *EVP_des_ede3_ecb(void);
|
||||
|
||||
// EVP_aes_128_cfb128 is only available in decrepit.
|
||||
OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_128_cfb128(void);
|
||||
+OPENSSL_EXPORT const EVP_CIPHER *EVP_aes_256_cfb128(void);
|
||||
|
||||
// The following flags do nothing and are included only to make it easier to
|
||||
// compile code with BoringSSL.
|
||||
// EVP_bf_ecb is Blowfish in ECB mode and is only available in decrepit.
|
||||
OPENSSL_EXPORT const EVP_CIPHER *EVP_bf_ecb(void);
|
||||
|
|
|
@ -62,10 +62,10 @@ index f2fa349c2b32ae88766624af3109ece4b1d69909..bcaed59c5401bef071acba9b9919d906
|
|||
+
|
||||
#undef CHECK
|
||||
diff --git a/decrepit/evp/evp_do_all.c b/decrepit/evp/evp_do_all.c
|
||||
index 38b8f9f78f76050174096740596ac59a0fe18757..acc4719b7e9c4c4461fc6142f2ae9156b407915b 100644
|
||||
index d540144b293297791c087e0b968a47d368a73695..53cb9d2dc8f1962a70dc12b648d27c32be8aca4b 100644
|
||||
--- a/decrepit/evp/evp_do_all.c
|
||||
+++ b/decrepit/evp/evp_do_all.c
|
||||
@@ -66,6 +66,7 @@ void EVP_MD_do_all_sorted(void (*callback)(const EVP_MD *cipher,
|
||||
@@ -78,6 +78,7 @@ void EVP_MD_do_all_sorted(void (*callback)(const EVP_MD *cipher,
|
||||
callback(EVP_sha256(), "SHA256", NULL, arg);
|
||||
callback(EVP_sha384(), "SHA384", NULL, arg);
|
||||
callback(EVP_sha512(), "SHA512", NULL, arg);
|
||||
|
@ -73,7 +73,7 @@ index 38b8f9f78f76050174096740596ac59a0fe18757..acc4719b7e9c4c4461fc6142f2ae9156
|
|||
|
||||
callback(EVP_md4(), "md4", NULL, arg);
|
||||
callback(EVP_md5(), "md5", NULL, arg);
|
||||
@@ -74,4 +75,5 @@ void EVP_MD_do_all_sorted(void (*callback)(const EVP_MD *cipher,
|
||||
@@ -86,4 +87,5 @@ void EVP_MD_do_all_sorted(void (*callback)(const EVP_MD *cipher,
|
||||
callback(EVP_sha256(), "sha256", NULL, arg);
|
||||
callback(EVP_sha384(), "sha384", NULL, arg);
|
||||
callback(EVP_sha512(), "sha512", NULL, arg);
|
||||
|
|
|
@ -1,85 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Shelley Vohr <shelley.vohr@gmail.com>
|
||||
Date: Thu, 7 Feb 2019 11:11:35 -0800
|
||||
Subject: sync EVP_get_cipherbyname with EVP_do_all_sorted
|
||||
|
||||
EVP_get_cipherbyname should work on everything that EVP_do_all_sorted
|
||||
lists, and conversely, there should be nothing that
|
||||
EVP_get_cipherbyname works on that EVP_do_all_sorted doesn't list.
|
||||
This thus does that.
|
||||
|
||||
diff --git a/crypto/cipher_extra/cipher_extra.c b/crypto/cipher_extra/cipher_extra.c
|
||||
index be7ef07b2c188a76890deb0f305cf92fcc57a64e..588a4773437c311877f275bf3679f9688cda3c46 100644
|
||||
--- a/crypto/cipher_extra/cipher_extra.c
|
||||
+++ b/crypto/cipher_extra/cipher_extra.c
|
||||
@@ -133,6 +133,14 @@ const EVP_CIPHER *EVP_get_cipherbyname(const char *name) {
|
||||
return EVP_aes_192_ofb();
|
||||
} else if (OPENSSL_strcasecmp(name, "aes-256-ofb") == 0) {
|
||||
return EVP_aes_256_ofb();
|
||||
+ } else if (OPENSSL_strcasecmp(name, "des-ecb") == 0) {
|
||||
+ return EVP_des_ecb();
|
||||
+ } else if (OPENSSL_strcasecmp(name, "des-ede") == 0) {
|
||||
+ return EVP_des_ede();
|
||||
+ } else if (OPENSSL_strcasecmp(name, "des-ede-cbc") == 0) {
|
||||
+ return EVP_des_ede_cbc();
|
||||
+ } else if (OPENSSL_strcasecmp(name, "rc2-cbc") == 0) {
|
||||
+ return EVP_rc2_cbc();
|
||||
}
|
||||
|
||||
return NULL;
|
||||
diff --git a/decrepit/evp/evp_do_all.c b/decrepit/evp/evp_do_all.c
|
||||
index 8b008a401ec2f2d0673f6876609dd5786cace4c2..3e88b29cb599730d2e8682070aaa4be38d06ed80 100644
|
||||
--- a/decrepit/evp/evp_do_all.c
|
||||
+++ b/decrepit/evp/evp_do_all.c
|
||||
@@ -21,15 +21,21 @@ void EVP_CIPHER_do_all_sorted(void (*callback)(const EVP_CIPHER *cipher,
|
||||
void *arg) {
|
||||
callback(EVP_aes_128_cbc(), "AES-128-CBC", NULL, arg);
|
||||
callback(EVP_aes_128_cfb128(), "AES-128-CFB", NULL, arg);
|
||||
- callback(EVP_aes_128_ctr(), "AES-128-CTR", NULL, arg);
|
||||
- callback(EVP_aes_128_ecb(), "AES-128-ECB", NULL, arg);
|
||||
- callback(EVP_aes_128_ofb(), "AES-128-OFB", NULL, arg);
|
||||
+ callback(EVP_aes_192_cbc(), "AES-192-CBC", NULL, arg);
|
||||
callback(EVP_aes_256_cbc(), "AES-256-CBC", NULL, arg);
|
||||
+ callback(EVP_aes_128_ctr(), "AES-128-CTR", NULL, arg);
|
||||
+ callback(EVP_aes_192_ctr(), "AES-192-CTR", NULL, arg);
|
||||
callback(EVP_aes_256_cfb128(), "AES-256-CFB", NULL, arg);
|
||||
callback(EVP_aes_256_ctr(), "AES-256-CTR", NULL, arg);
|
||||
+ callback(EVP_aes_128_ecb(), "AES-128-ECB", NULL, arg);
|
||||
+ callback(EVP_aes_192_ecb(), "AES-192-ECB", NULL, arg);
|
||||
callback(EVP_aes_256_ecb(), "AES-256-ECB", NULL, arg);
|
||||
+ callback(EVP_aes_128_ofb(), "AES-128-OFB", NULL, arg);
|
||||
+ callback(EVP_aes_192_ofb(), "AES-192-OFB", NULL, arg);
|
||||
callback(EVP_aes_256_ofb(), "AES-256-OFB", NULL, arg);
|
||||
- callback(EVP_aes_256_xts(), "AES-256-XTS", NULL, arg);
|
||||
+ callback(EVP_aes_128_gcm(), "AES-128-GCM", NULL, arg);
|
||||
+ callback(EVP_aes_192_gcm(), "AES-192-GCM", NULL, arg);
|
||||
+ callback(EVP_aes_256_gcm(), "AES-256-GCM", NULL, arg);
|
||||
callback(EVP_des_cbc(), "DES-CBC", NULL, arg);
|
||||
callback(EVP_des_ecb(), "DES-ECB", NULL, arg);
|
||||
callback(EVP_des_ede(), "DES-EDE", NULL, arg);
|
||||
@@ -41,15 +47,21 @@ void EVP_CIPHER_do_all_sorted(void (*callback)(const EVP_CIPHER *cipher,
|
||||
// OpenSSL returns everything twice, the second time in lower case.
|
||||
callback(EVP_aes_128_cbc(), "aes-128-cbc", NULL, arg);
|
||||
callback(EVP_aes_128_cfb128(), "aes-128-cfb", NULL, arg);
|
||||
- callback(EVP_aes_128_ctr(), "aes-128-ctr", NULL, arg);
|
||||
- callback(EVP_aes_128_ecb(), "aes-128-ecb", NULL, arg);
|
||||
- callback(EVP_aes_128_ofb(), "aes-128-ofb", NULL, arg);
|
||||
+ callback(EVP_aes_192_cbc(), "aes-192-cbc", NULL, arg);
|
||||
callback(EVP_aes_256_cbc(), "aes-256-cbc", NULL, arg);
|
||||
+ callback(EVP_aes_128_ctr(), "aes-128-ctr", NULL, arg);
|
||||
+ callback(EVP_aes_192_ctr(), "aes-192-ctr", NULL, arg);
|
||||
callback(EVP_aes_256_cfb128(), "aes-256-cfb", NULL, arg);
|
||||
callback(EVP_aes_256_ctr(), "aes-256-ctr", NULL, arg);
|
||||
+ callback(EVP_aes_128_ecb(), "aes-128-ecb", NULL, arg);
|
||||
+ callback(EVP_aes_192_ecb(), "aes-192-ecb", NULL, arg);
|
||||
callback(EVP_aes_256_ecb(), "aes-256-ecb", NULL, arg);
|
||||
+ callback(EVP_aes_128_ofb(), "aes-128-ofb", NULL, arg);
|
||||
+ callback(EVP_aes_192_ofb(), "aes-192-ofb", NULL, arg);
|
||||
callback(EVP_aes_256_ofb(), "aes-256-ofb", NULL, arg);
|
||||
- callback(EVP_aes_256_xts(), "aes-256-xts", NULL, arg);
|
||||
+ callback(EVP_aes_128_gcm(), "aes-128-gcm", NULL, arg);
|
||||
+ callback(EVP_aes_192_gcm(), "aes-192-gcm", NULL, arg);
|
||||
+ callback(EVP_aes_256_gcm(), "aes-256-gcm", NULL, arg);
|
||||
callback(EVP_des_cbc(), "des-cbc", NULL, arg);
|
||||
callback(EVP_des_ecb(), "des-ecb", NULL, arg);
|
||||
callback(EVP_des_ede(), "des-ede", NULL, arg);
|
|
@ -69,9 +69,7 @@ disable_color_correct_rendering.patch
|
|||
disable_time_ticks_dcheck.patch
|
||||
autofill_size_calculation.patch
|
||||
revert_build_swiftshader_for_arm32.patch
|
||||
fix_backup_includes_for_ptrace_get_thread_area_on_arm_arm64.patch
|
||||
color_chooser_mac.patch
|
||||
color_chooser_win.patch
|
||||
fix_disable_usage_of_abort_report_np_in_mas_builds.patch
|
||||
fix_disable_usage_of_pthread_fchdir_np_and_pthread_chdir_np_in_mas.patch
|
||||
fix_disable_usage_of_setapplicationisdaemon_and.patch
|
||||
fix_build_on_arm.patch
|
||||
|
|
|
@ -39,10 +39,10 @@ index 2aef366ac8194aa261cbca6abc051f7da8a988d3..3c7d66c81032636abcca4f1538ce9b7f
|
|||
|
||||
GIN_EXPORT static ArrayBufferAllocator* SharedInstance();
|
||||
diff --git a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
|
||||
index bec05f5222c6653f6f42c87a2f71e4aa0f244b5e..96533b347ca9e1e140fb019a2b95093d5e1aee73 100644
|
||||
index 4a8ed5153449a668c810613fc384eb7952772db1..a426fb833c6b2ccc50f2738dab1764f0306a180f 100644
|
||||
--- a/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
|
||||
+++ b/third_party/blink/renderer/bindings/core/v8/v8_initializer.cc
|
||||
@@ -649,6 +649,10 @@ class ArrayBufferAllocator : public v8::ArrayBuffer::Allocator {
|
||||
@@ -650,6 +650,10 @@ class ArrayBufferAllocator : public v8::ArrayBuffer::Allocator {
|
||||
size, WTF::ArrayBufferContents::kDontInitialize);
|
||||
}
|
||||
|
||||
|
@ -54,10 +54,10 @@ index bec05f5222c6653f6f42c87a2f71e4aa0f244b5e..96533b347ca9e1e140fb019a2b95093d
|
|||
WTF::ArrayBufferContents::FreeMemory(data);
|
||||
}
|
||||
diff --git a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.cc b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.cc
|
||||
index 5a8dbf109f4f7eb682c23bf24c391b70a7717a0c..e0b33e815f2eb98aa494a8489543acdb873e1597 100644
|
||||
index 0031242152ce5190b0dfc77b53af2d984e5fad82..a6370ec793ce6c38eb7dab189583ea11cca51c1f 100644
|
||||
--- a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.cc
|
||||
+++ b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.cc
|
||||
@@ -122,6 +122,11 @@ void* ArrayBufferContents::AllocateMemoryOrNull(size_t size,
|
||||
@@ -130,6 +130,11 @@ void* ArrayBufferContents::AllocateMemoryOrNull(size_t size,
|
||||
return AllocateMemoryWithFlags(size, policy, base::PartitionAllocReturnNull);
|
||||
}
|
||||
|
||||
|
@ -70,10 +70,10 @@ index 5a8dbf109f4f7eb682c23bf24c391b70a7717a0c..e0b33e815f2eb98aa494a8489543acdb
|
|||
Partitions::ArrayBufferPartition()->Free(data);
|
||||
}
|
||||
diff --git a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h
|
||||
index 3cc1abe8e48c8e45d1f3ebb98a6a6ea1a4e3fbd9..1e2438cc6da97a89fefc86148bb1037d3c84f765 100644
|
||||
index 98bda6647e7b1516ab6114ebc63f5c60da3ebbb7..37dacadc262e15714f8e3e090b780c8abf22283e 100644
|
||||
--- a/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h
|
||||
+++ b/third_party/blink/renderer/platform/wtf/typed_arrays/array_buffer_contents.h
|
||||
@@ -134,6 +134,7 @@ class WTF_EXPORT ArrayBufferContents {
|
||||
@@ -135,6 +135,7 @@ class WTF_EXPORT ArrayBufferContents {
|
||||
void CopyTo(ArrayBufferContents& other);
|
||||
|
||||
static void* AllocateMemoryOrNull(size_t, InitializationPolicy);
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: allow_webview_file_url.patch
|
|||
Allow webview to load non-web URLs.
|
||||
|
||||
diff --git a/content/browser/loader/resource_dispatcher_host_impl.cc b/content/browser/loader/resource_dispatcher_host_impl.cc
|
||||
index a206be71b8d9f28d659000cd2ea72cdb8f876e07..f4ad084900723a5c0cf78affae7744d8039a8395 100644
|
||||
index f6d8cf0e1b7373498739d6821a4b6b2725cf3c5c..3144e81cdb79b0b235385701c2eb81b6b9017213 100644
|
||||
--- a/content/browser/loader/resource_dispatcher_host_impl.cc
|
||||
+++ b/content/browser/loader/resource_dispatcher_host_impl.cc
|
||||
@@ -1447,6 +1447,8 @@ void ResourceDispatcherHostImpl::BeginNavigationRequest(
|
||||
@@ -1536,6 +1536,8 @@ void ResourceDispatcherHostImpl::BeginNavigationRequest(
|
||||
!policy->IsWebSafeScheme(info.common_params.url.scheme()) &&
|
||||
!is_external_protocol;
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: blink-worker-enable-csp-in-file-scheme.patch
|
|||
|
||||
|
||||
diff --git a/third_party/blink/renderer/core/workers/worker_classic_script_loader.cc b/third_party/blink/renderer/core/workers/worker_classic_script_loader.cc
|
||||
index c404b0a5966416599a62075e0a616fda368e07ec..98a3e02f1335dd7256b7926bc6e7774c79e00d4a 100644
|
||||
index 6575793a7df4eed2b1cc1cd59c559c591648c478..bf00aeb1df1dea4668a2d6645aefb578d1fc86e2 100644
|
||||
--- a/third_party/blink/renderer/core/workers/worker_classic_script_loader.cc
|
||||
+++ b/third_party/blink/renderer/core/workers/worker_classic_script_loader.cc
|
||||
@@ -308,7 +308,6 @@ void WorkerClassicScriptLoader::ProcessContentSecurityPolicy(
|
||||
@@ -307,7 +307,6 @@ void WorkerClassicScriptLoader::ProcessContentSecurityPolicy(
|
||||
// document (which is implemented in WorkerMessagingProxy, and
|
||||
// m_contentSecurityPolicy should be left as nullptr to inherit the policy).
|
||||
if (!response.CurrentRequestUrl().ProtocolIs("blob") &&
|
||||
|
|
|
@ -7,10 +7,10 @@ This is used by editors to obtain the filesystem path from a dragged file. See
|
|||
documentation at https://electronjs.org/docs/api/file-object
|
||||
|
||||
diff --git a/third_party/blink/renderer/core/fileapi/file.h b/third_party/blink/renderer/core/fileapi/file.h
|
||||
index 2ca09ab8903d56b466e186203279e865ed4dd058..d522b53111a1c452220a1ca08ffcc7206adaa309 100644
|
||||
index 474c226bcd74a4f9d0d3e2bc2373ccfb1970fc24..5ee32f4b4ffebe4a9824726d2f06f509ded9dcb5 100644
|
||||
--- a/third_party/blink/renderer/core/fileapi/file.h
|
||||
+++ b/third_party/blink/renderer/core/fileapi/file.h
|
||||
@@ -193,6 +193,9 @@ class CORE_EXPORT File final : public Blob {
|
||||
@@ -202,6 +202,9 @@ class CORE_EXPORT File final : public Blob {
|
||||
}
|
||||
const String& name() const { return name_; }
|
||||
|
||||
|
|
|
@ -10,10 +10,10 @@ to fix electron/electron#13787. The backport landed in Chromium 67 but the
|
|||
DidCreateScriptContext re-ordering needs to be upstreamed or kept indefinitely
|
||||
|
||||
diff --git a/third_party/blink/renderer/bindings/core/v8/local_window_proxy.cc b/third_party/blink/renderer/bindings/core/v8/local_window_proxy.cc
|
||||
index 9c3e848f01aef165c21a6d6043b6f9038d31cb66..7c16e8da1052b50f36da8102fdd8b9206dd7883d 100644
|
||||
index ea4d47ef7ed58f2be638a6fbae7c12e1ee5b4c77..c02e5fcf72486600702a5ac39af2a13c1b255b4b 100644
|
||||
--- a/third_party/blink/renderer/bindings/core/v8/local_window_proxy.cc
|
||||
+++ b/third_party/blink/renderer/bindings/core/v8/local_window_proxy.cc
|
||||
@@ -190,11 +190,10 @@ void LocalWindowProxy::Initialize() {
|
||||
@@ -202,11 +202,10 @@ void LocalWindowProxy::Initialize() {
|
||||
GetFrame()->IsMainFrame());
|
||||
MainThreadDebugger::Instance()->ContextCreated(script_state_, GetFrame(),
|
||||
origin);
|
||||
|
|
|
@ -14,10 +14,10 @@ when there is code doing that.
|
|||
This patch reverts the change to fix the crash in Electron.
|
||||
|
||||
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
|
||||
index 9c8ffb99f78ef29df08e139551af984dc23e9de2..8196880b6da930557d22f4c29a6de35c1aa7a763 100644
|
||||
index d696925e6f5dae9ca6406a15766826ee8e42475c..f592b0e7fa3c32d66dd0247e1492a973a1583d59 100644
|
||||
--- a/third_party/blink/renderer/core/frame/local_frame.cc
|
||||
+++ b/third_party/blink/renderer/core/frame/local_frame.cc
|
||||
@@ -403,10 +403,6 @@ void LocalFrame::DetachImpl(FrameDetachType type) {
|
||||
@@ -409,10 +409,6 @@ void LocalFrame::DetachImpl(FrameDetachType type) {
|
||||
}
|
||||
CHECK(!view_ || !view_->IsAttached());
|
||||
|
||||
|
@ -28,7 +28,7 @@ index 9c8ffb99f78ef29df08e139551af984dc23e9de2..8196880b6da930557d22f4c29a6de35c
|
|||
if (!Client())
|
||||
return;
|
||||
|
||||
@@ -424,6 +420,10 @@ void LocalFrame::DetachImpl(FrameDetachType type) {
|
||||
@@ -430,6 +426,10 @@ void LocalFrame::DetachImpl(FrameDetachType type) {
|
||||
// Notify ScriptController that the frame is closing, since its cleanup ends
|
||||
// up calling back to LocalFrameClient via WindowProxy.
|
||||
GetScriptController().ClearForClose();
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: blink_world_context.patch
|
|||
|
||||
|
||||
diff --git a/third_party/blink/public/web/web_local_frame.h b/third_party/blink/public/web/web_local_frame.h
|
||||
index 0c72c57ac767b84626476e929308148714098c4e..1fb098418471a6c9919ec40792bbb8676d3a8932 100644
|
||||
index fa0fca68d181f6783bb88e99f42697d5efbd3a49..93630884c3a3a4441645d76742796322f39653c3 100644
|
||||
--- a/third_party/blink/public/web/web_local_frame.h
|
||||
+++ b/third_party/blink/public/web/web_local_frame.h
|
||||
@@ -341,6 +341,9 @@ class WebLocalFrame : public WebFrame {
|
||||
@@ -348,6 +348,9 @@ class WebLocalFrame : public WebFrame {
|
||||
// be calling this API.
|
||||
virtual v8::Local<v8::Context> MainWorldScriptContext() const = 0;
|
||||
|
||||
|
@ -19,10 +19,10 @@ index 0c72c57ac767b84626476e929308148714098c4e..1fb098418471a6c9919ec40792bbb867
|
|||
// that the script evaluated to with callback. Script execution can be
|
||||
// suspend.
|
||||
diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
|
||||
index 6197e91bd3c15d82b71227b96ecc1e8a36545b99..d2c607da86c2f18a18746fd2d9b5736d36738dc2 100644
|
||||
index 699af61cbfc80a0e88ccf692c0a4eccca12b0c8a..68fbdd861dc991bf1ab91775336e7a9f6889a0a7 100644
|
||||
--- a/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
|
||||
+++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.cc
|
||||
@@ -888,6 +888,13 @@ v8::Local<v8::Object> WebLocalFrameImpl::GlobalProxy() const {
|
||||
@@ -891,6 +891,13 @@ v8::Local<v8::Object> WebLocalFrameImpl::GlobalProxy() const {
|
||||
return MainWorldScriptContext()->Global();
|
||||
}
|
||||
|
||||
|
@ -37,10 +37,10 @@ index 6197e91bd3c15d82b71227b96ecc1e8a36545b99..d2c607da86c2f18a18746fd2d9b5736d
|
|||
return BindingSecurity::ShouldAllowAccessToFrame(
|
||||
CurrentDOMWindow(V8PerIsolateData::MainThreadIsolate()),
|
||||
diff --git a/third_party/blink/renderer/core/frame/web_local_frame_impl.h b/third_party/blink/renderer/core/frame/web_local_frame_impl.h
|
||||
index d5e92aad674932782b25767ec084cb05bd39eaef..1cdb948af95c7716ad9b53ee33ea11c746f68443 100644
|
||||
index 1d365801c7094a1ea091b1ecfea7ab3d3527bcec..b0df9b3ca6d33fd187a3cbcd750603e4a7db98d3 100644
|
||||
--- a/third_party/blink/renderer/core/frame/web_local_frame_impl.h
|
||||
+++ b/third_party/blink/renderer/core/frame/web_local_frame_impl.h
|
||||
@@ -145,6 +145,8 @@ class CORE_EXPORT WebLocalFrameImpl final
|
||||
@@ -148,6 +148,8 @@ class CORE_EXPORT WebLocalFrameImpl final
|
||||
int argc,
|
||||
v8::Local<v8::Value> argv[]) override;
|
||||
v8::Local<v8::Context> MainWorldScriptContext() const override;
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: boringssl BUILD.gn
|
|||
Build BoringSSL with some extra functions that nodejs needs.
|
||||
|
||||
diff --git a/third_party/boringssl/BUILD.gn b/third_party/boringssl/BUILD.gn
|
||||
index 8d460717d4c5d2ee56a10689f3d4cead9740ae36..fe8753c128759b9b0421238cabf89a990e600735 100644
|
||||
index 051b3ed07fa7d4ec2e5f9200dab6843176e55d56..edf567e79c88fbe66acf4aabd3952cb8adcab4af 100644
|
||||
--- a/third_party/boringssl/BUILD.gn
|
||||
+++ b/third_party/boringssl/BUILD.gn
|
||||
@@ -45,6 +45,19 @@ config("no_asm_config") {
|
||||
|
|
|
@ -29,7 +29,7 @@ diff --git a/content/browser/renderer_host/browser_compositor_view_mac.mm b/cont
|
|||
index 0817b4eca4f4e6f7f5d250589c1e4dbcc068237c..dcc2340e59771e8d73de7e97fa2371d8bec7b149 100644
|
||||
--- a/content/browser/renderer_host/browser_compositor_view_mac.mm
|
||||
+++ b/content/browser/renderer_host/browser_compositor_view_mac.mm
|
||||
@@ -79,6 +79,12 @@ BrowserCompositorMac::~BrowserCompositorMac() {
|
||||
@@ -79,6 +79,12 @@
|
||||
DCHECK_EQ(1u, num_erased);
|
||||
}
|
||||
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: can_create_window.patch
|
|||
|
||||
|
||||
diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc
|
||||
index fcda9392b8a0cb24f80d64280432405f0b7d29e5..b804a7d118c2de6aa775d1b94b70f8208442261f 100644
|
||||
index ca7881b3b3cd06b9dc89abc477d560a288fe5423..69081399bf0f746a0fd447ac5f8ec360664195ad 100644
|
||||
--- a/content/browser/frame_host/render_frame_host_impl.cc
|
||||
+++ b/content/browser/frame_host/render_frame_host_impl.cc
|
||||
@@ -3746,6 +3746,7 @@ void RenderFrameHostImpl::CreateNewWindow(
|
||||
@@ -3654,6 +3654,7 @@ void RenderFrameHostImpl::CreateNewWindow(
|
||||
last_committed_origin_, params->window_container_type,
|
||||
params->target_url, params->referrer.To<Referrer>(),
|
||||
params->frame_name, params->disposition, *params->features,
|
||||
|
@ -17,10 +17,10 @@ index fcda9392b8a0cb24f80d64280432405f0b7d29e5..b804a7d118c2de6aa775d1b94b70f820
|
|||
&no_javascript_access);
|
||||
|
||||
diff --git a/content/common/frame.mojom b/content/common/frame.mojom
|
||||
index e566a15b798e2586fa4fae3c4db97ce5f4f2f09f..08f52fd73bc9b6231a75f7804bb9b9f367bca62e 100644
|
||||
index f660470b2c612f89a3ad9f0ada4ab13710705b57..45c38198e8fcc44d71ef9440e38d301f8d4951a3 100644
|
||||
--- a/content/common/frame.mojom
|
||||
+++ b/content/common/frame.mojom
|
||||
@@ -226,6 +226,10 @@ struct CreateNewWindowParams {
|
||||
@@ -229,6 +229,10 @@ struct CreateNewWindowParams {
|
||||
|
||||
// The window features to use for the new window.
|
||||
blink.mojom.WindowFeatures features;
|
||||
|
@ -32,10 +32,10 @@ index e566a15b798e2586fa4fae3c4db97ce5f4f2f09f..08f52fd73bc9b6231a75f7804bb9b9f3
|
|||
|
||||
// Operation result when the renderer asks the browser to create a new window.
|
||||
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
|
||||
index 07d71b3a06f9b3b7ab4ea4f16a27fc82e51c2a6c..9d00218ae972b34073c84f2de78dee934962c3d8 100644
|
||||
index b37de5fbf84131cdcb2ee073e746fb18f0f1fc35..b6c528126bde8c7ee8cdf8440ae51cfe1a742b9a 100644
|
||||
--- a/content/public/browser/content_browser_client.cc
|
||||
+++ b/content/public/browser/content_browser_client.cc
|
||||
@@ -494,6 +494,8 @@ bool ContentBrowserClient::CanCreateWindow(
|
||||
@@ -501,6 +501,8 @@ bool ContentBrowserClient::CanCreateWindow(
|
||||
const std::string& frame_name,
|
||||
WindowOpenDisposition disposition,
|
||||
const blink::mojom::WindowFeatures& features,
|
||||
|
@ -45,18 +45,18 @@ index 07d71b3a06f9b3b7ab4ea4f16a27fc82e51c2a6c..9d00218ae972b34073c84f2de78dee93
|
|||
bool opener_suppressed,
|
||||
bool* no_javascript_access) {
|
||||
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
|
||||
index eaa7d8b25141f8f2d461f0b37054c772c8df6297..09aca495389e48a8dbc1ea45b8bb636aa13d2486 100644
|
||||
index 7fc0a70f4e79544a9cc8dfcc1fa5f670261c4e56..72944bc96a2ec71be1b20fa68e7994445f225824 100644
|
||||
--- a/content/public/browser/content_browser_client.h
|
||||
+++ b/content/public/browser/content_browser_client.h
|
||||
@@ -171,6 +171,7 @@ class RenderFrameHost;
|
||||
@@ -175,6 +175,7 @@ class RenderFrameHost;
|
||||
class RenderProcessHost;
|
||||
class RenderViewHost;
|
||||
class ResourceContext;
|
||||
+class ResourceRequestBody;
|
||||
class SerialDelegate;
|
||||
class ServiceManagerConnection;
|
||||
class SiteInstance;
|
||||
class SpeechRecognitionManagerDelegate;
|
||||
@@ -788,6 +789,8 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
@@ -775,6 +776,8 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
const std::string& frame_name,
|
||||
WindowOpenDisposition disposition,
|
||||
const blink::mojom::WindowFeatures& features,
|
||||
|
@ -66,7 +66,7 @@ index eaa7d8b25141f8f2d461f0b37054c772c8df6297..09aca495389e48a8dbc1ea45b8bb636a
|
|||
bool opener_suppressed,
|
||||
bool* no_javascript_access);
|
||||
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
|
||||
index eb0a039e0fa10a1e48687a3a9b6fc5fdb273b66f..be7cdc11cf9e8d40a438fd09990257d934d64ce4 100644
|
||||
index 91c52f9d202efd6232ac602e5dc847737695471d..b71bbc613bdd573546b2cfa89b98220a434169c5 100644
|
||||
--- a/content/renderer/render_view_impl.cc
|
||||
+++ b/content/renderer/render_view_impl.cc
|
||||
@@ -76,6 +76,7 @@
|
||||
|
@ -77,7 +77,7 @@ index eb0a039e0fa10a1e48687a3a9b6fc5fdb273b66f..be7cdc11cf9e8d40a438fd09990257d9
|
|||
#include "content/renderer/media/audio/audio_device_factory.h"
|
||||
#include "content/renderer/media/stream/media_stream_device_observer.h"
|
||||
#include "content/renderer/media/video_capture_impl_manager.h"
|
||||
@@ -1347,6 +1348,8 @@ WebView* RenderViewImpl::CreateView(
|
||||
@@ -1346,6 +1347,8 @@ WebView* RenderViewImpl::CreateView(
|
||||
}
|
||||
params->features = ConvertWebWindowFeaturesToMojoWindowFeatures(features);
|
||||
|
||||
|
@ -87,10 +87,10 @@ index eb0a039e0fa10a1e48687a3a9b6fc5fdb273b66f..be7cdc11cf9e8d40a438fd09990257d9
|
|||
// moved on send.
|
||||
bool is_background_tab =
|
||||
diff --git a/content/shell/browser/web_test/web_test_content_browser_client.cc b/content/shell/browser/web_test/web_test_content_browser_client.cc
|
||||
index 5352c9ccd0cf0cc13fd06397bef1a91dc987b46c..486ce0eb0400f5dd0bac5eda9f7def226e7efbba 100644
|
||||
index 9e738f90c516cfec18816a183f1a2ab615827307..7e04c82967e3458be32345e683af33b9abc5289e 100644
|
||||
--- a/content/shell/browser/web_test/web_test_content_browser_client.cc
|
||||
+++ b/content/shell/browser/web_test/web_test_content_browser_client.cc
|
||||
@@ -298,6 +298,8 @@ bool WebTestContentBrowserClient::CanCreateWindow(
|
||||
@@ -299,6 +299,8 @@ bool WebTestContentBrowserClient::CanCreateWindow(
|
||||
const std::string& frame_name,
|
||||
WindowOpenDisposition disposition,
|
||||
const blink::mojom::WindowFeatures& features,
|
||||
|
@ -100,7 +100,7 @@ index 5352c9ccd0cf0cc13fd06397bef1a91dc987b46c..486ce0eb0400f5dd0bac5eda9f7def22
|
|||
bool opener_suppressed,
|
||||
bool* no_javascript_access) {
|
||||
diff --git a/content/shell/browser/web_test/web_test_content_browser_client.h b/content/shell/browser/web_test/web_test_content_browser_client.h
|
||||
index ad388b224dc8dec395a9ea82c67ad4031851a2cc..d5cfe02d61dd28c49f4a5e2714f03cd4ebe9e119 100644
|
||||
index 1eeb9dafd62e163c7458352de31c62dbd1293f32..0d46e75cdf0a1ef573e733432a4613da850d6f4d 100644
|
||||
--- a/content/shell/browser/web_test/web_test_content_browser_client.h
|
||||
+++ b/content/shell/browser/web_test/web_test_content_browser_client.h
|
||||
@@ -67,6 +67,8 @@ class WebTestContentBrowserClient : public ShellContentBrowserClient {
|
||||
|
|
|
@ -1,186 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Benedek Heilig <benecene@gmail.com>
|
||||
Date: Thu, 21 Feb 2019 17:04:30 +0000
|
||||
Subject: fix a crash when using color chooser on macos
|
||||
|
||||
Backports an upstream fix I made to the color chooser dialog on macos.
|
||||
This can be removed once that fix lands in a chromium version we use.
|
||||
Below is the original commit message:
|
||||
|
||||
Fix crash when closing color chooser dialog on macos
|
||||
|
||||
For some reason, closing the color chooser dialog caused a crash on
|
||||
macos. By using NSNotificationCenter instead of providing a delegate
|
||||
the crash goes away. I got the idea for this from the comment about the
|
||||
__target method already in the code.
|
||||
|
||||
Change-Id: Ide35a455ff12decc9dd83b30c80b584ab376242b
|
||||
|
||||
diff --git a/AUTHORS b/AUTHORS
|
||||
index 374b1a177f30d0c4b415d5c9c0fc4e4673414d39..436be8a093831020453285f0c476dcf9bd42fe8d 100644
|
||||
--- a/AUTHORS
|
||||
+++ b/AUTHORS
|
||||
@@ -114,6 +114,7 @@ Ben Coe <bencoe@gmail.com>
|
||||
Ben Fiola <benfiola@gmail.com>
|
||||
Ben Karel <eschew@gmail.com>
|
||||
Ben Noordhuis <ben@strongloop.com>
|
||||
+Benedek Heilig <benecene@gmail.com>
|
||||
Benjamin Dupont <bedupont@cisco.com>
|
||||
Benjamin Jemlich <pcgod99@gmail.com>
|
||||
Bernard Cafarelli <voyageur@gentoo.org>
|
||||
diff --git a/chrome/browser/ui/cocoa/color_chooser_mac.h b/chrome/browser/ui/cocoa/color_chooser_mac.h
|
||||
index 511000dc7855938ceab31694149ddf9e2125e0e4..9dbcc9fe41786555f0fb16ac47c71ee8851c8dd5 100644
|
||||
--- a/chrome/browser/ui/cocoa/color_chooser_mac.h
|
||||
+++ b/chrome/browser/ui/cocoa/color_chooser_mac.h
|
||||
@@ -15,7 +15,7 @@ class ColorChooserMac;
|
||||
|
||||
// A Listener class to act as a event target for NSColorPanel and send
|
||||
// the results to the C++ class, ColorChooserMac.
|
||||
-@interface ColorPanelCocoa : NSObject<NSWindowDelegate> {
|
||||
+@interface ColorPanelCocoa : NSObject {
|
||||
@protected
|
||||
// We don't call DidChooseColor if the change wasn't caused by the user
|
||||
// interacting with the panel.
|
||||
@@ -26,6 +26,8 @@ class ColorChooserMac;
|
||||
|
||||
- (id)initWithChooser:(ColorChooserMac*)chooser;
|
||||
|
||||
+- (void)windowWillClose:(NSNotification*)notification;
|
||||
+
|
||||
// Called from NSColorPanel.
|
||||
- (void)didChooseColor:(NSColorPanel*)panel;
|
||||
|
||||
@@ -45,7 +47,7 @@ class ColorChooserMac : public content::ColorChooser {
|
||||
|
||||
// Called from ColorPanelCocoa.
|
||||
void DidChooseColorInColorPanel(SkColor color);
|
||||
- void DidCloseColorPabel();
|
||||
+ void DidCloseColorPanel();
|
||||
|
||||
// Set the color programmatically.
|
||||
void SetSelectedColor(SkColor color) override;
|
||||
diff --git a/chrome/browser/ui/cocoa/color_chooser_mac.mm b/chrome/browser/ui/cocoa/color_chooser_mac.mm
|
||||
index bf47154f0a880f1c6143065e5c6d060f1df73765..e7cdab7a23d96345cc6e8ec578a8616d132b7d51 100644
|
||||
--- a/chrome/browser/ui/cocoa/color_chooser_mac.mm
|
||||
+++ b/chrome/browser/ui/cocoa/color_chooser_mac.mm
|
||||
@@ -39,16 +39,18 @@ void ColorChooserMac::DidChooseColorInColorPanel(SkColor color) {
|
||||
web_contents_->DidChooseColorInColorChooser(color);
|
||||
}
|
||||
|
||||
-void ColorChooserMac::DidCloseColorPabel() {
|
||||
+void ColorChooserMac::DidCloseColorPanel() {
|
||||
End();
|
||||
}
|
||||
|
||||
void ColorChooserMac::End() {
|
||||
- panel_.reset();
|
||||
- DCHECK(current_color_chooser_ == this);
|
||||
- current_color_chooser_ = NULL;
|
||||
- if (web_contents_)
|
||||
+ if (panel_) {
|
||||
+ panel_.reset();
|
||||
+ DCHECK(current_color_chooser_ == this);
|
||||
+ current_color_chooser_ = NULL;
|
||||
+ if (web_contents_)
|
||||
web_contents_->DidEndColorChooser();
|
||||
+ }
|
||||
}
|
||||
|
||||
void ColorChooserMac::SetSelectedColor(SkColor color) {
|
||||
@@ -67,9 +69,14 @@ void ColorChooserMac::SetSelectedColor(SkColor color) {
|
||||
chooser_ = chooser;
|
||||
NSColorPanel* panel = [NSColorPanel sharedColorPanel];
|
||||
[panel setShowsAlpha:NO];
|
||||
- [panel setDelegate:self];
|
||||
[panel setTarget:self];
|
||||
[panel setAction:@selector(didChooseColor:)];
|
||||
+
|
||||
+ [[NSNotificationCenter defaultCenter]
|
||||
+ addObserver:self
|
||||
+ selector:@selector(windowWillClose:)
|
||||
+ name:NSWindowWillCloseNotification
|
||||
+ object:panel];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
@@ -82,19 +89,21 @@ void ColorChooserMac::SetSelectedColor(SkColor color) {
|
||||
// the ColorPanelCocoa is still the target.
|
||||
BOOL respondsToPrivateTargetMethod =
|
||||
[panel respondsToSelector:@selector(__target)];
|
||||
-
|
||||
- if ([panel delegate] == self ||
|
||||
- (respondsToPrivateTargetMethod && [panel __target] == self)) {
|
||||
- [panel setDelegate:nil];
|
||||
+ if (respondsToPrivateTargetMethod && [panel __target] == self) {
|
||||
[panel setTarget:nil];
|
||||
[panel setAction:nullptr];
|
||||
}
|
||||
|
||||
+ [[NSNotificationCenter defaultCenter]
|
||||
+ removeObserver:self
|
||||
+ name:NSWindowWillCloseNotification
|
||||
+ object:panel];
|
||||
+
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (void)windowWillClose:(NSNotification*)notification {
|
||||
- chooser_->DidCloseColorPabel();
|
||||
+ chooser_->DidCloseColorPanel();
|
||||
nonUserChange_ = NO;
|
||||
}
|
||||
|
||||
diff --git a/chrome/browser/ui/cocoa/color_panel_cocoa_unittest.mm b/chrome/browser/ui/cocoa/color_panel_cocoa_unittest.mm
|
||||
index 83185ceb9bbd29bf38fce7f72c23f3a5b15ba6c8..823365fdfc0bceceeed6f5edc00b3462715a4751 100644
|
||||
--- a/chrome/browser/ui/cocoa/color_panel_cocoa_unittest.mm
|
||||
+++ b/chrome/browser/ui/cocoa/color_panel_cocoa_unittest.mm
|
||||
@@ -28,28 +28,6 @@ class ColorPanelCocoaTest : public CocoaTest {
|
||||
}
|
||||
};
|
||||
|
||||
-TEST_F(ColorPanelCocoaTest, ClearTargetAndDelegateOnEnd) {
|
||||
- NSColorPanel* nscolor_panel = [NSColorPanel sharedColorPanel];
|
||||
- @autoreleasepool {
|
||||
- EXPECT_TRUE([nscolor_panel respondsToSelector:@selector(__target)]);
|
||||
-
|
||||
- // Create a ColorPanelCocoa.
|
||||
- ColorChooserMac* color_chooser_mac =
|
||||
- ColorChooserMac::Open(nullptr, SK_ColorBLACK);
|
||||
-
|
||||
- // Confirm the NSColorPanel's configuration by the ColorChooserMac's
|
||||
- // ColorPanelCocoa.
|
||||
- EXPECT_TRUE([nscolor_panel delegate]);
|
||||
- EXPECT_TRUE([nscolor_panel __target]);
|
||||
-
|
||||
- // Release the ColorPanelCocoa and confirm it's no longer the NSColorPanel's
|
||||
- // target or delegate.
|
||||
- color_chooser_mac->End();
|
||||
- }
|
||||
- EXPECT_EQ([nscolor_panel delegate], nil);
|
||||
- EXPECT_EQ([nscolor_panel __target], nil);
|
||||
-}
|
||||
-
|
||||
TEST_F(ColorPanelCocoaTest, ClearTargetOnEnd) {
|
||||
NSColorPanel* nscolor_panel = [NSColorPanel sharedColorPanel];
|
||||
@autoreleasepool {
|
||||
@@ -61,19 +39,12 @@ TEST_F(ColorPanelCocoaTest, ClearTargetOnEnd) {
|
||||
|
||||
// Confirm the NSColorPanel's configuration by the ColorChooserMac's
|
||||
// ColorPanelCocoa.
|
||||
- EXPECT_TRUE([nscolor_panel delegate]);
|
||||
EXPECT_TRUE([nscolor_panel __target]);
|
||||
|
||||
- // Clear the delegate and release the ColorPanelCocoa.
|
||||
- [nscolor_panel setDelegate:nil];
|
||||
-
|
||||
// Release the ColorPanelCocoa.
|
||||
color_chooser_mac->End();
|
||||
}
|
||||
- // Confirm the ColorPanelCocoa is no longer the NSColorPanel's target or
|
||||
- // delegate. Previously the ColorPanelCocoa would not clear the target if
|
||||
- // the delegate had already been cleared.
|
||||
- EXPECT_EQ([nscolor_panel delegate], nil);
|
||||
+ // Confirm the ColorPanelCocoa is no longer the NSColorPanel's target
|
||||
EXPECT_EQ([nscolor_panel __target], nil);
|
||||
}
|
||||
|
|
@ -1,92 +0,0 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Benedek Heilig <benecene@gmail.com>
|
||||
Date: Thu, 21 Feb 2019 17:16:33 +0000
|
||||
Subject: fix some DCHECKs on Windows when using color chooser dialog
|
||||
|
||||
Backports an upstream fix I made to the color chooser dialog on
|
||||
Windows. This can be removed once that fix lands in a chromium version we
|
||||
use. Below is the original commit message:
|
||||
|
||||
Fix DCHECKs being triggered while using color chooser dialog on Windows
|
||||
|
||||
This fixes two DHCECKs being triggered on Windows when using the
|
||||
dialog in a debug build. The main source of these triggered DCHECKs was
|
||||
that when the user closes the dialog, OnColorChooserDialog is called,
|
||||
which calls WebContentsImpl::DidEndColorChooser, which calls End on the
|
||||
dialog, which calls OnColorChooserDialog again. This also happened on
|
||||
macos. The other DCHECK was the receiver->HasAtLeastOneRef() one,
|
||||
because ColorChooserDialog had a PostTask in it's constructor.
|
||||
|
||||
Change-Id: I45ec32083a5850e006034073bc29d7ec4bb63189
|
||||
|
||||
diff --git a/chrome/browser/ui/views/color_chooser_dialog.cc b/chrome/browser/ui/views/color_chooser_dialog.cc
|
||||
index c26be855120fcef78ce995d09fb3965f796746a9..1f568a2657250c5f21ab01da88950eedc6d4e177 100644
|
||||
--- a/chrome/browser/ui/views/color_chooser_dialog.cc
|
||||
+++ b/chrome/browser/ui/views/color_chooser_dialog.cc
|
||||
@@ -24,12 +24,14 @@ using content::BrowserThread;
|
||||
// static
|
||||
COLORREF ColorChooserDialog::g_custom_colors[16];
|
||||
|
||||
-ColorChooserDialog::ColorChooserDialog(views::ColorChooserListener* listener,
|
||||
- SkColor initial_color,
|
||||
- gfx::NativeWindow owning_window)
|
||||
+ColorChooserDialog::ColorChooserDialog(views::ColorChooserListener* listener)
|
||||
: listener_(listener) {
|
||||
DCHECK(listener_);
|
||||
CopyCustomColors(g_custom_colors, custom_colors_);
|
||||
+}
|
||||
+
|
||||
+void ColorChooserDialog::Open(SkColor initial_color,
|
||||
+ gfx::NativeWindow owning_window) {
|
||||
HWND owning_hwnd = views::HWNDForNativeWindow(owning_window);
|
||||
|
||||
std::unique_ptr<RunState> run_state = BeginRun(owning_hwnd);
|
||||
diff --git a/chrome/browser/ui/views/color_chooser_dialog.h b/chrome/browser/ui/views/color_chooser_dialog.h
|
||||
index 838e22dcd1a707714a098320d5bf8174fa60a2ea..b2558ce2a226ccde0f20de9712bf33051b21799c 100644
|
||||
--- a/chrome/browser/ui/views/color_chooser_dialog.h
|
||||
+++ b/chrome/browser/ui/views/color_chooser_dialog.h
|
||||
@@ -23,9 +23,9 @@ class ColorChooserDialog
|
||||
public ui::BaseShellDialog,
|
||||
public ui::BaseShellDialogImpl {
|
||||
public:
|
||||
- ColorChooserDialog(views::ColorChooserListener* listener,
|
||||
- SkColor initial_color,
|
||||
- gfx::NativeWindow owning_window);
|
||||
+ explicit ColorChooserDialog(views::ColorChooserListener* listener);
|
||||
+
|
||||
+ void Open(SkColor initial_color, gfx::NativeWindow owning_window);
|
||||
|
||||
// BaseShellDialog:
|
||||
bool IsRunning(gfx::NativeWindow owning_window) const override;
|
||||
diff --git a/chrome/browser/ui/views/color_chooser_win.cc b/chrome/browser/ui/views/color_chooser_win.cc
|
||||
index 434842ba0f81206a43fb26874930bf7309782890..ffc58eec78dc36e21c2c04aa0b0cd9097541d2f0 100644
|
||||
--- a/chrome/browser/ui/views/color_chooser_win.cc
|
||||
+++ b/chrome/browser/ui/views/color_chooser_win.cc
|
||||
@@ -61,9 +61,8 @@ ColorChooserWin::ColorChooserWin(content::WebContents* web_contents,
|
||||
->GetWidget()
|
||||
->GetView()
|
||||
->GetNativeView());
|
||||
- color_chooser_dialog_ = new ColorChooserDialog(this,
|
||||
- initial_color,
|
||||
- owning_window);
|
||||
+ color_chooser_dialog_ = new ColorChooserDialog(this);
|
||||
+ color_chooser_dialog_->Open(initial_color, owning_window);
|
||||
}
|
||||
|
||||
ColorChooserWin::~ColorChooserWin() {
|
||||
@@ -90,11 +89,11 @@ void ColorChooserWin::OnColorChooserDialogClosed() {
|
||||
if (color_chooser_dialog_.get()) {
|
||||
color_chooser_dialog_->ListenerDestroyed();
|
||||
color_chooser_dialog_ = NULL;
|
||||
+ DCHECK(current_color_chooser_ == this);
|
||||
+ current_color_chooser_ = NULL;
|
||||
+ if (web_contents_)
|
||||
+ web_contents_->DidEndColorChooser();
|
||||
}
|
||||
- DCHECK(current_color_chooser_ == this);
|
||||
- current_color_chooser_ = NULL;
|
||||
- if (web_contents_)
|
||||
- web_contents_->DidEndColorChooser();
|
||||
}
|
||||
|
||||
namespace chrome {
|
|
@ -18,7 +18,7 @@ diff --git a/chrome/browser/extensions/global_shortcut_listener_mac.mm b/chrome/
|
|||
index befe726af9c10b1563a7fc0bb77cc55f65943d5c..46c6fe08bab8471007f78d3ef227e5195bfdf0e1 100644
|
||||
--- a/chrome/browser/extensions/global_shortcut_listener_mac.mm
|
||||
+++ b/chrome/browser/extensions/global_shortcut_listener_mac.mm
|
||||
@@ -21,6 +21,26 @@ using extensions::GlobalShortcutListenerMac;
|
||||
@@ -21,6 +21,26 @@
|
||||
|
||||
namespace extensions {
|
||||
|
||||
|
@ -80,10 +80,10 @@ index 392cf3d58c64c088596e8d321a2ce37b0ec60b6e..43e30f47240dc10a3a9b950255d4e487
|
|||
ui::Accelerator accelerator(
|
||||
ui::KeyboardCodeFromXKeyEvent(x_event), modifiers);
|
||||
diff --git a/ui/base/accelerators/media_keys_listener_mac.mm b/ui/base/accelerators/media_keys_listener_mac.mm
|
||||
index b48fa8e63867021bdd77bf585a0e02c366980d91..bae9e24e7bcf7615be243bcb5629cc5981a31b06 100644
|
||||
index fe6aa25cc8cc372ef450e5d6658a52a2b87eabcb..e960d601062b644c0b25b657e128e06584c45b54 100644
|
||||
--- a/ui/base/accelerators/media_keys_listener_mac.mm
|
||||
+++ b/ui/base/accelerators/media_keys_listener_mac.mm
|
||||
@@ -31,6 +31,12 @@ KeyboardCode MediaKeyCodeToKeyboardCode(int key_code) {
|
||||
@@ -32,6 +32,12 @@ KeyboardCode MediaKeyCodeToKeyboardCode(int key_code) {
|
||||
case NX_KEYTYPE_NEXT:
|
||||
case NX_KEYTYPE_FAST:
|
||||
return VKEY_MEDIA_NEXT_TRACK;
|
||||
|
@ -96,7 +96,7 @@ index b48fa8e63867021bdd77bf585a0e02c366980d91..bae9e24e7bcf7615be243bcb5629cc59
|
|||
}
|
||||
return VKEY_UNKNOWN;
|
||||
}
|
||||
@@ -190,7 +196,10 @@ CGEventRef MediaKeysListenerImpl::EventTapCallback(CGEventTapProxy proxy,
|
||||
@@ -191,7 +197,10 @@ static CGEventRef EventTapCallback(CGEventTapProxy proxy,
|
||||
int key_code = (data1 & 0xFFFF0000) >> 16;
|
||||
if (key_code != NX_KEYTYPE_PLAY && key_code != NX_KEYTYPE_NEXT &&
|
||||
key_code != NX_KEYTYPE_PREVIOUS && key_code != NX_KEYTYPE_FAST &&
|
||||
|
|
|
@ -5,39 +5,40 @@ Subject: compositor_delegate.patch
|
|||
|
||||
|
||||
diff --git a/content/browser/compositor/gpu_process_transport_factory.cc b/content/browser/compositor/gpu_process_transport_factory.cc
|
||||
index 5aeda7bd9caf6b5b9e2a95293e4409dc7f9a6d2d..d15e1462babe97b5d68014f4d67236653046aa5f 100644
|
||||
index bc1934e2c7b40595b0c06d9beace5f4a569e7751..a354265c235bc8c81f3e5ab5b703bf6c7af06187 100644
|
||||
--- a/content/browser/compositor/gpu_process_transport_factory.cc
|
||||
+++ b/content/browser/compositor/gpu_process_transport_factory.cc
|
||||
@@ -485,10 +485,20 @@ void GpuProcessTransportFactory::EstablishedGpuChannel(
|
||||
// surfaces as they are not following the correct mode.
|
||||
DisableGpuCompositing(compositor.get());
|
||||
}
|
||||
@@ -451,11 +451,20 @@ void GpuProcessTransportFactory::EstablishedGpuChannel(
|
||||
// surfaces as they are not following the correct mode.
|
||||
DisableGpuCompositing(compositor.get());
|
||||
}
|
||||
+
|
||||
+ std::unique_ptr<viz::SoftwareOutputDevice> output_device;
|
||||
+ if (compositor->delegate()) {
|
||||
+ output_device = compositor->delegate()->CreateSoftwareOutputDevice(
|
||||
+ compositor.get());
|
||||
+ }
|
||||
+ if (!output_device) {
|
||||
+ output_device = CreateSoftwareOutputDevice(compositor->widget(),
|
||||
+ compositor->task_runner());
|
||||
+ }
|
||||
+ std::unique_ptr<viz::SoftwareOutputDevice> output_device;
|
||||
+ if (compositor->delegate()) {
|
||||
+ output_device =
|
||||
+ compositor->delegate()->CreateSoftwareOutputDevice(compositor.get());
|
||||
+ }
|
||||
+ if (!output_device) {
|
||||
+ output_device = CreateSoftwareOutputDevice(compositor->widget(),
|
||||
+ compositor->task_runner());
|
||||
+ }
|
||||
+
|
||||
display_output_surface =
|
||||
std::make_unique<SoftwareBrowserCompositorOutputSurface>(
|
||||
- CreateSoftwareOutputDevice(compositor->widget(),
|
||||
- compositor->task_runner()),
|
||||
+ std::move(output_device),
|
||||
std::move(vsync_callback));
|
||||
} else {
|
||||
DCHECK(context_provider);
|
||||
display_output_surface =
|
||||
std::make_unique<SoftwareBrowserCompositorOutputSurface>(
|
||||
- CreateSoftwareOutputDevice(compositor->widget(),
|
||||
- compositor->task_runner()),
|
||||
- std::move(vsync_callback));
|
||||
+ std::move(output_device), std::move(vsync_callback));
|
||||
} else {
|
||||
DCHECK(context_provider);
|
||||
const auto& capabilities = context_provider->ContextCapabilities();
|
||||
diff --git a/ui/compositor/compositor.h b/ui/compositor/compositor.h
|
||||
index 313431f82ee7e181dad2c48dd27950129afbb223..b8c2632e49b7b96adbb06a03678961823f0790f6 100644
|
||||
index 29784c677f4be6e4fd7cfb298ab3554d22e1beaa..07b61abe7ce666b5eb6448ef795f838ddb805947 100644
|
||||
--- a/ui/compositor/compositor.h
|
||||
+++ b/ui/compositor/compositor.h
|
||||
@@ -25,6 +25,7 @@
|
||||
#include "components/viz/common/surfaces/frame_sink_id.h"
|
||||
#include "components/viz/common/surfaces/local_surface_id.h"
|
||||
#include "components/viz/common/surfaces/local_surface_id_allocation.h"
|
||||
#include "components/viz/host/host_frame_sink_client.h"
|
||||
+#include "components/viz/service/display/software_output_device.h"
|
||||
#include "third_party/skia/include/core/SkColor.h"
|
||||
|
@ -59,7 +60,7 @@ index 313431f82ee7e181dad2c48dd27950129afbb223..b8c2632e49b7b96adbb06a0367896182
|
|||
// Compositor object to take care of GPU painting.
|
||||
// A Browser compositor object is responsible for generating the final
|
||||
// displayable form of pixels comprising a single widget's contents. It draws an
|
||||
@@ -232,6 +242,9 @@ class COMPOSITOR_EXPORT Compositor : public cc::LayerTreeHostClient,
|
||||
@@ -235,6 +245,9 @@ class COMPOSITOR_EXPORT Compositor : public cc::LayerTreeHostClient,
|
||||
// Schedules a redraw of the layer tree associated with this compositor.
|
||||
void ScheduleDraw();
|
||||
|
||||
|
@ -69,7 +70,7 @@ index 313431f82ee7e181dad2c48dd27950129afbb223..b8c2632e49b7b96adbb06a0367896182
|
|||
// Sets the root of the layer tree drawn by this Compositor. The root layer
|
||||
// must have no parent. The compositor's root layer is reset if the root layer
|
||||
// is destroyed. NULL can be passed to reset the root layer, in which case the
|
||||
@@ -442,6 +455,8 @@ class COMPOSITOR_EXPORT Compositor : public cc::LayerTreeHostClient,
|
||||
@@ -458,6 +471,8 @@ class COMPOSITOR_EXPORT Compositor : public cc::LayerTreeHostClient,
|
||||
ui::ContextFactory* context_factory_;
|
||||
ui::ContextFactoryPrivate* context_factory_private_;
|
||||
|
||||
|
|
|
@ -12,10 +12,10 @@ Without this patch, calling `registerStandardSchemes` during initialization
|
|||
when in debug mode will cause a DCHECK to fire.
|
||||
|
||||
diff --git a/content/app/content_main_runner_impl.cc b/content/app/content_main_runner_impl.cc
|
||||
index a62f2ecf52bb95261750c9236bd2ba1f53d737f4..38b25c5befd88659b2769d69ef1323de60b34ec7 100644
|
||||
index f006f0992df5b8192849799c2d3d546779d87a08..a63b9d5a95960cca15cde5e392cbe06a0325f517 100644
|
||||
--- a/content/app/content_main_runner_impl.cc
|
||||
+++ b/content/app/content_main_runner_impl.cc
|
||||
@@ -749,7 +749,7 @@ int ContentMainRunnerImpl::Initialize(const ContentMainParams& params) {
|
||||
@@ -757,7 +757,7 @@ int ContentMainRunnerImpl::Initialize(const ContentMainParams& params) {
|
||||
#endif
|
||||
|
||||
RegisterPathProvider();
|
||||
|
|
|
@ -8,10 +8,10 @@ run before shutdown. This is required to cleanup WebContents asynchronously
|
|||
in atom::CommonWebContentsDelegate::ResetManageWebContents.
|
||||
|
||||
diff --git a/content/browser/browser_main_loop.cc b/content/browser/browser_main_loop.cc
|
||||
index 5fd14e79ead2a4f00cf3d9bfdb140d066862003d..782cae9f61524732ef93b75ba810ac1555020536 100644
|
||||
index 368011e73ad29bbfdbd2a6d4828ce7635e1929ca..8da6c457e639b3fd0cd5352735cdc7299f682455 100644
|
||||
--- a/content/browser/browser_main_loop.cc
|
||||
+++ b/content/browser/browser_main_loop.cc
|
||||
@@ -1548,7 +1548,7 @@ void BrowserMainLoop::MainMessageLoopRun() {
|
||||
@@ -1544,7 +1544,7 @@ void BrowserMainLoop::MainMessageLoopRun() {
|
||||
}
|
||||
|
||||
base::RunLoop run_loop;
|
||||
|
|
|
@ -8,7 +8,7 @@ this patch can be removed once we switch to network service,
|
|||
where the embedders have a chance to design their URLLoaders.
|
||||
|
||||
diff --git a/content/browser/loader/cross_site_document_resource_handler.cc b/content/browser/loader/cross_site_document_resource_handler.cc
|
||||
index bd62ed07876ad4a2a7c6e8309843281719dbefb6..13e67994997caf175ba1b30ba8070718a697588d 100644
|
||||
index f86a9167ac1ec5e7b082e474eb4b5f217d06df92..47df32ecb078a8f18e474f5c38faf2c7bdab30a1 100644
|
||||
--- a/content/browser/loader/cross_site_document_resource_handler.cc
|
||||
+++ b/content/browser/loader/cross_site_document_resource_handler.cc
|
||||
@@ -673,6 +673,9 @@ bool CrossSiteDocumentResourceHandler::ShouldBlockBasedOnHeaders(
|
||||
|
@ -22,10 +22,10 @@ index bd62ed07876ad4a2a7c6e8309843281719dbefb6..13e67994997caf175ba1b30ba8070718
|
|||
}
|
||||
|
||||
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
|
||||
index e474d899fbcebfbaf4cb2ec0b63cc963292ee39a..8446076e169efb64569fb2e463cb5ebf5e1e6ee9 100644
|
||||
index 8a4f94786e75c7abecd1a53fd6f0c2c0421534db..204637b78b36b3fb0d21804295b4de73a295de5d 100644
|
||||
--- a/content/public/browser/content_browser_client.cc
|
||||
+++ b/content/public/browser/content_browser_client.cc
|
||||
@@ -58,6 +58,10 @@ ContentBrowserClient::SiteInstanceForNavigationType ContentBrowserClient::Should
|
||||
@@ -61,6 +61,10 @@ ContentBrowserClient::SiteInstanceForNavigationType ContentBrowserClient::Should
|
||||
return SiteInstanceForNavigationType::ASK_CHROMIUM;
|
||||
}
|
||||
|
||||
|
@ -37,12 +37,12 @@ index e474d899fbcebfbaf4cb2ec0b63cc963292ee39a..8446076e169efb64569fb2e463cb5ebf
|
|||
const MainFunctionParams& parameters) {
|
||||
return nullptr;
|
||||
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
|
||||
index 2cc843982a697dbd693ca1d5fda3a8ab68c96f73..3ebe17d34cdcfb02acacd3c32f5dbb87594c010f 100644
|
||||
index bbc4263798a4cf13c0a6f3d7d62f01eb1dfe4784..1551bbad5e1a30fe6e83f85d9f66a4b18bc1bca1 100644
|
||||
--- a/content/public/browser/content_browser_client.h
|
||||
+++ b/content/public/browser/content_browser_client.h
|
||||
@@ -237,6 +237,9 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
@@ -241,6 +241,9 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
content::RenderFrameHost* rfh,
|
||||
content::SiteInstance* pending_site_instance){};
|
||||
content::SiteInstance* pending_site_instance) {}
|
||||
|
||||
+ // Electron: Allows bypassing CORB checks for a renderer process.
|
||||
+ virtual bool ShouldBypassCORB(int render_process_id) const;
|
||||
|
|
|
@ -17,10 +17,10 @@ only one or two specific checks fail. Then it's better to simply comment out the
|
|||
failing checks and allow the rest of the target to have them enabled.
|
||||
|
||||
diff --git a/content/browser/frame_host/navigation_controller_impl.cc b/content/browser/frame_host/navigation_controller_impl.cc
|
||||
index a28b7c8a3947371a9a17b3094f0b33fd3c03aba9..63929875aef3525e20ade2dcb5dcb1d70082f33b 100644
|
||||
index 71a0a5ffb4ba7a371d418a52b2eb605140aefbe6..f15f121244890bd9d024e3c9aa83dc1ca796088d 100644
|
||||
--- a/content/browser/frame_host/navigation_controller_impl.cc
|
||||
+++ b/content/browser/frame_host/navigation_controller_impl.cc
|
||||
@@ -1170,8 +1170,10 @@ NavigationType NavigationControllerImpl::ClassifyNavigation(
|
||||
@@ -1184,8 +1184,10 @@ NavigationType NavigationControllerImpl::ClassifyNavigation(
|
||||
return NAVIGATION_TYPE_NEW_SUBFRAME;
|
||||
}
|
||||
|
||||
|
@ -33,7 +33,7 @@ index a28b7c8a3947371a9a17b3094f0b33fd3c03aba9..63929875aef3525e20ade2dcb5dcb1d7
|
|||
|
||||
if (rfh->GetParent()) {
|
||||
// All manual subframes would be did_create_new_entry and handled above, so
|
||||
@@ -1412,7 +1414,10 @@ void NavigationControllerImpl::RendererDidNavigateToNewPage(
|
||||
@@ -1428,7 +1430,10 @@ void NavigationControllerImpl::RendererDidNavigateToNewPage(
|
||||
new_entry->GetFavicon() = GetLastCommittedEntry()->GetFavicon();
|
||||
}
|
||||
|
||||
|
@ -46,10 +46,10 @@ index a28b7c8a3947371a9a17b3094f0b33fd3c03aba9..63929875aef3525e20ade2dcb5dcb1d7
|
|||
// navigation. Now we know that the renderer has updated its state accordingly
|
||||
// and it is safe to also clear the browser side history.
|
||||
diff --git a/ui/base/clipboard/clipboard_win.cc b/ui/base/clipboard/clipboard_win.cc
|
||||
index 49654c95675e0240d82232eb971f85ab3611ab29..8f0737841f70144770dc4dfd7353f7bdba3ffcfd 100644
|
||||
index 17dee835d3d473a37e18c5a111426a3899a6ced2..ae01e88dbfbbfe34bb76e4234c17e95d06737663 100644
|
||||
--- a/ui/base/clipboard/clipboard_win.cc
|
||||
+++ b/ui/base/clipboard/clipboard_win.cc
|
||||
@@ -726,9 +726,9 @@ void ClipboardWin::WriteBitmapFromHandle(HBITMAP source_hbitmap,
|
||||
@@ -729,9 +729,9 @@ void ClipboardWin::WriteBitmapFromHandle(HBITMAP source_hbitmap,
|
||||
}
|
||||
|
||||
void ClipboardWin::WriteToClipboard(unsigned int format, HANDLE handle) {
|
||||
|
|
|
@ -36,10 +36,10 @@ index 8e02a8a95eb07516162eacdf5b361231d3a02975..3497b85428a52c6019cfb5d30229071f
|
|||
virtual content::DesktopMediaID::Type GetMediaListType() const = 0;
|
||||
};
|
||||
diff --git a/chrome/browser/media/webrtc/desktop_media_list_base.cc b/chrome/browser/media/webrtc/desktop_media_list_base.cc
|
||||
index 727d1f564dc943026a4b10ab2584f9269bb2ae4a..66789680d51e74e533bfb9c6c99e5b9e0844b1d9 100644
|
||||
index a68d5d774489fe95968046001b8540d74f36dc97..ca1077801ae18862618964a9675a4101b9c3a393 100644
|
||||
--- a/chrome/browser/media/webrtc/desktop_media_list_base.cc
|
||||
+++ b/chrome/browser/media/webrtc/desktop_media_list_base.cc
|
||||
@@ -20,6 +20,11 @@ DesktopMediaListBase::DesktopMediaListBase(base::TimeDelta update_period)
|
||||
@@ -21,6 +21,11 @@ DesktopMediaListBase::DesktopMediaListBase(base::TimeDelta update_period)
|
||||
|
||||
DesktopMediaListBase::~DesktopMediaListBase() {}
|
||||
|
||||
|
@ -51,7 +51,7 @@ index 727d1f564dc943026a4b10ab2584f9269bb2ae4a..66789680d51e74e533bfb9c6c99e5b9e
|
|||
void DesktopMediaListBase::SetUpdatePeriod(base::TimeDelta period) {
|
||||
DCHECK(!observer_);
|
||||
update_period_ = period;
|
||||
@@ -33,10 +38,7 @@ void DesktopMediaListBase::SetViewDialogWindowId(DesktopMediaID dialog_id) {
|
||||
@@ -34,10 +39,7 @@ void DesktopMediaListBase::SetViewDialogWindowId(DesktopMediaID dialog_id) {
|
||||
view_dialog_id_ = dialog_id;
|
||||
}
|
||||
|
||||
|
@ -63,7 +63,7 @@ index 727d1f564dc943026a4b10ab2584f9269bb2ae4a..66789680d51e74e533bfb9c6c99e5b9e
|
|||
Refresh();
|
||||
}
|
||||
|
||||
@@ -51,6 +53,11 @@ const DesktopMediaList::Source& DesktopMediaListBase::GetSource(
|
||||
@@ -52,6 +54,11 @@ const DesktopMediaList::Source& DesktopMediaListBase::GetSource(
|
||||
return sources_[index];
|
||||
}
|
||||
|
||||
|
@ -75,7 +75,7 @@ index 727d1f564dc943026a4b10ab2584f9269bb2ae4a..66789680d51e74e533bfb9c6c99e5b9e
|
|||
DesktopMediaID::Type DesktopMediaListBase::GetMediaListType() const {
|
||||
return type_;
|
||||
}
|
||||
@@ -62,6 +69,12 @@ DesktopMediaListBase::SourceDescription::SourceDescription(
|
||||
@@ -63,6 +70,12 @@ DesktopMediaListBase::SourceDescription::SourceDescription(
|
||||
|
||||
void DesktopMediaListBase::UpdateSourcesList(
|
||||
const std::vector<SourceDescription>& new_sources) {
|
||||
|
@ -88,7 +88,7 @@ index 727d1f564dc943026a4b10ab2584f9269bb2ae4a..66789680d51e74e533bfb9c6c99e5b9e
|
|||
typedef std::set<DesktopMediaID> SourceSet;
|
||||
SourceSet new_source_set;
|
||||
for (size_t i = 0; i < new_sources.size(); ++i) {
|
||||
@@ -134,6 +147,8 @@ void DesktopMediaListBase::UpdateSourceThumbnail(DesktopMediaID id,
|
||||
@@ -135,6 +148,8 @@ void DesktopMediaListBase::UpdateSourceThumbnail(DesktopMediaID id,
|
||||
}
|
||||
|
||||
void DesktopMediaListBase::ScheduleNextRefresh() {
|
||||
|
@ -133,11 +133,11 @@ index 47401abc984e6fe26c7f4c5399aa565c687060b0..ca6a527ffac877c27aac94337ec5a7b5
|
|||
protected:
|
||||
virtual ~DesktopMediaListObserver() {}
|
||||
diff --git a/chrome/browser/media/webrtc/native_desktop_media_list.cc b/chrome/browser/media/webrtc/native_desktop_media_list.cc
|
||||
index 7288cface09dee8b42eeb20e03c96cb825740e1b..440377eda5bb5bafea5cddaa40203fd8834f410a 100644
|
||||
index 2338d6daa5c5808aea07ce6883478266a599a9d0..d8adaeecfb6eac0d87cce2cc5e7ac78ab15fee67 100644
|
||||
--- a/chrome/browser/media/webrtc/native_desktop_media_list.cc
|
||||
+++ b/chrome/browser/media/webrtc/native_desktop_media_list.cc
|
||||
@@ -6,14 +6,15 @@
|
||||
|
||||
@@ -7,14 +7,15 @@
|
||||
#include "base/bind.h"
|
||||
#include "base/hash.h"
|
||||
#include "base/single_thread_task_runner.h"
|
||||
+#include "base/strings/string_number_conversions.h"
|
||||
|
|
|
@ -15,10 +15,10 @@ the redraw locking mechanism, which fixes these issues. The electron issue
|
|||
can be found at https://github.com/electron/electron/issues/1821
|
||||
|
||||
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc
|
||||
index f3523d2a05c3f93215c6a78e81e015c4b965b758..39ff4f17822b4552218cb3a11c478eb22f0ada17 100644
|
||||
index 3703f163d2370292912d969395eccf372284db73..bedfaf0ebfefc5dcca530b8aaab4a829017f3fb9 100644
|
||||
--- a/ui/views/win/hwnd_message_handler.cc
|
||||
+++ b/ui/views/win/hwnd_message_handler.cc
|
||||
@@ -288,6 +288,10 @@ const int kSynthesizedMouseMessagesTimeDifference = 500;
|
||||
@@ -290,6 +290,10 @@ const int kSynthesizedMouseMessagesTimeDifference = 500;
|
||||
|
||||
} // namespace
|
||||
|
||||
|
@ -29,7 +29,7 @@ index f3523d2a05c3f93215c6a78e81e015c4b965b758..39ff4f17822b4552218cb3a11c478eb2
|
|||
// A scoping class that prevents a window from being able to redraw in response
|
||||
// to invalidations that may occur within it for the lifetime of the object.
|
||||
//
|
||||
@@ -339,6 +343,7 @@ class HWNDMessageHandler::ScopedRedrawLock {
|
||||
@@ -341,6 +345,7 @@ class HWNDMessageHandler::ScopedRedrawLock {
|
||||
cancel_unlock_(false),
|
||||
should_lock_(owner_->IsVisible() && !owner->HasChildRenderingWindow() &&
|
||||
::IsWindow(hwnd_) &&
|
||||
|
@ -37,7 +37,7 @@ index f3523d2a05c3f93215c6a78e81e015c4b965b758..39ff4f17822b4552218cb3a11c478eb2
|
|||
(!(GetWindowLong(hwnd_, GWL_STYLE) & WS_CAPTION) ||
|
||||
!ui::win::IsAeroGlassEnabled())) {
|
||||
if (should_lock_)
|
||||
@@ -940,6 +945,10 @@ bool HWNDMessageHandler::HasChildRenderingWindow() {
|
||||
@@ -942,6 +947,10 @@ bool HWNDMessageHandler::HasChildRenderingWindow() {
|
||||
hwnd());
|
||||
}
|
||||
|
||||
|
@ -49,10 +49,10 @@ index f3523d2a05c3f93215c6a78e81e015c4b965b758..39ff4f17822b4552218cb3a11c478eb2
|
|||
// HWNDMessageHandler, gfx::WindowImpl overrides:
|
||||
|
||||
diff --git a/ui/views/win/hwnd_message_handler.h b/ui/views/win/hwnd_message_handler.h
|
||||
index 10c2fcd1742974d373f68d3fa13f2a0bb8ce2c76..533f80fd1a8f97e6153c610d6fab2f594590ffe3 100644
|
||||
index 925996e356994bf27939565beb9663c4416de1bc..8c2b5fc09da64a4766c1918eee34d4cfe651958d 100644
|
||||
--- a/ui/views/win/hwnd_message_handler.h
|
||||
+++ b/ui/views/win/hwnd_message_handler.h
|
||||
@@ -182,6 +182,8 @@ class VIEWS_EXPORT HWNDMessageHandler : public gfx::WindowImpl,
|
||||
@@ -183,6 +183,8 @@ class VIEWS_EXPORT HWNDMessageHandler : public gfx::WindowImpl,
|
||||
typedef std::set<DWORD> TouchIDs;
|
||||
enum class DwmFrameState { OFF, ON };
|
||||
|
||||
|
|
|
@ -19,10 +19,10 @@ to deal with color spaces. That is being tracked at
|
|||
https://crbug.com/634542 and https://crbug.com/711107.
|
||||
|
||||
diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
|
||||
index 2782b23d66cdf79e7fdbbd3111b7434ef20a90d3..6543722350b89c94974ab0b97a937cd5fa29fde4 100644
|
||||
index 483243c65c8f671cb6056811a51dae2e7d9b2551..75d421719b5f0d14ea7f15be163884a4b1d1ee65 100644
|
||||
--- a/cc/trees/layer_tree_host_impl.cc
|
||||
+++ b/cc/trees/layer_tree_host_impl.cc
|
||||
@@ -1569,6 +1569,10 @@ void LayerTreeHostImpl::SetIsLikelyToRequireADraw(
|
||||
@@ -1574,6 +1574,10 @@ void LayerTreeHostImpl::SetIsLikelyToRequireADraw(
|
||||
}
|
||||
|
||||
RasterColorSpace LayerTreeHostImpl::GetRasterColorSpace() const {
|
||||
|
@ -34,10 +34,10 @@ index 2782b23d66cdf79e7fdbbd3111b7434ef20a90d3..6543722350b89c94974ab0b97a937cd5
|
|||
// The pending tree will have the most recently updated color space, so
|
||||
// prefer that.
|
||||
diff --git a/cc/trees/layer_tree_settings.h b/cc/trees/layer_tree_settings.h
|
||||
index 9de6c5f5f45d7cb3e9141ffb480f6052090cc696..30f491ec4a2663d18bf22c27eff8dbbd7440e195 100644
|
||||
index 04e48714a6f4fcf980f91d75e319667dc0ee18a4..0ec60a0bf9f903de67f69422f22b674bb3a49798 100644
|
||||
--- a/cc/trees/layer_tree_settings.h
|
||||
+++ b/cc/trees/layer_tree_settings.h
|
||||
@@ -98,6 +98,8 @@ class CC_EXPORT LayerTreeSettings {
|
||||
@@ -99,6 +99,8 @@ class CC_EXPORT LayerTreeSettings {
|
||||
|
||||
bool enable_mask_tiling = true;
|
||||
|
||||
|
@ -47,7 +47,7 @@ index 9de6c5f5f45d7cb3e9141ffb480f6052090cc696..30f491ec4a2663d18bf22c27eff8dbbd
|
|||
// Image Decode Service and raster tiles without images until the decode is
|
||||
// ready.
|
||||
diff --git a/components/viz/common/display/renderer_settings.h b/components/viz/common/display/renderer_settings.h
|
||||
index 2b8cd275a5ee29b665f1a0fb27105cf75eab13ed..3493572110e2dda18c57fe079174f0934fb288b9 100644
|
||||
index ce4fb4ca4f04c5668795c56ce536b4be292aa278..a6fec64c65f5916896e627473b0f8645a867a5ce 100644
|
||||
--- a/components/viz/common/display/renderer_settings.h
|
||||
+++ b/components/viz/common/display/renderer_settings.h
|
||||
@@ -20,6 +20,7 @@ class VIZ_COMMON_EXPORT RendererSettings {
|
||||
|
@ -59,7 +59,7 @@ index 2b8cd275a5ee29b665f1a0fb27105cf75eab13ed..3493572110e2dda18c57fe079174f093
|
|||
bool force_antialiasing = false;
|
||||
bool force_blending_with_shaders = false;
|
||||
diff --git a/components/viz/host/renderer_settings_creation.cc b/components/viz/host/renderer_settings_creation.cc
|
||||
index e63d201943faf1b537df711299168d0378823bd0..fb5ca48f16b78a4d0a45cb57988d1d94cb4159bb 100644
|
||||
index ee1f83f4d3db713f64c4175615be816198ea44a1..446df2e9b84565677ae63893391291877661a267 100644
|
||||
--- a/components/viz/host/renderer_settings_creation.cc
|
||||
+++ b/components/viz/host/renderer_settings_creation.cc
|
||||
@@ -11,6 +11,7 @@
|
||||
|
@ -80,10 +80,10 @@ index e63d201943faf1b537df711299168d0378823bd0..fb5ca48f16b78a4d0a45cb57988d1d94
|
|||
!command_line->HasSwitch(switches::kUIDisablePartialSwap);
|
||||
#if defined(OS_WIN)
|
||||
diff --git a/components/viz/service/display/gl_renderer.cc b/components/viz/service/display/gl_renderer.cc
|
||||
index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654064300fc 100644
|
||||
index 758b76453b4bc0728870013ecba6d2e770609b6b..62ac5d810c94adc8d29e5a6cf0854c40918a0386 100644
|
||||
--- a/components/viz/service/display/gl_renderer.cc
|
||||
+++ b/components/viz/service/display/gl_renderer.cc
|
||||
@@ -78,6 +78,9 @@
|
||||
@@ -79,6 +79,9 @@
|
||||
|
||||
using gpu::gles2::GLES2Interface;
|
||||
|
||||
|
@ -93,7 +93,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
|
|||
namespace viz {
|
||||
namespace {
|
||||
|
||||
@@ -523,8 +526,9 @@ void GLRenderer::DoDrawQuad(const DrawQuad* quad,
|
||||
@@ -529,8 +532,9 @@ void GLRenderer::DoDrawQuad(const DrawQuad* quad,
|
||||
void GLRenderer::DrawDebugBorderQuad(const DebugBorderDrawQuad* quad) {
|
||||
SetBlendEnabled(quad->ShouldDrawWithBlending());
|
||||
|
||||
|
@ -105,7 +105,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
|
|||
|
||||
// Use the full quad_rect for debug quads to not move the edges based on
|
||||
// partial swaps.
|
||||
@@ -1326,7 +1330,8 @@ void GLRenderer::ChooseRPDQProgram(DrawRenderPassDrawQuadParams* params,
|
||||
@@ -1331,7 +1335,8 @@ void GLRenderer::ChooseRPDQProgram(DrawRenderPassDrawQuadParams* params,
|
||||
tex_coord_precision, sampler_type, shader_blend_mode,
|
||||
params->use_aa ? USE_AA : NO_AA, mask_mode, mask_for_background,
|
||||
params->use_color_matrix, tint_gl_composited_content_),
|
||||
|
@ -115,7 +115,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
|
|||
}
|
||||
|
||||
void GLRenderer::UpdateRPDQUniforms(DrawRenderPassDrawQuadParams* params) {
|
||||
@@ -1789,8 +1794,8 @@ void GLRenderer::DrawSolidColorQuad(const SolidColorDrawQuad* quad,
|
||||
@@ -1794,8 +1799,8 @@ void GLRenderer::DrawSolidColorQuad(const SolidColorDrawQuad* quad,
|
||||
gfx::ColorSpace quad_color_space = gfx::ColorSpace::CreateSRGB();
|
||||
SetUseProgram(ProgramKey::SolidColor(use_aa ? USE_AA : NO_AA,
|
||||
tint_gl_composited_content_),
|
||||
|
@ -126,7 +126,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
|
|||
SetShaderColor(color, opacity);
|
||||
|
||||
if (current_program_->tint_color_matrix_location() != -1) {
|
||||
@@ -1940,8 +1945,8 @@ void GLRenderer::DrawContentQuadAA(const ContentDrawQuadBase* quad,
|
||||
@@ -1945,8 +1950,8 @@ void GLRenderer::DrawContentQuadAA(const ContentDrawQuadBase* quad,
|
||||
quad->is_premultiplied ? PREMULTIPLIED_ALPHA
|
||||
: NON_PREMULTIPLIED_ALPHA,
|
||||
false, false, tint_gl_composited_content_),
|
||||
|
@ -137,7 +137,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
|
|||
|
||||
if (current_program_->tint_color_matrix_location() != -1) {
|
||||
auto matrix = cc::DebugColors::TintCompositedContentColorTransformMatrix();
|
||||
@@ -2029,8 +2034,8 @@ void GLRenderer::DrawContentQuadNoAA(const ContentDrawQuadBase* quad,
|
||||
@@ -2037,8 +2042,8 @@ void GLRenderer::DrawContentQuadNoAA(const ContentDrawQuadBase* quad,
|
||||
: NON_PREMULTIPLIED_ALPHA,
|
||||
!quad->ShouldDrawWithBlending(), has_tex_clamp_rect,
|
||||
tint_gl_composited_content_),
|
||||
|
@ -148,7 +148,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
|
|||
|
||||
if (current_program_->tint_color_matrix_location() != -1) {
|
||||
auto matrix = cc::DebugColors::TintCompositedContentColorTransformMatrix();
|
||||
@@ -2125,7 +2130,7 @@ void GLRenderer::DrawYUVVideoQuad(const YUVVideoDrawQuad* quad,
|
||||
@@ -2136,7 +2141,7 @@ void GLRenderer::DrawYUVVideoQuad(const YUVVideoDrawQuad* quad,
|
||||
DCHECK_NE(src_color_space, src_color_space.GetAsFullRangeRGB());
|
||||
|
||||
gfx::ColorSpace dst_color_space =
|
||||
|
@ -157,7 +157,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
|
|||
// Force sRGB output on Windows for overlay candidate video quads to match
|
||||
// DirectComposition behavior in case these switch between overlays and
|
||||
// compositing. See https://crbug.com/811118 for details.
|
||||
@@ -2273,8 +2278,8 @@ void GLRenderer::DrawStreamVideoQuad(const StreamVideoDrawQuad* quad,
|
||||
@@ -2284,8 +2289,8 @@ void GLRenderer::DrawStreamVideoQuad(const StreamVideoDrawQuad* quad,
|
||||
quad->resource_id());
|
||||
|
||||
SetUseProgram(ProgramKey::VideoStream(tex_coord_precision),
|
||||
|
@ -168,7 +168,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
|
|||
|
||||
DCHECK_EQ(GL_TEXTURE0, GetActiveTextureUnit(gl_));
|
||||
gl_->BindTexture(GL_TEXTURE_EXTERNAL_OES, lock.texture_id());
|
||||
@@ -2326,8 +2331,8 @@ void GLRenderer::FlushTextureQuadCache(BoundGeometry flush_binding) {
|
||||
@@ -2342,8 +2347,8 @@ void GLRenderer::FlushTextureQuadCache(BoundGeometry flush_binding) {
|
||||
draw_cache_.nearest_neighbor ? GL_NEAREST : GL_LINEAR);
|
||||
|
||||
// Bind the program to the GL state.
|
||||
|
@ -179,7 +179,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
|
|||
|
||||
DCHECK_EQ(GL_TEXTURE0, GetActiveTextureUnit(gl_));
|
||||
gl_->BindTexture(locked_quad.target(), locked_quad.texture_id());
|
||||
@@ -2982,7 +2987,9 @@ void GLRenderer::PrepareGeometry(BoundGeometry binding) {
|
||||
@@ -2998,7 +3003,9 @@ void GLRenderer::PrepareGeometry(BoundGeometry binding) {
|
||||
void GLRenderer::SetUseProgram(const ProgramKey& program_key_no_color,
|
||||
const gfx::ColorSpace& src_color_space,
|
||||
const gfx::ColorSpace& dst_color_space) {
|
||||
|
@ -190,7 +190,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
|
|||
|
||||
ProgramKey program_key = program_key_no_color;
|
||||
const gfx::ColorTransform* color_transform =
|
||||
@@ -3336,7 +3343,7 @@ void GLRenderer::CopyRenderPassDrawQuadToOverlayResource(
|
||||
@@ -3352,7 +3359,7 @@ void GLRenderer::CopyRenderPassDrawQuadToOverlayResource(
|
||||
|
||||
*overlay_texture = FindOrCreateOverlayTexture(
|
||||
params.quad->render_pass_id, iosurface_width, iosurface_height,
|
||||
|
@ -199,7 +199,7 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
|
|||
*new_bounds = gfx::RectF(updated_dst_rect.origin(),
|
||||
gfx::SizeF((*overlay_texture)->texture.size()));
|
||||
|
||||
@@ -3540,8 +3547,9 @@ void GLRenderer::FlushOverdrawFeedback(const gfx::Rect& output_rect) {
|
||||
@@ -3556,8 +3563,9 @@ void GLRenderer::FlushOverdrawFeedback(const gfx::Rect& output_rect) {
|
||||
|
||||
PrepareGeometry(SHARED_BINDING);
|
||||
|
||||
|
@ -211,55 +211,17 @@ index 6ee04d0919d9b4ae5e2d6719f1417f00a3d600fa..62c0b5da24e02102b268429b1d8e3654
|
|||
|
||||
gfx::Transform render_matrix;
|
||||
render_matrix.Translate(0.5 * output_rect.width() + output_rect.x(),
|
||||
@@ -3701,3 +3709,5 @@ gfx::Size GLRenderer::GetRenderPassBackingPixelSize(
|
||||
@@ -3717,3 +3725,5 @@ gfx::Size GLRenderer::GetRenderPassBackingPixelSize(
|
||||
}
|
||||
|
||||
} // namespace viz
|
||||
+
|
||||
+#undef PATCH_CS
|
||||
diff --git a/components/viz/service/display/skia_renderer.cc b/components/viz/service/display/skia_renderer.cc
|
||||
index 5a757c437d36f98d6d813ef2af81b46434cdc5de..86ed034d207fe5cdf6810de085cc34ea8981169c 100644
|
||||
--- a/components/viz/service/display/skia_renderer.cc
|
||||
+++ b/components/viz/service/display/skia_renderer.cc
|
||||
@@ -708,9 +708,11 @@ void SkiaRenderer::DrawPictureQuad(const PictureDrawQuad* quad,
|
||||
|
||||
std::unique_ptr<SkCanvas> color_transform_canvas;
|
||||
// TODO(enne): color transform needs to be replicated in gles2_cmd_decoder
|
||||
- color_transform_canvas = SkCreateColorSpaceXformCanvas(
|
||||
- current_canvas_, gfx::ColorSpace::CreateSRGB().ToSkColorSpace());
|
||||
- raster_canvas = color_transform_canvas.get();
|
||||
+ if (settings_->enable_color_correct_rendering) {
|
||||
+ color_transform_canvas = SkCreateColorSpaceXformCanvas(
|
||||
+ current_canvas_, gfx::ColorSpace::CreateSRGB().ToSkColorSpace());
|
||||
+ raster_canvas = color_transform_canvas.get();
|
||||
+ }
|
||||
|
||||
base::Optional<skia::OpacityFilterCanvas> opacity_canvas;
|
||||
if (needs_transparency || disable_image_filtering) {
|
||||
diff --git a/components/viz/service/display/software_renderer.cc b/components/viz/service/display/software_renderer.cc
|
||||
index 0aba701c131f11f5e8be6ce9c1bebe6ccb44edf8..aac9c128ed3d212758d8d4a3ec774b651491d92f 100644
|
||||
--- a/components/viz/service/display/software_renderer.cc
|
||||
+++ b/components/viz/service/display/software_renderer.cc
|
||||
@@ -332,9 +332,11 @@ void SoftwareRenderer::DrawPictureQuad(const PictureDrawQuad* quad) {
|
||||
|
||||
std::unique_ptr<SkCanvas> color_transform_canvas;
|
||||
// TODO(enne): color transform needs to be replicated in gles2_cmd_decoder
|
||||
- color_transform_canvas = SkCreateColorSpaceXformCanvas(
|
||||
- current_canvas_, gfx::ColorSpace::CreateSRGB().ToSkColorSpace());
|
||||
- raster_canvas = color_transform_canvas.get();
|
||||
+ if (settings_->enable_color_correct_rendering) {
|
||||
+ color_transform_canvas = SkCreateColorSpaceXformCanvas(
|
||||
+ current_canvas_, gfx::ColorSpace::CreateSRGB().ToSkColorSpace());
|
||||
+ raster_canvas = color_transform_canvas.get();
|
||||
+ }
|
||||
|
||||
base::Optional<skia::OpacityFilterCanvas> opacity_canvas;
|
||||
if (needs_transparency || disable_image_filtering) {
|
||||
diff --git a/content/browser/gpu/gpu_process_host.cc b/content/browser/gpu/gpu_process_host.cc
|
||||
index 1c93dfbc345d07769d7c91c8ecffc33bcd7505c1..ab87b6e5be09117e3dc1485a411ce72d3fa0d07f 100644
|
||||
index e43e5f6bb667a62e7e1205e8da6073de6179e79f..027a552cfbfce3f4f8fe5670bec7db45ad19e57a 100644
|
||||
--- a/content/browser/gpu/gpu_process_host.cc
|
||||
+++ b/content/browser/gpu/gpu_process_host.cc
|
||||
@@ -193,6 +193,7 @@ GpuTerminationStatus ConvertToGpuTerminationStatus(
|
||||
@@ -192,6 +192,7 @@ GpuTerminationStatus ConvertToGpuTerminationStatus(
|
||||
|
||||
// Command-line switches to propagate to the GPU process.
|
||||
static const char* const kSwitchNames[] = {
|
||||
|
@ -268,10 +230,10 @@ index 1c93dfbc345d07769d7c91c8ecffc33bcd7505c1..ab87b6e5be09117e3dc1485a411ce72d
|
|||
service_manager::switches::kGpuSandboxAllowSysVShm,
|
||||
service_manager::switches::kGpuSandboxFailuresFatal,
|
||||
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
|
||||
index 77f9ff3979592f711a2f8b8cea5df31376d7f31d..933b4b4cadae9f9d997ed517d35d30e1ab18f630 100644
|
||||
index 17edbd3a08010f257152e857a178af83c9aaf3d6..dbd8c3066b61b38b43cc2bd439aa954cc06f9039 100644
|
||||
--- a/content/browser/renderer_host/render_process_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_process_host_impl.cc
|
||||
@@ -221,6 +221,7 @@
|
||||
@@ -220,6 +220,7 @@
|
||||
#include "ui/base/ui_base_switches.h"
|
||||
#include "ui/base/ui_base_switches_util.h"
|
||||
#include "ui/display/display_switches.h"
|
||||
|
@ -279,7 +241,7 @@ index 77f9ff3979592f711a2f8b8cea5df31376d7f31d..933b4b4cadae9f9d997ed517d35d30e1
|
|||
#include "ui/gl/gl_switches.h"
|
||||
#include "ui/native_theme/native_theme_features.h"
|
||||
|
||||
@@ -3064,6 +3065,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
|
||||
@@ -2951,6 +2952,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
|
||||
// Propagate the following switches to the renderer command line (along
|
||||
// with any associated values) if present in the browser command line.
|
||||
static const char* const kSwitchNames[] = {
|
||||
|
@ -288,10 +250,10 @@ index 77f9ff3979592f711a2f8b8cea5df31376d7f31d..933b4b4cadae9f9d997ed517d35d30e1
|
|||
network::switches::kExplicitlyAllowedPorts,
|
||||
service_manager::switches::kDisableInProcessStackTraces,
|
||||
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
|
||||
index 5223ac9b87817c99b84f6a6f98d3c96be54e466d..8d07310695af146b694b3342296439ccecb0d74e 100644
|
||||
index 7c243ad046a6cd7fa37f7c12878cb05fb2c70d24..a3efbf63e54da43ca6f70edc067678fa5c2cca92 100644
|
||||
--- a/content/renderer/render_widget.cc
|
||||
+++ b/content/renderer/render_widget.cc
|
||||
@@ -2655,6 +2655,9 @@ cc::LayerTreeSettings RenderWidget::GenerateLayerTreeSettings(
|
||||
@@ -2771,6 +2771,9 @@ cc::LayerTreeSettings RenderWidget::GenerateLayerTreeSettings(
|
||||
settings.main_frame_before_activation_enabled =
|
||||
cmd.HasSwitch(cc::switches::kEnableMainFrameBeforeActivation);
|
||||
|
||||
|
@ -341,7 +303,7 @@ index d12f8a42cb6af501dad92483b957dcf33d76a6c9..fbc0ab37aef36b46a54c7afc54945161
|
|||
if (color_space == ColorSpace::CreateSRGB()) {
|
||||
base::ScopedCFTypeRef<CFDataRef> srgb_icc(
|
||||
diff --git a/ui/gfx/switches.cc b/ui/gfx/switches.cc
|
||||
index 606cbb42070be3a826f73269cd2bf40454358b3d..bd31d565b002b653a6b104114c9616416ac86649 100644
|
||||
index 26ac6442b4211e5fbe59193118e1eb8b713f6397..b3e2080fc3415303280613c57b4c351752eb3621 100644
|
||||
--- a/ui/gfx/switches.cc
|
||||
+++ b/ui/gfx/switches.cc
|
||||
@@ -7,6 +7,8 @@
|
||||
|
@ -354,7 +316,7 @@ index 606cbb42070be3a826f73269cd2bf40454358b3d..bd31d565b002b653a6b104114c961641
|
|||
// Disables DirectWrite font rendering for general UI elements.
|
||||
const char kDisableDirectWriteForUI[] = "disable-directwrite-for-ui";
|
||||
diff --git a/ui/gfx/switches.h b/ui/gfx/switches.h
|
||||
index b206f18ad77c21774073c2fa07372d2234926414..992468ce95b2829702fcdb26c26362eccb5556c7 100644
|
||||
index 41382819ef50470dc6913e547b4569c0bb991877..298d555cded22b211ddcd6d7b3f7202138445307 100644
|
||||
--- a/ui/gfx/switches.h
|
||||
+++ b/ui/gfx/switches.h
|
||||
@@ -11,6 +11,8 @@
|
||||
|
|
|
@ -12,10 +12,10 @@ this patch was introduced in Chrome 66.
|
|||
Update(zcbenz): The bug is still in Chrome 72.
|
||||
|
||||
diff --git a/content/browser/frame_host/render_frame_proxy_host.cc b/content/browser/frame_host/render_frame_proxy_host.cc
|
||||
index a5e18f465f79416c05fd3ab630b40b079a7a7cbc..d6f4717ee2122b86611d6149d5d1a9105d1baff1 100644
|
||||
index 59ce8f3cbb143f97371bba507dc851bcf0fbfe00..5101f19660f3519e74dde7fa6d9533666a2629df 100644
|
||||
--- a/content/browser/frame_host/render_frame_proxy_host.cc
|
||||
+++ b/content/browser/frame_host/render_frame_proxy_host.cc
|
||||
@@ -263,6 +263,12 @@ void RenderFrameProxyHost::SetDestructionCallback(
|
||||
@@ -270,6 +270,12 @@ void RenderFrameProxyHost::SetDestructionCallback(
|
||||
|
||||
void RenderFrameProxyHost::OnDetach() {
|
||||
if (frame_tree_node_->render_manager()->ForInnerDelegate()) {
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: disable_hidden.patch
|
|||
|
||||
|
||||
diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc
|
||||
index 316e7cf9819c0ffe3a15a55e6bcada781d6d7832..d90f50ed29740b14e6259c4d6d14434222ddbfb4 100644
|
||||
index bb1096d28ceb4117b582d7dde2f57c3317120716..61273d7aaac07635ee3497ce16af8a9e0d6f1ed8 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_widget_host_impl.cc
|
||||
@@ -760,6 +760,9 @@ void RenderWidgetHostImpl::WasHidden() {
|
||||
@@ -765,6 +765,9 @@ void RenderWidgetHostImpl::WasHidden() {
|
||||
if (is_hidden_)
|
||||
return;
|
||||
|
||||
|
@ -19,7 +19,7 @@ index 316e7cf9819c0ffe3a15a55e6bcada781d6d7832..d90f50ed29740b14e6259c4d6d144342
|
|||
|
||||
TRACE_EVENT0("renderer_host", "RenderWidgetHostImpl::WasHidden");
|
||||
diff --git a/content/browser/renderer_host/render_widget_host_impl.h b/content/browser/renderer_host/render_widget_host_impl.h
|
||||
index 4fd95dc7bdcd99342bd110d46b5829eb784e0f40..47af7e316c36c2f1733721170a6eff7fae39fa77 100644
|
||||
index 4ea7d993a8d84eabf2485e07e51fa20f2c2c17e7..06ecfc4c90dc8105fdb2ed05386b5ea0e8a7ef3a 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_impl.h
|
||||
+++ b/content/browser/renderer_host/render_widget_host_impl.h
|
||||
@@ -153,6 +153,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: disable_user_gesture_requirement_for_beforeunload_dialogs.patch
|
|||
See https://github.com/electron/electron/issues/10754
|
||||
|
||||
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
|
||||
index 1aa4f77b363a6f7d9e2badd6f0214f19c4e39ca6..40df17291b9a939aed9adf135b33851aea40cfde 100644
|
||||
index 1d04d162342dafb337b014aad562cb452eddc6d4..2ba36366853b1a0435900a5946757c4bf5a92a6a 100644
|
||||
--- a/third_party/blink/renderer/core/dom/document.cc
|
||||
+++ b/third_party/blink/renderer/core/dom/document.cc
|
||||
@@ -3666,7 +3666,9 @@ bool Document::DispatchBeforeUnloadEvent(ChromeClient* chrome_client,
|
||||
@@ -3689,7 +3689,9 @@ bool Document::DispatchBeforeUnloadEvent(ChromeClient* chrome_client,
|
||||
"frame that never had a user gesture since its load. "
|
||||
"https://www.chromestatus.com/feature/5082396709879808";
|
||||
Intervention::GenerateReport(frame_, "BeforeUnloadNoGesture", message);
|
||||
|
|
|
@ -61,10 +61,10 @@ index e87afe5b8ee07f7038a7cc9c40832b6cd27884da..61c9a0dfff60f79c7b36ff5c7d741c06
|
|||
|
||||
// In the browser process we allow some overage to
|
||||
diff --git a/content/renderer/dom_storage/dom_storage_cached_area.cc b/content/renderer/dom_storage/dom_storage_cached_area.cc
|
||||
index a7cdf900661bff52e1d3d9bc98d68e6a457c3fa7..ce302dcbece11880b5b6da4b6d5d807ba9dc09c9 100644
|
||||
index 13bcf8e3f2882999e073d0c7ac6d8f1627f0bfa2..6d330cd1de358b477df4c1fed4d814c206a3643d 100644
|
||||
--- a/content/renderer/dom_storage/dom_storage_cached_area.cc
|
||||
+++ b/content/renderer/dom_storage/dom_storage_cached_area.cc
|
||||
@@ -53,11 +53,13 @@ bool DOMStorageCachedArea::SetItem(int connection_id,
|
||||
@@ -54,11 +54,13 @@ bool DOMStorageCachedArea::SetItem(int connection_id,
|
||||
const base::string16& key,
|
||||
const base::string16& value,
|
||||
const GURL& page_url) {
|
||||
|
@ -79,7 +79,7 @@ index a7cdf900661bff52e1d3d9bc98d68e6a457c3fa7..ce302dcbece11880b5b6da4b6d5d807b
|
|||
PrimeIfNeeded(connection_id);
|
||||
base::NullableString16 old_value;
|
||||
diff --git a/content/renderer/dom_storage/local_storage_cached_area.cc b/content/renderer/dom_storage/local_storage_cached_area.cc
|
||||
index c04e0e8bff1a7a41a1e18aca5403aed16a80aead..d63cec971f0a98f7b8ff30c1f6a0fa843efbecfa 100644
|
||||
index 1b406b322f6de52d808b021015c656f60700645e..8bc713a723569e9d28212d68a0b2a22cd2bcc6c0 100644
|
||||
--- a/content/renderer/dom_storage/local_storage_cached_area.cc
|
||||
+++ b/content/renderer/dom_storage/local_storage_cached_area.cc
|
||||
@@ -142,11 +142,13 @@ bool LocalStorageCachedArea::SetItem(const base::string16& key,
|
||||
|
@ -97,10 +97,10 @@ index c04e0e8bff1a7a41a1e18aca5403aed16a80aead..d63cec971f0a98f7b8ff30c1f6a0fa84
|
|||
EnsureLoaded();
|
||||
bool result = false;
|
||||
diff --git a/third_party/blink/renderer/modules/storage/cached_storage_area.cc b/third_party/blink/renderer/modules/storage/cached_storage_area.cc
|
||||
index 35a114eb8fc2ee6176c25377081df7f04f8b72f1..689df99ebd955e544bbc1e3048842801fb9c5367 100644
|
||||
index 21ce9fe01d3a125055fe3c3f29cc89ecf014944f..3ecdfe1011113ddaecbad1766cd8044366a9e47f 100644
|
||||
--- a/third_party/blink/renderer/modules/storage/cached_storage_area.cc
|
||||
+++ b/third_party/blink/renderer/modules/storage/cached_storage_area.cc
|
||||
@@ -101,11 +101,13 @@ bool CachedStorageArea::SetItem(const String& key,
|
||||
@@ -102,11 +102,13 @@ bool CachedStorageArea::SetItem(const String& key,
|
||||
Source* source) {
|
||||
DCHECK(areas_->Contains(source));
|
||||
|
||||
|
|
|
@ -7,10 +7,10 @@ Compilation of those files fails with the Chromium 68.
|
|||
Remove the patch during the Chromium 69 upgrade.
|
||||
|
||||
diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn
|
||||
index 1277dd8a03d1a5931b751781f219b617542be500..09809f43489711b117b0751f322d081b7ea1c3c8 100644
|
||||
index fef425f94edcd483efaa16c33b642636a19071ed..8079c15fd65fa08049360dce6d1f5ce1b9aca8a9 100644
|
||||
--- a/third_party/blink/renderer/platform/BUILD.gn
|
||||
+++ b/third_party/blink/renderer/platform/BUILD.gn
|
||||
@@ -1741,7 +1741,7 @@ jumbo_source_set("blink_platform_unittests_sources") {
|
||||
@@ -1729,7 +1729,7 @@ jumbo_source_set("blink_platform_unittests_sources") {
|
||||
"graphics/paint/drawing_display_item_test.cc",
|
||||
"graphics/paint/drawing_recorder_test.cc",
|
||||
"graphics/paint/float_clip_rect_test.cc",
|
||||
|
|
|
@ -1,33 +1,26 @@
|
|||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Jeremy Apthorp <jeremya@chromium.org>
|
||||
Date: Fri, 1 Mar 2019 11:20:29 -0800
|
||||
Subject: fix backup includes for PTRACE_GET_THREAD_AREA on arm/arm64
|
||||
From: Jeremy Apthorp <nornagon@nornagon.net>
|
||||
Date: Tue, 5 Mar 2019 11:12:55 -0800
|
||||
Subject: fix: build on arm
|
||||
|
||||
<asm/ptrace-abi.h> doesn't exist in the arm/arm64 sysroots, and <sys/ptrace.h>
|
||||
defines PTRACE_GET_THREAD_AREA as an enum, not a #define:
|
||||
|
||||
/* Get the thread pointer of a process. */
|
||||
PTRACE_GET_THREAD_AREA = 22,
|
||||
|
||||
This changes the include trigger to check for PT_GET_THREAD_AREA as well as
|
||||
PTRACE_GET_THREAD_AREA to catch the arm case.
|
||||
|
||||
Change-Id: I9044d9f315cbb15011f397a06d03d4bec7396985
|
||||
backports https://chromium-review.googlesource.com/c/chromium/src/+/1496448
|
||||
|
||||
diff --git a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
|
||||
index 55394a791a54a2650fa2e1ed4d4e293b940d8fa2..805b13ba24b3f5d6b013b9f473e2e74afc29683d 100644
|
||||
index 55394a791a54a2650fa2e1ed4d4e293b940d8fa2..68ce32a136ccc5130e3544b67dfb4af5c8b47a56 100644
|
||||
--- a/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
|
||||
+++ b/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc
|
||||
@@ -34,12 +34,12 @@
|
||||
@@ -34,12 +34,14 @@
|
||||
#if !defined(OS_NACL_NONSFI)
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/ptrace.h>
|
||||
-#if !defined(PTRACE_GET_THREAD_AREA) && defined(OS_LINUX) && \
|
||||
- !defined(OS_CHROMEOS)
|
||||
+#if !defined(PTRACE_GET_THREAD_AREA) && !defined(__arm__) && \
|
||||
+ !defined(__aarch64__) && defined(OS_LINUX) && !defined(OS_CHROMEOS)
|
||||
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(__arm__) && \
|
||||
+ !defined(__aarch64__) && !defined(PTRACE_GET_THREAD_AREA)
|
||||
// Also include asm/ptrace-abi.h since ptrace.h in older libc (for instance
|
||||
// the one in Ubuntu 16.04 LTS) is missing PTRACE_GET_THREAD_AREA.
|
||||
+// asm/ptrace-abi.h doesn't exist on arm32 and PTRACE_GET_THREAD_AREA isn't
|
||||
+// defined on aarch64, so don't try to include this on those platforms.
|
||||
#include <asm/ptrace-abi.h>
|
||||
-#endif // !PTRACE_GET_THREAD_AREA && OS_LINUX && !OS_CHROMEOS
|
||||
+#endif
|
|
@ -7,10 +7,10 @@ Allows embedder to intercept site instances chosen by chromium
|
|||
and respond with custom instance.
|
||||
|
||||
diff --git a/content/browser/frame_host/render_frame_host_manager.cc b/content/browser/frame_host/render_frame_host_manager.cc
|
||||
index f9f8e5204d1d92e87370f859c294919d2a1991c3..ff42619d67b916bacb63f99b2391c905cccde218 100644
|
||||
index 9d8a7f4c2a1f671828b17ce0a6d49527ea49373e..e4e347d1c0de7d7263f76104a668693fce8dec9b 100644
|
||||
--- a/content/browser/frame_host/render_frame_host_manager.cc
|
||||
+++ b/content/browser/frame_host/render_frame_host_manager.cc
|
||||
@@ -1978,6 +1978,16 @@ bool RenderFrameHostManager::InitRenderView(
|
||||
@@ -2031,6 +2031,16 @@ bool RenderFrameHostManager::InitRenderView(
|
||||
scoped_refptr<SiteInstance>
|
||||
RenderFrameHostManager::GetSiteInstanceForNavigationRequest(
|
||||
const NavigationRequest& request) {
|
||||
|
@ -27,7 +27,7 @@ index f9f8e5204d1d92e87370f859c294919d2a1991c3..ff42619d67b916bacb63f99b2391c905
|
|||
// First, check if the navigation can switch SiteInstances. If not, the
|
||||
// navigation should use the current SiteInstance.
|
||||
SiteInstance* current_site_instance = render_frame_host_->GetSiteInstance();
|
||||
@@ -2010,6 +2020,51 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest(
|
||||
@@ -2063,6 +2073,51 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest(
|
||||
request.common_params().url);
|
||||
no_renderer_swap_allowed |=
|
||||
request.from_begin_navigation() && !can_renderer_initiate_transfer;
|
||||
|
@ -79,7 +79,7 @@ index f9f8e5204d1d92e87370f859c294919d2a1991c3..ff42619d67b916bacb63f99b2391c905
|
|||
} else {
|
||||
// Subframe navigations will use the current renderer, unless specifically
|
||||
// allowed to swap processes.
|
||||
@@ -2021,23 +2076,17 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest(
|
||||
@@ -2074,23 +2129,17 @@ RenderFrameHostManager::GetSiteInstanceForNavigationRequest(
|
||||
if (no_renderer_swap_allowed && !should_swap_for_error_isolation)
|
||||
return scoped_refptr<SiteInstance>(current_site_instance);
|
||||
|
||||
|
@ -108,10 +108,10 @@ index f9f8e5204d1d92e87370f859c294919d2a1991c3..ff42619d67b916bacb63f99b2391c905
|
|||
}
|
||||
|
||||
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
|
||||
index 9d00218ae972b34073c84f2de78dee934962c3d8..e474d899fbcebfbaf4cb2ec0b63cc963292ee39a 100644
|
||||
index b6c528126bde8c7ee8cdf8440ae51cfe1a742b9a..8a4f94786e75c7abecd1a53fd6f0c2c0421534db 100644
|
||||
--- a/content/public/browser/content_browser_client.cc
|
||||
+++ b/content/public/browser/content_browser_client.cc
|
||||
@@ -48,6 +48,16 @@ void OverrideOnBindInterface(const service_manager::BindSourceInfo& remote_info,
|
||||
@@ -51,6 +51,16 @@ void OverrideOnBindInterface(const service_manager::BindSourceInfo& remote_info,
|
||||
handle);
|
||||
}
|
||||
|
||||
|
@ -129,10 +129,10 @@ index 9d00218ae972b34073c84f2de78dee934962c3d8..e474d899fbcebfbaf4cb2ec0b63cc963
|
|||
const MainFunctionParams& parameters) {
|
||||
return nullptr;
|
||||
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
|
||||
index 09aca495389e48a8dbc1ea45b8bb636aa13d2486..2cc843982a697dbd693ca1d5fda3a8ab68c96f73 100644
|
||||
index 72944bc96a2ec71be1b20fa68e7994445f225824..bbc4263798a4cf13c0a6f3d7d62f01eb1dfe4784 100644
|
||||
--- a/content/public/browser/content_browser_client.h
|
||||
+++ b/content/public/browser/content_browser_client.h
|
||||
@@ -206,8 +206,37 @@ CONTENT_EXPORT void OverrideOnBindInterface(
|
||||
@@ -210,8 +210,37 @@ CONTENT_EXPORT void OverrideOnBindInterface(
|
||||
// the observer interfaces.)
|
||||
class CONTENT_EXPORT ContentBrowserClient {
|
||||
public:
|
||||
|
@ -165,7 +165,7 @@ index 09aca495389e48a8dbc1ea45b8bb636aa13d2486..2cc843982a697dbd693ca1d5fda3a8ab
|
|||
+ // Electron: Registers a pending site instance during a navigation.
|
||||
+ virtual void RegisterPendingSiteInstance(
|
||||
+ content::RenderFrameHost* rfh,
|
||||
+ content::SiteInstance* pending_site_instance){};
|
||||
+ content::SiteInstance* pending_site_instance) {}
|
||||
+
|
||||
// Allows the embedder to set any number of custom BrowserMainParts
|
||||
// implementations for the browser startup code. See comments in
|
||||
|
|
|
@ -36,7 +36,7 @@ index 413e6c5bcc74cd01730c5d4dc66eb92aaf7df8de..6c5d101fef97e880bee20d2f76e4b339
|
|||
v8::Isolate* isolate() { return isolate_; }
|
||||
|
||||
diff --git a/gin/v8_initializer.cc b/gin/v8_initializer.cc
|
||||
index 006f6f4a768597f227dacbf46e974e33f4e63763..09dd4718f7ba00dfa909859a088639016675245a 100644
|
||||
index c8baaa5e75582dd60072b5626388950893e70f2b..2ed448852721468124f550e4dc74a8bceeec15ce 100644
|
||||
--- a/gin/v8_initializer.cc
|
||||
+++ b/gin/v8_initializer.cc
|
||||
@@ -204,12 +204,14 @@ enum LoadV8FileResult {
|
||||
|
|
|
@ -6,11 +6,11 @@ Subject: gritsettings_resource_ids.patch
|
|||
Add electron resources file to the list of resource ids generation.
|
||||
|
||||
diff --git a/tools/gritsettings/resource_ids b/tools/gritsettings/resource_ids
|
||||
index bc56e877d3a8cc3fc3bd11e23b50f9abbb958362..36110a4c960cd572789ff14d69aad29fa5f838a8 100644
|
||||
index e823c9b9edfd1aaac4909d8926e729ef79f25d70..2810e6b743507257f23a797c67ee23911c5745cf 100644
|
||||
--- a/tools/gritsettings/resource_ids
|
||||
+++ b/tools/gritsettings/resource_ids
|
||||
@@ -427,6 +427,11 @@
|
||||
"includes": [28850],
|
||||
@@ -424,6 +424,11 @@
|
||||
"includes": [28880],
|
||||
},
|
||||
|
||||
+ "electron/electron_resources.grd": {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: gtk_visibility.patch
|
|||
Allow electron to depend on GTK in the GN build.
|
||||
|
||||
diff --git a/build/config/linux/gtk/BUILD.gn b/build/config/linux/gtk/BUILD.gn
|
||||
index fe2e10627f42c8355fd176ed24b54cfab916a72a..7b48b68de04c2cbfc4380e6e38c9ac07dbc7784a 100644
|
||||
index d78f7407c179fe44180800a234e9461c56849402..dae8fa63037803ebaf2e04fb2b9547d2db7ba29c 100644
|
||||
--- a/build/config/linux/gtk/BUILD.gn
|
||||
+++ b/build/config/linux/gtk/BUILD.gn
|
||||
@@ -26,6 +26,7 @@ group("gtk") {
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: libgtkui_export.patch
|
|||
Export libgtkui symbols for the GN component build.
|
||||
|
||||
diff --git a/chrome/browser/ui/libgtkui/gtk_util.h b/chrome/browser/ui/libgtkui/gtk_util.h
|
||||
index 32b0a390255dd39a7d02f094c0e59b205b00dabd..afa2d250beca30f50dbb1684d5217330c4d60bbb 100644
|
||||
index adea4a859d96e219acc92c9178574f089a57944c..df615a91c00d22cabafffebe151728010fe9c1c4 100644
|
||||
--- a/chrome/browser/ui/libgtkui/gtk_util.h
|
||||
+++ b/chrome/browser/ui/libgtkui/gtk_util.h
|
||||
@@ -11,6 +11,7 @@
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: mas-cfisobjc.patch
|
|||
Removes usage of the _CFIsObjC private API.
|
||||
|
||||
diff --git a/base/mac/foundation_util.mm b/base/mac/foundation_util.mm
|
||||
index 2d619e791c03a17d29ed47abe765a0a644b364bc..c36989c429344d85a0f5efe11754de13b12ec5df 100644
|
||||
index 26a40417ae92c2e12c3901c50e1f101d9b0f57e9..810fbeae866a1507762703296fdd836dd3c9e4ba 100644
|
||||
--- a/base/mac/foundation_util.mm
|
||||
+++ b/base/mac/foundation_util.mm
|
||||
@@ -26,7 +26,6 @@ CFTypeID SecKeyGetTypeID();
|
||||
@@ -26,7 +26,6 @@
|
||||
#if !defined(OS_IOS)
|
||||
CFTypeID SecACLGetTypeID();
|
||||
CFTypeID SecTrustedApplicationGetTypeID();
|
||||
|
@ -17,7 +17,7 @@ index 2d619e791c03a17d29ed47abe765a0a644b364bc..c36989c429344d85a0f5efe11754de13
|
|||
#endif
|
||||
} // extern "C"
|
||||
|
||||
@@ -326,8 +325,7 @@ NSFont* CFToNSCast(CTFontRef cf_val) {
|
||||
@@ -315,8 +314,7 @@ void SetBaseBundleID(const char* new_base_bundle_id) {
|
||||
const_cast<NSFont*>(reinterpret_cast<const NSFont*>(cf_val));
|
||||
DCHECK(!cf_val ||
|
||||
CTFontGetTypeID() == CFGetTypeID(cf_val) ||
|
||||
|
@ -27,7 +27,7 @@ index 2d619e791c03a17d29ed47abe765a0a644b364bc..c36989c429344d85a0f5efe11754de13
|
|||
return ns_val;
|
||||
}
|
||||
|
||||
@@ -395,9 +393,6 @@ CFCast<CTFontRef>(const CFTypeRef& cf_val) {
|
||||
@@ -384,9 +382,6 @@ CTFontRef NSToCFCast(NSFont* ns_val) {
|
||||
return (CTFontRef)(cf_val);
|
||||
}
|
||||
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: mas-cgdisplayusesforcetogray.patch
|
|||
Removes usage of the CGDisplayUsesForceToGray private API.
|
||||
|
||||
diff --git a/ui/display/mac/screen_mac.mm b/ui/display/mac/screen_mac.mm
|
||||
index 96f17137071a157737fe09e69a6db393040c69ea..dd1c41ed4a80dbdaa37a5d68ffb7c0b11ea0afc3 100644
|
||||
index 4d5b83a1a4b0c1d03378ab1aae8ef43935c387d3..463ff7105ac329cafed793fd87cfc8423e0a0ed7 100644
|
||||
--- a/ui/display/mac/screen_mac.mm
|
||||
+++ b/ui/display/mac/screen_mac.mm
|
||||
@@ -106,7 +106,17 @@ Display BuildDisplayForScreen(NSScreen* screen) {
|
||||
@@ -107,7 +107,17 @@ Display BuildDisplayForScreen(NSScreen* screen) {
|
||||
|
||||
display.set_color_depth(NSBitsPerPixelFromDepth([screen depth]));
|
||||
display.set_depth_per_component(NSBitsPerSampleFromDepth([screen depth]));
|
||||
|
|
|
@ -7,10 +7,10 @@ Removes usage of the _LSSetApplicationLaunchServicesServerConnectionStatus
|
|||
private API.
|
||||
|
||||
diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
|
||||
index 0b9d501e7b0da03c2bc668944d6b4172c71dae72..0ad797171bd359037bcf8d3e7c9e68d3408cd49c 100644
|
||||
index a838f0ccfe1991bf2cf7c394c5e8edba101c30ab..39e87967360a9c7a2856ce4df9c182c782efb2a5 100644
|
||||
--- a/content/gpu/gpu_main.cc
|
||||
+++ b/content/gpu/gpu_main.cc
|
||||
@@ -280,8 +280,10 @@ int GpuMain(const MainFunctionParams& parameters) {
|
||||
@@ -278,8 +278,10 @@ int GpuMain(const MainFunctionParams& parameters) {
|
||||
std::unique_ptr<base::MessagePump> pump(new base::MessagePumpNSRunLoop());
|
||||
main_message_loop.reset(new base::MessageLoop(std::move(pump)));
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@ index 94afefcee81b87c05bf9b1199d90d3d4b5ea84a6..2ec7f04c71824b47de1ddbf1f0e8625d
|
|||
extern "C" {
|
||||
|
||||
// Kill ring calls. Would be better to use NSKillRing.h, but that's not
|
||||
@@ -39,38 +40,53 @@ NSString* _NSYankFromKillRing();
|
||||
@@ -39,38 +40,53 @@
|
||||
void _NSNewKillRingSequence();
|
||||
void _NSSetKillRingToYankedState();
|
||||
}
|
||||
|
@ -92,7 +92,7 @@ index 7a1260db0a139f9f3f8a823af2c220f36162812a..bf9cf7046e2fc9cdfee5b92f2a348185
|
|||
|
||||
namespace blink {
|
||||
|
||||
@@ -73,10 +75,12 @@ bool ThemePainterMac::PaintTextField(const Node* node,
|
||||
@@ -73,10 +75,12 @@ void _NSDrawCarbonThemeListBox(NSRect frame,
|
||||
// behavior change while remaining a fragile solution.
|
||||
// https://bugs.chromium.org/p/chromium/issues/detail?id=658085#c3
|
||||
if (!use_ns_text_field_cell) {
|
||||
|
@ -105,7 +105,7 @@ index 7a1260db0a139f9f3f8a823af2c220f36162812a..bf9cf7046e2fc9cdfee5b92f2a348185
|
|||
return false;
|
||||
}
|
||||
|
||||
@@ -162,10 +166,12 @@ bool ThemePainterMac::PaintTextArea(const Node* node,
|
||||
@@ -162,10 +166,12 @@ void _NSDrawCarbonThemeListBox(NSRect frame,
|
||||
const PaintInfo& paint_info,
|
||||
const IntRect& r) {
|
||||
LocalCurrentGraphicsContext local_context(paint_info.context, r);
|
||||
|
|
|
@ -38,10 +38,10 @@ index d38fa48b8b890d90f2911995a2a51c249005c827..5fe68c71fe101a307ef565013a91b109
|
|||
// is concerned.
|
||||
@property(nonatomic, readonly) NSString* subrole;
|
||||
diff --git a/content/browser/accessibility/browser_accessibility_cocoa.mm b/content/browser/accessibility/browser_accessibility_cocoa.mm
|
||||
index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad6e989746 100644
|
||||
index aa15efe9a195a0b46cf95125dd9259b6df21377e..375ab8bed85a3d8966053bee2111c04132be61fb 100644
|
||||
--- a/content/browser/accessibility/browser_accessibility_cocoa.mm
|
||||
+++ b/content/browser/accessibility/browser_accessibility_cocoa.mm
|
||||
@@ -135,6 +135,7 @@ NSDictionary* attributeToMethodNameMap = nil;
|
||||
@@ -140,6 +140,7 @@
|
||||
// VoiceOver uses -1 to mean "no limit" for AXResultsLimit.
|
||||
const int kAXResultsLimitNoLimit = -1;
|
||||
|
||||
|
@ -49,7 +49,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
extern "C" {
|
||||
|
||||
// The following are private accessibility APIs required for cursor navigation
|
||||
@@ -341,6 +342,7 @@ NSAttributedString* GetAttributedTextForTextMarkerRange(
|
||||
@@ -344,6 +345,7 @@ void AddMisspelledTextAttributes(
|
||||
AddMisspelledTextAttributes(text_only_objects, attributed_text);
|
||||
return [attributed_text attributedSubstringFromRange:range];
|
||||
}
|
||||
|
@ -57,9 +57,9 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
|
||||
// Returns an autoreleased copy of the AXNodeData's attribute.
|
||||
NSString* NSStringForStringAttribute(
|
||||
@@ -595,7 +597,9 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
{NSAccessibilityDOMIdentifierAttribute, @"domIdentifier"},
|
||||
@@ -613,7 +615,9 @@ + (void)initialize {
|
||||
{NSAccessibilityEditableAncestorAttribute, @"editableAncestor"},
|
||||
{NSAccessibilityElementBusyAttribute, @"elementBusy"},
|
||||
{NSAccessibilityEnabledAttribute, @"enabled"},
|
||||
+#ifndef MAS_BUILD
|
||||
{NSAccessibilityEndTextMarkerAttribute, @"endTextMarker"},
|
||||
|
@ -67,7 +67,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
{NSAccessibilityExpandedAttribute, @"expanded"},
|
||||
{NSAccessibilityFocusableAncestorAttribute, @"focusableAncestor"},
|
||||
{NSAccessibilityFocusedAttribute, @"focused"},
|
||||
@@ -630,13 +634,17 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
@@ -648,13 +652,17 @@ + (void)initialize {
|
||||
{NSAccessibilityRowsAttribute, @"rows"},
|
||||
// TODO(aboxhall): expose
|
||||
// NSAccessibilityServesAsTitleForUIElementsAttribute
|
||||
|
@ -85,7 +85,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
{NSAccessibilitySizeAttribute, @"size"},
|
||||
{NSAccessibilitySortDirectionAttribute, @"sortDirection"},
|
||||
{NSAccessibilitySubroleAttribute, @"subrole"},
|
||||
@@ -1052,6 +1060,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
@@ -1143,6 +1151,7 @@ - (NSNumber*)enabled {
|
||||
ax::mojom::Restriction::kDisabled];
|
||||
}
|
||||
|
||||
|
@ -93,7 +93,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
// Returns a text marker that points to the last character in the document that
|
||||
// can be selected with VoiceOver.
|
||||
- (id)endTextMarker {
|
||||
@@ -1062,6 +1071,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
@@ -1153,6 +1162,7 @@ - (id)endTextMarker {
|
||||
BrowserAccessibilityPositionInstance position = root->CreatePositionAt(0);
|
||||
return CreateTextMarker(position->CreatePositionAtEndOfAnchor());
|
||||
}
|
||||
|
@ -101,7 +101,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
|
||||
- (NSNumber*)expanded {
|
||||
if (![self instanceActive])
|
||||
@@ -1922,6 +1932,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
@@ -2036,6 +2046,7 @@ - (NSValue*)selectedTextRange {
|
||||
return [NSValue valueWithRange:NSMakeRange(selStart, selLength)];
|
||||
}
|
||||
|
||||
|
@ -109,7 +109,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
- (id)selectedTextMarkerRange {
|
||||
if (![self instanceActive])
|
||||
return nil;
|
||||
@@ -1954,6 +1965,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
@@ -2068,6 +2079,7 @@ - (id)selectedTextMarkerRange {
|
||||
anchorAffinity, *focusObject,
|
||||
focusOffset, focusAffinity));
|
||||
}
|
||||
|
@ -117,7 +117,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
|
||||
- (NSValue*)size {
|
||||
if (![self instanceActive])
|
||||
@@ -1986,6 +1998,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
@@ -2100,6 +2112,7 @@ - (NSString*)sortDirection {
|
||||
return nil;
|
||||
}
|
||||
|
||||
|
@ -125,7 +125,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
// Returns a text marker that points to the first character in the document that
|
||||
// can be selected with VoiceOver.
|
||||
- (id)startTextMarker {
|
||||
@@ -1996,6 +2009,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
@@ -2110,6 +2123,7 @@ - (id)startTextMarker {
|
||||
BrowserAccessibilityPositionInstance position = root->CreatePositionAt(0);
|
||||
return CreateTextMarker(position->CreatePositionAtStartOfAnchor());
|
||||
}
|
||||
|
@ -133,7 +133,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
|
||||
// Returns a subrole based upon the role.
|
||||
- (NSString*) subrole {
|
||||
@@ -2301,12 +2315,14 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
@@ -2415,12 +2429,14 @@ - (NSAttributedString*)attributedValueForRange:(NSRange)range {
|
||||
NSMutableAttributedString* attributedValue =
|
||||
[[[NSMutableAttributedString alloc] initWithString:value] autorelease];
|
||||
|
||||
|
@ -148,7 +148,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
|
||||
return [attributedValue attributedSubstringFromRange:range];
|
||||
}
|
||||
@@ -2392,6 +2408,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
@@ -2506,6 +2522,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute
|
||||
return ToBrowserAccessibilityCocoa(cell);
|
||||
}
|
||||
|
||||
|
@ -156,7 +156,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
if ([attribute isEqualToString:@"AXUIElementForTextMarker"]) {
|
||||
BrowserAccessibilityPositionInstance position =
|
||||
CreatePositionFromTextMarker(parameter);
|
||||
@@ -2569,6 +2586,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
@@ -2683,6 +2700,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute
|
||||
NSString* text = GetTextForTextMarkerRange(parameter);
|
||||
return [NSNumber numberWithInt:[text length]];
|
||||
}
|
||||
|
@ -164,7 +164,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
|
||||
if ([attribute isEqualToString:
|
||||
NSAccessibilityBoundsForRangeParameterizedAttribute]) {
|
||||
@@ -2602,6 +2620,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
@@ -2716,6 +2734,7 @@ - (id)accessibilityAttributeValue:(NSString*)attribute
|
||||
return nil;
|
||||
}
|
||||
|
||||
|
@ -172,7 +172,7 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
if ([attribute isEqualToString:
|
||||
NSAccessibilityLineTextMarkerRangeForTextMarkerParameterizedAttribute]) {
|
||||
BrowserAccessibilityPositionInstance position =
|
||||
@@ -2677,6 +2696,7 @@ NSString* const NSAccessibilityRequiredAttributeChrome = @"AXRequired";
|
||||
@@ -2791,6 +2810,7 @@ AXPlatformRange range(position->CreatePreviousLineStartPosition(
|
||||
|
||||
return @(child->GetIndexInParent());
|
||||
}
|
||||
|
@ -181,10 +181,10 @@ index d1e716429cd96588c2df06d7c55ed6053d190f64..e1f41179b1cb3f9c68900ad0f0b0dbad
|
|||
return nil;
|
||||
}
|
||||
diff --git a/content/browser/accessibility/browser_accessibility_manager_mac.mm b/content/browser/accessibility/browser_accessibility_manager_mac.mm
|
||||
index 242a86ddd00517adc5e09310a25739ee34b3d23c..aa95e8ba159e5e185f0814d13d8743f3e5be9b67 100644
|
||||
index 7fe7130abd6a4844dd503b9cee198c8204cb0985..3e6b0ad576d3aa9951f84f6ce4175d84ffd67036 100644
|
||||
--- a/content/browser/accessibility/browser_accessibility_manager_mac.mm
|
||||
+++ b/content/browser/accessibility/browser_accessibility_manager_mac.mm
|
||||
@@ -463,6 +463,7 @@ NSDictionary* BrowserAccessibilityManagerMac::
|
||||
@@ -464,6 +464,7 @@ void PostAnnouncementNotification(NSString* announcement) {
|
||||
[user_info setObject:native_focus_object
|
||||
forKey:NSAccessibilityTextChangeElement];
|
||||
|
||||
|
@ -192,7 +192,7 @@ index 242a86ddd00517adc5e09310a25739ee34b3d23c..aa95e8ba159e5e185f0814d13d8743f3
|
|||
id selected_text = [native_focus_object selectedTextMarkerRange];
|
||||
if (selected_text) {
|
||||
NSString* const NSAccessibilitySelectedTextMarkerRangeAttribute =
|
||||
@@ -470,6 +471,7 @@ NSDictionary* BrowserAccessibilityManagerMac::
|
||||
@@ -471,6 +472,7 @@ void PostAnnouncementNotification(NSString* announcement) {
|
||||
[user_info setObject:selected_text
|
||||
forKey:NSAccessibilitySelectedTextMarkerRangeAttribute];
|
||||
}
|
||||
|
@ -201,7 +201,7 @@ index 242a86ddd00517adc5e09310a25739ee34b3d23c..aa95e8ba159e5e185f0814d13d8743f3
|
|||
}
|
||||
|
||||
diff --git a/content/renderer/renderer_main_platform_delegate_mac.mm b/content/renderer/renderer_main_platform_delegate_mac.mm
|
||||
index b7142c2871faf4a0ba8be79266e9515d81585bdd..3d80c332e9af280a166612f6be54b6f767d729a1 100644
|
||||
index d6e9a7064687abfcf5fa874ee0a454806586db04..7c7db44d8d66ca1f9ad570abf552b6454cc0eac0 100644
|
||||
--- a/content/renderer/renderer_main_platform_delegate_mac.mm
|
||||
+++ b/content/renderer/renderer_main_platform_delegate_mac.mm
|
||||
@@ -23,9 +23,11 @@
|
||||
|
@ -211,12 +211,12 @@ index b7142c2871faf4a0ba8be79266e9515d81585bdd..3d80c332e9af280a166612f6be54b6f7
|
|||
+#ifndef MAS_BUILD
|
||||
extern "C" {
|
||||
CGError CGSSetDenyWindowServerConnections(bool);
|
||||
};
|
||||
}
|
||||
+#endif
|
||||
|
||||
namespace content {
|
||||
|
||||
@@ -35,6 +37,7 @@ namespace {
|
||||
@@ -35,6 +37,7 @@
|
||||
// verifies there are no existing open connections), and then indicates that
|
||||
// Chrome should continue execution without access to launchservicesd.
|
||||
void DisableSystemServices() {
|
||||
|
@ -233,7 +233,7 @@ index b7142c2871faf4a0ba8be79266e9515d81585bdd..3d80c332e9af280a166612f6be54b6f7
|
|||
|
||||
// You are about to read a pretty disgusting hack. In a static initializer,
|
||||
diff --git a/device/bluetooth/bluetooth_adapter_mac.mm b/device/bluetooth/bluetooth_adapter_mac.mm
|
||||
index 6299846975301964c4066dff1a7eec40778e8d7f..c9c64e9ea8af9c02099695db38c27871e4e19852 100644
|
||||
index fe0b73b51492ca08cbebf3aec74ea0a7caf44aef..fb8b362097f18d947219af36f84b9bea7d4eccf1 100644
|
||||
--- a/device/bluetooth/bluetooth_adapter_mac.mm
|
||||
+++ b/device/bluetooth/bluetooth_adapter_mac.mm
|
||||
@@ -36,6 +36,7 @@
|
||||
|
@ -244,7 +244,7 @@ index 6299846975301964c4066dff1a7eec40778e8d7f..c9c64e9ea8af9c02099695db38c27871
|
|||
extern "C" {
|
||||
// Undocumented IOBluetooth Preference API [1]. Used by `blueutil` [2] and
|
||||
// `Karabiner` [3] to programmatically control the Bluetooth state. Calling the
|
||||
@@ -49,6 +50,7 @@ extern "C" {
|
||||
@@ -49,6 +50,7 @@
|
||||
// [4] https://support.apple.com/kb/PH25091
|
||||
void IOBluetoothPreferenceSetControllerPowerState(int state);
|
||||
}
|
||||
|
@ -252,7 +252,7 @@ index 6299846975301964c4066dff1a7eec40778e8d7f..c9c64e9ea8af9c02099695db38c27871
|
|||
|
||||
namespace {
|
||||
|
||||
@@ -128,8 +130,10 @@ BluetoothAdapterMac::BluetoothAdapterMac()
|
||||
@@ -128,8 +130,10 @@ CBCentralManagerState GetCBManagerState(CBCentralManager* manager) {
|
||||
controller_state_function_(
|
||||
base::BindRepeating(&BluetoothAdapterMac::GetHostControllerState,
|
||||
base::Unretained(this))),
|
||||
|
@ -263,7 +263,7 @@ index 6299846975301964c4066dff1a7eec40778e8d7f..c9c64e9ea8af9c02099695db38c27871
|
|||
should_update_name_(true),
|
||||
classic_discovery_manager_(
|
||||
BluetoothDiscoveryManagerMac::CreateClassic(this)),
|
||||
@@ -327,8 +331,12 @@ bool BluetoothAdapterMac::IsLowEnergyAvailable() {
|
||||
@@ -327,8 +331,12 @@ CBCentralManagerState GetCBManagerState(CBCentralManager* manager) {
|
||||
}
|
||||
|
||||
bool BluetoothAdapterMac::SetPoweredImpl(bool powered) {
|
||||
|
@ -277,10 +277,10 @@ index 6299846975301964c4066dff1a7eec40778e8d7f..c9c64e9ea8af9c02099695db38c27871
|
|||
|
||||
void BluetoothAdapterMac::RemovePairingDelegateInternal(
|
||||
diff --git a/media/audio/BUILD.gn b/media/audio/BUILD.gn
|
||||
index 982904023e2538bbb3039e0014542248b6f589ca..f909eeb8ac8f876897dbbd233d6fd17636607974 100644
|
||||
index fa3a7b08b0ae4f09ff2aeffffc93e65181f4994b..64cf5f96e7c85e2d8969c11ccd27ba6d3154fe91 100644
|
||||
--- a/media/audio/BUILD.gn
|
||||
+++ b/media/audio/BUILD.gn
|
||||
@@ -186,6 +186,12 @@ source_set("audio") {
|
||||
@@ -184,6 +184,12 @@ source_set("audio") {
|
||||
"mac/scoped_audio_unit.cc",
|
||||
"mac/scoped_audio_unit.h",
|
||||
]
|
||||
|
@ -307,10 +307,10 @@ index a1091960873dad8bb1b0129d20a552bf8a51739f..50bb186d1474fd4c90723ac97ac93b1d
|
|||
}
|
||||
|
||||
diff --git a/net/dns/dns_config_service_posix.cc b/net/dns/dns_config_service_posix.cc
|
||||
index 31c564faeee2c082d23e2a99753f9fee592b6212..4d032d65820ebf4f3ce4d8acb84d2354b4ab8789 100644
|
||||
index 6e45b8031b6373b3979f2cc8dd89ae3c3b12f535..6e1a3c7c3ddd3e7c2d2cd2b38680479e50ee5340 100644
|
||||
--- a/net/dns/dns_config_service_posix.cc
|
||||
+++ b/net/dns/dns_config_service_posix.cc
|
||||
@@ -244,6 +244,7 @@ class DnsConfigServicePosix::Watcher {
|
||||
@@ -245,6 +245,7 @@ class DnsConfigServicePosix::Watcher {
|
||||
|
||||
bool Watch() {
|
||||
bool success = true;
|
||||
|
@ -318,7 +318,7 @@ index 31c564faeee2c082d23e2a99753f9fee592b6212..4d032d65820ebf4f3ce4d8acb84d2354
|
|||
if (!config_watcher_.Watch(base::Bind(&Watcher::OnConfigChanged,
|
||||
base::Unretained(this)))) {
|
||||
LOG(ERROR) << "DNS config watch failed to start.";
|
||||
@@ -265,6 +266,7 @@ class DnsConfigServicePosix::Watcher {
|
||||
@@ -266,6 +267,7 @@ class DnsConfigServicePosix::Watcher {
|
||||
DNS_CONFIG_WATCH_MAX);
|
||||
}
|
||||
#endif // !defined(OS_ANDROID) && !defined(OS_IOS)
|
||||
|
@ -347,7 +347,7 @@ index e524aa7b851022abed1edac39e18d8d92e5349b4..718d3f963da5c1a15a1bdb0e6043f89b
|
|||
}
|
||||
|
||||
diff --git a/sandbox/mac/seatbelt.cc b/sandbox/mac/seatbelt.cc
|
||||
index dfba0bded9e34be276ed111cbab44210a95b9875..876f96999f53b4666508f783a33cea245d1bc03e 100644
|
||||
index e0c31170acd13c9997c6b1d04c6de1420feaf422..0e561f97b33380bfbe52e64c2c4a6988095e8074 100644
|
||||
--- a/sandbox/mac/seatbelt.cc
|
||||
+++ b/sandbox/mac/seatbelt.cc
|
||||
@@ -64,7 +64,11 @@ void Seatbelt::FreeError(char* errorbuf) {
|
||||
|
|
|
@ -7,10 +7,10 @@ Do not check for unique origin in CacheStorage, in Electron we may have
|
|||
scripts running without an origin.
|
||||
|
||||
diff --git a/content/browser/cache_storage/cache_storage.cc b/content/browser/cache_storage/cache_storage.cc
|
||||
index 1c638d8f4b3b3be83d64febf297699161c4a3cf3..56f88da0a43d3114918cbca1f1982fff2fdc0bb3 100644
|
||||
index 9e0249a6060b4d84cd8a99db2e40d96b4e715148..2e8e12de9778eeb2bc45e293b6653feeb5b6f779 100644
|
||||
--- a/content/browser/cache_storage/cache_storage.cc
|
||||
+++ b/content/browser/cache_storage/cache_storage.cc
|
||||
@@ -131,7 +131,7 @@ class CacheStorage::CacheLoader {
|
||||
@@ -103,7 +103,7 @@ class CacheStorage::CacheLoader {
|
||||
cache_storage_(cache_storage),
|
||||
origin_(origin),
|
||||
owner_(owner) {
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: pass RenderProcessHost through to PlatformNotificationService
|
|||
this is so Electron can identify which renderer a notification came from
|
||||
|
||||
diff --git a/content/browser/notifications/blink_notification_service_impl.cc b/content/browser/notifications/blink_notification_service_impl.cc
|
||||
index 8d742bb1ed991e386073879c33142bb93d3b4e29..bdc435353751241c528b7331e37f76e90cb1becb 100644
|
||||
index 7c6b38b94d714ec2a878ce3cf0448028fbf7c19b..f26dd52579544ad030b603a16ef0ff03ecebb42a 100644
|
||||
--- a/content/browser/notifications/blink_notification_service_impl.cc
|
||||
+++ b/content/browser/notifications/blink_notification_service_impl.cc
|
||||
@@ -48,9 +48,11 @@ BlinkNotificationServiceImpl::BlinkNotificationServiceImpl(
|
||||
@@ -50,9 +50,11 @@ BlinkNotificationServiceImpl::BlinkNotificationServiceImpl(
|
||||
PlatformNotificationContextImpl* notification_context,
|
||||
BrowserContext* browser_context,
|
||||
scoped_refptr<ServiceWorkerContextWrapper> service_worker_context,
|
||||
|
@ -21,7 +21,7 @@ index 8d742bb1ed991e386073879c33142bb93d3b4e29..bdc435353751241c528b7331e37f76e9
|
|||
browser_context_(browser_context),
|
||||
service_worker_context_(std::move(service_worker_context)),
|
||||
origin_(origin),
|
||||
@@ -110,7 +112,7 @@ void BlinkNotificationServiceImpl::DisplayNonPersistentNotification(
|
||||
@@ -112,7 +114,7 @@ void BlinkNotificationServiceImpl::DisplayNonPersistentNotification(
|
||||
notification_id, std::move(event_listener_ptr));
|
||||
|
||||
GetNotificationService()->DisplayNotification(
|
||||
|
@ -31,7 +31,7 @@ index 8d742bb1ed991e386073879c33142bb93d3b4e29..bdc435353751241c528b7331e37f76e9
|
|||
}
|
||||
|
||||
diff --git a/content/browser/notifications/blink_notification_service_impl.h b/content/browser/notifications/blink_notification_service_impl.h
|
||||
index 1ae12ca955024b85296449eb33f18af7f7bea37d..6d1df92efe1aec0a51cdb90a7731b187a3433154 100644
|
||||
index 088637b68b1fb40fb8a32bb72781b425077e668a..ec2cce6b644e6cc8fd899a761fb55d9a01b65f98 100644
|
||||
--- a/content/browser/notifications/blink_notification_service_impl.h
|
||||
+++ b/content/browser/notifications/blink_notification_service_impl.h
|
||||
@@ -36,6 +36,7 @@ class CONTENT_EXPORT BlinkNotificationServiceImpl
|
||||
|
@ -42,7 +42,7 @@ index 1ae12ca955024b85296449eb33f18af7f7bea37d..6d1df92efe1aec0a51cdb90a7731b187
|
|||
const url::Origin& origin,
|
||||
mojo::InterfaceRequest<blink::mojom::NotificationService> request);
|
||||
~BlinkNotificationServiceImpl() override;
|
||||
@@ -104,6 +105,7 @@ class CONTENT_EXPORT BlinkNotificationServiceImpl
|
||||
@@ -99,6 +100,7 @@ class CONTENT_EXPORT BlinkNotificationServiceImpl
|
||||
// The notification context that owns this service instance.
|
||||
PlatformNotificationContextImpl* notification_context_;
|
||||
|
||||
|
@ -51,10 +51,10 @@ index 1ae12ca955024b85296449eb33f18af7f7bea37d..6d1df92efe1aec0a51cdb90a7731b187
|
|||
|
||||
scoped_refptr<ServiceWorkerContextWrapper> service_worker_context_;
|
||||
diff --git a/content/browser/notifications/blink_notification_service_impl_unittest.cc b/content/browser/notifications/blink_notification_service_impl_unittest.cc
|
||||
index 9985cfee820e4bb536813e39ebdca9b45574d6cf..e0636fde3c97bb4fce19b6042344cb432d96427c 100644
|
||||
index 759e317999ec4f37f185310724374c655c2f24fe..874f6d1fb6d2bddc0e6711080adfadc3f7156b0e 100644
|
||||
--- a/content/browser/notifications/blink_notification_service_impl_unittest.cc
|
||||
+++ b/content/browser/notifications/blink_notification_service_impl_unittest.cc
|
||||
@@ -126,7 +126,7 @@ class BlinkNotificationServiceImplTest : public ::testing::Test {
|
||||
@@ -127,7 +127,7 @@ class BlinkNotificationServiceImplTest : public ::testing::Test {
|
||||
|
||||
notification_service_ = std::make_unique<BlinkNotificationServiceImpl>(
|
||||
notification_context_.get(), &browser_context_,
|
||||
|
@ -64,10 +64,10 @@ index 9985cfee820e4bb536813e39ebdca9b45574d6cf..e0636fde3c97bb4fce19b6042344cb43
|
|||
mojo::MakeRequest(¬ification_service_ptr_));
|
||||
|
||||
diff --git a/content/browser/notifications/platform_notification_context_impl.cc b/content/browser/notifications/platform_notification_context_impl.cc
|
||||
index 9b31e66db71ad167d593dd037bcecf4151b1452e..d01fe86c8f1ad8c9610b4b66f7b2b14bd819e359 100644
|
||||
index d78bd8005178dea2dd3985527de4709e28b1ac3e..11d82930e851975997fcc69f623c4ec154f83dcc 100644
|
||||
--- a/content/browser/notifications/platform_notification_context_impl.cc
|
||||
+++ b/content/browser/notifications/platform_notification_context_impl.cc
|
||||
@@ -127,12 +127,13 @@ void PlatformNotificationContextImpl::ShutdownOnIO() {
|
||||
@@ -108,12 +108,13 @@ void PlatformNotificationContextImpl::Shutdown() {
|
||||
}
|
||||
|
||||
void PlatformNotificationContextImpl::CreateService(
|
||||
|
@ -84,7 +84,7 @@ index 9b31e66db71ad167d593dd037bcecf4151b1452e..d01fe86c8f1ad8c9610b4b66f7b2b14b
|
|||
|
||||
void PlatformNotificationContextImpl::RemoveService(
|
||||
diff --git a/content/browser/notifications/platform_notification_context_impl.h b/content/browser/notifications/platform_notification_context_impl.h
|
||||
index 653f487b0b0e01de7cdda8483f081550a9077e98..da9e5f53d07eaaf11525efd996be9420f0189a88 100644
|
||||
index 09fd40b0a55a9799dc8018ea69a85cb25724fa63..143335b6ba90b0d0aef8aa95687db1dbcc2bdf79 100644
|
||||
--- a/content/browser/notifications/platform_notification_context_impl.h
|
||||
+++ b/content/browser/notifications/platform_notification_context_impl.h
|
||||
@@ -22,6 +22,7 @@
|
||||
|
@ -95,10 +95,10 @@ index 653f487b0b0e01de7cdda8483f081550a9077e98..da9e5f53d07eaaf11525efd996be9420
|
|||
#include "third_party/blink/public/platform/modules/notifications/notification_service.mojom.h"
|
||||
|
||||
class GURL;
|
||||
@@ -65,7 +66,8 @@ class CONTENT_EXPORT PlatformNotificationContextImpl
|
||||
@@ -62,7 +63,8 @@ class CONTENT_EXPORT PlatformNotificationContextImpl
|
||||
void Shutdown();
|
||||
|
||||
// Creates a BlinkNotificationServiceImpl that is owned by this context. Must
|
||||
// be called on the UI thread.
|
||||
// Creates a BlinkNotificationServiceImpl that is owned by this context.
|
||||
- void CreateService(const url::Origin& origin,
|
||||
+ void CreateService(RenderProcessHost* render_process_host,
|
||||
+ const url::Origin& origin,
|
||||
|
@ -119,7 +119,7 @@ index 8e4df0b15aebc30c517a8c99f20201d8148777e0..ad49782df16c92a6ed0f736a5980263d
|
|||
parameterized_binder_registry_.AddInterface(
|
||||
base::BindRepeating(&BackgroundFetchServiceImpl::CreateForWorker));
|
||||
diff --git a/content/public/browser/platform_notification_service.h b/content/public/browser/platform_notification_service.h
|
||||
index 80ffd8d426c2380d57172a951a8cd15a0393bf88..0cf9ee3a44647f44bcd89351931c162370ebfe29 100644
|
||||
index c7209a74a84ae4a284170ba882ee537cb732d467..4960a11bc922fd79c00bf418e1468f09f0457407 100644
|
||||
--- a/content/public/browser/platform_notification_service.h
|
||||
+++ b/content/public/browser/platform_notification_service.h
|
||||
@@ -27,6 +27,7 @@ struct PlatformNotificationData;
|
||||
|
@ -139,10 +139,10 @@ index 80ffd8d426c2380d57172a951a8cd15a0393bf88..0cf9ee3a44647f44bcd89351931c1623
|
|||
const std::string& notification_id,
|
||||
const GURL& origin,
|
||||
diff --git a/content/test/mock_platform_notification_service.cc b/content/test/mock_platform_notification_service.cc
|
||||
index 0246db2c6d249843867d26d7ae6eb77f781e30a8..bc232b2684652e0febef9f3fe2f5e5e97719f06b 100644
|
||||
index 7d16ee63cd349c107a0a0c35446cef557be1aed1..ac9860af1234d2c451525bbd924b79fb32f99015 100644
|
||||
--- a/content/test/mock_platform_notification_service.cc
|
||||
+++ b/content/test/mock_platform_notification_service.cc
|
||||
@@ -22,6 +22,7 @@ MockPlatformNotificationService::MockPlatformNotificationService() = default;
|
||||
@@ -26,6 +26,7 @@ MockPlatformNotificationService::MockPlatformNotificationService() = default;
|
||||
MockPlatformNotificationService::~MockPlatformNotificationService() = default;
|
||||
|
||||
void MockPlatformNotificationService::DisplayNotification(
|
||||
|
@ -151,7 +151,7 @@ index 0246db2c6d249843867d26d7ae6eb77f781e30a8..bc232b2684652e0febef9f3fe2f5e5e9
|
|||
const std::string& notification_id,
|
||||
const GURL& origin,
|
||||
diff --git a/content/test/mock_platform_notification_service.h b/content/test/mock_platform_notification_service.h
|
||||
index 1d38db3e3d141b32b237c0f4ebe6abc80751225c..4f6dcf2c72493b1c29751ec5f7b16bf96946f4a5 100644
|
||||
index 89aad27b34da99fc90e2d0352994eb3baa64fae4..0c8b8dbdacc83006c53fd85894d95c8fa01166d8 100644
|
||||
--- a/content/test/mock_platform_notification_service.h
|
||||
+++ b/content/test/mock_platform_notification_service.h
|
||||
@@ -45,6 +45,7 @@ class MockPlatformNotificationService : public PlatformNotificationService {
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: out_of_process_instance.patch
|
|||
|
||||
|
||||
diff --git a/pdf/out_of_process_instance.cc b/pdf/out_of_process_instance.cc
|
||||
index 7ef9271e59d7e6841150975f8b74b3565a6aaae5..23502ff1f08b7332eb32121f52f040520241b084 100644
|
||||
index 25bb9fdd9b5c4cedccd401ca24d75807ddd77842..38987a29fdccbf1d4740779157b296cd4ea46cb2 100644
|
||||
--- a/pdf/out_of_process_instance.cc
|
||||
+++ b/pdf/out_of_process_instance.cc
|
||||
@@ -462,7 +462,9 @@ bool OutOfProcessInstance::Init(uint32_t argc,
|
||||
|
|
|
@ -61,10 +61,10 @@ index 83cedb4c9e1323259afd041e571240cd971e1241..3686ae2fab5f400cf119a54aea547a72
|
|||
+ return PP_OK;
|
||||
}
|
||||
diff --git a/chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc b/chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc
|
||||
index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d771509ccccee 100644
|
||||
index 9d249be9345202f1022f550f73cb8bdd1b327c56..e63ca22a2ebe3f380f6d06ac4f1b1eb8e5ff7e53 100644
|
||||
--- a/chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc
|
||||
+++ b/chrome/browser/renderer_host/pepper/pepper_flash_browser_host.cc
|
||||
@@ -7,9 +7,11 @@
|
||||
@@ -8,9 +8,11 @@
|
||||
#include "base/task/post_task.h"
|
||||
#include "base/time/time.h"
|
||||
#include "build/build_config.h"
|
||||
|
@ -76,7 +76,7 @@ index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d7715
|
|||
#include "content/public/browser/browser_context.h"
|
||||
#include "content/public/browser/browser_ppapi_host.h"
|
||||
#include "content/public/browser/browser_task_traits.h"
|
||||
@@ -42,6 +44,7 @@ using content::ServiceManagerConnection;
|
||||
@@ -43,6 +45,7 @@ using content::ServiceManagerConnection;
|
||||
|
||||
namespace {
|
||||
|
||||
|
@ -84,7 +84,7 @@ index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d7715
|
|||
// Get the CookieSettings on the UI thread for the given render process ID.
|
||||
scoped_refptr<content_settings::CookieSettings> GetCookieSettings(
|
||||
int render_process_id) {
|
||||
@@ -55,6 +58,7 @@ scoped_refptr<content_settings::CookieSettings> GetCookieSettings(
|
||||
@@ -56,6 +59,7 @@ scoped_refptr<content_settings::CookieSettings> GetCookieSettings(
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
@ -92,7 +92,7 @@ index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d7715
|
|||
|
||||
void PepperBindConnectorRequest(
|
||||
service_manager::mojom::ConnectorRequest connector_request) {
|
||||
@@ -72,7 +76,9 @@ PepperFlashBrowserHost::PepperFlashBrowserHost(BrowserPpapiHost* host,
|
||||
@@ -73,7 +77,9 @@ PepperFlashBrowserHost::PepperFlashBrowserHost(BrowserPpapiHost* host,
|
||||
PP_Instance instance,
|
||||
PP_Resource resource)
|
||||
: ResourceHost(host->GetPpapiHost(), instance, resource),
|
||||
|
@ -102,7 +102,7 @@ index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d7715
|
|||
delay_timer_(FROM_HERE, base::TimeDelta::FromSeconds(45), this,
|
||||
&PepperFlashBrowserHost::OnDelayTimerFired),
|
||||
weak_factory_(this) {
|
||||
@@ -124,6 +130,7 @@ int32_t PepperFlashBrowserHost::OnGetLocalTimeZoneOffset(
|
||||
@@ -125,6 +131,7 @@ int32_t PepperFlashBrowserHost::OnGetLocalTimeZoneOffset(
|
||||
|
||||
int32_t PepperFlashBrowserHost::OnGetLocalDataRestrictions(
|
||||
ppapi::host::HostMessageContext* context) {
|
||||
|
@ -110,7 +110,7 @@ index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d7715
|
|||
// Getting the Flash LSO settings requires using the CookieSettings which
|
||||
// belong to the profile which lives on the UI thread. We lazily initialize
|
||||
// |cookie_settings_| by grabbing the reference from the UI thread and then
|
||||
@@ -144,9 +151,11 @@ int32_t PepperFlashBrowserHost::OnGetLocalDataRestrictions(
|
||||
@@ -145,9 +152,11 @@ int32_t PepperFlashBrowserHost::OnGetLocalDataRestrictions(
|
||||
context->MakeReplyMessageContext(), document_url,
|
||||
plugin_url));
|
||||
}
|
||||
|
@ -123,7 +123,7 @@ index 1ecf64b2068a9c4a234c3ef075a5b22dfc61669a..fa58a62346de7e57f6473ebce23d7715
|
|||
void PepperFlashBrowserHost::GetLocalDataRestrictions(
|
||||
ppapi::host::ReplyMessageContext reply_context,
|
||||
const GURL& document_url,
|
||||
@@ -175,6 +184,7 @@ void PepperFlashBrowserHost::GetLocalDataRestrictions(
|
||||
@@ -176,6 +185,7 @@ void PepperFlashBrowserHost::GetLocalDataRestrictions(
|
||||
PpapiPluginMsg_Flash_GetLocalDataRestrictionsReply(
|
||||
static_cast<int32_t>(restrictions)));
|
||||
}
|
||||
|
@ -179,7 +179,7 @@ index 154120ce5156d77dd302b85cb17e2f14fb69cc2d..5152fd847c012fc2f40017687db426fa
|
|||
|
||||
DISALLOW_COPY_AND_ASSIGN(PepperFlashBrowserHost);
|
||||
diff --git a/chrome/browser/renderer_host/pepper/pepper_flash_drm_host.cc b/chrome/browser/renderer_host/pepper/pepper_flash_drm_host.cc
|
||||
index 1644f1233e2ae3142f7c9b450b0af97ae7325abc..bac25204c3afa7b87ed9e2861f96b5168b3e8aa6 100644
|
||||
index b007195efb9202f2cc8aeeb20821afbf5e8af74d..50b50a5eb48cc4efb71ffa0719bcd1f0363853e1 100644
|
||||
--- a/chrome/browser/renderer_host/pepper/pepper_flash_drm_host.cc
|
||||
+++ b/chrome/browser/renderer_host/pepper/pepper_flash_drm_host.cc
|
||||
@@ -20,6 +20,7 @@
|
||||
|
|
|
@ -9,7 +9,7 @@ majority of changes originally come from these PRs:
|
|||
* https://github.com/electron/electron/pull/8596
|
||||
|
||||
diff --git a/chrome/browser/printing/print_job_worker.cc b/chrome/browser/printing/print_job_worker.cc
|
||||
index 961e1560aa914942c01372c354059d6d6b72c50f..aa51b2b2b0e1950f7a660d48bda5e61ecea8951c 100644
|
||||
index 691c476708b6bcef9f231bc990b81dd06c4c0cc4..d124a4558affaf244ea82ab37f823db6e345d499 100644
|
||||
--- a/chrome/browser/printing/print_job_worker.cc
|
||||
+++ b/chrome/browser/printing/print_job_worker.cc
|
||||
@@ -21,12 +21,12 @@
|
||||
|
@ -166,20 +166,20 @@ index a2569836d04ff968e690215f56f6de3b6d884874..6ddec22641b74d5484c2e0d4f62e5d71
|
|||
bool printing_succeeded_;
|
||||
|
||||
diff --git a/chrome/browser/printing/printing_message_filter.cc b/chrome/browser/printing/printing_message_filter.cc
|
||||
index df6cdee86c1bc34eef013f7d36deb77a8dfa7ecb..2692f831de4699b68a5b79982d440c318e40da69 100644
|
||||
index 3f6007d5c09ee9fdab534356d38d1e06e4573794..5ebb5e5255fefd2e8e611144a0745e92e069ea62 100644
|
||||
--- a/chrome/browser/printing/printing_message_filter.cc
|
||||
+++ b/chrome/browser/printing/printing_message_filter.cc
|
||||
@@ -22,6 +22,7 @@
|
||||
#include "components/keyed_service/content/browser_context_keyed_service_shutdown_notifier_factory.h"
|
||||
#include "components/printing/browser/print_manager_utils.h"
|
||||
#include "components/printing/common/print_messages.h"
|
||||
#include "content/public/browser/browser_task_traits.h"
|
||||
+#include "content/public/browser/browser_context.h"
|
||||
#include "content/public/browser/browser_task_traits.h"
|
||||
#include "content/public/browser/render_frame_host.h"
|
||||
#include "content/public/browser/web_contents.h"
|
||||
#include "content/public/common/child_process_host.h"
|
||||
@@ -82,20 +83,23 @@ PrintViewManager* GetPrintViewManager(int render_process_id,
|
||||
|
||||
} // namespace
|
||||
@@ -95,20 +96,23 @@ void PrintingMessageFilter::SetTestUpdatePrintSettingsReply(
|
||||
test_params = print_params;
|
||||
}
|
||||
|
||||
-PrintingMessageFilter::PrintingMessageFilter(int render_process_id,
|
||||
- Profile* profile)
|
||||
|
@ -204,7 +204,7 @@ index df6cdee86c1bc34eef013f7d36deb77a8dfa7ecb..2692f831de4699b68a5b79982d440c31
|
|||
}
|
||||
|
||||
PrintingMessageFilter::~PrintingMessageFilter() {
|
||||
@@ -131,11 +135,13 @@ bool PrintingMessageFilter::OnMessageReceived(const IPC::Message& message) {
|
||||
@@ -144,11 +148,13 @@ bool PrintingMessageFilter::OnMessageReceived(const IPC::Message& message) {
|
||||
void PrintingMessageFilter::OnGetDefaultPrintSettings(IPC::Message* reply_msg) {
|
||||
DCHECK_CURRENTLY_ON(BrowserThread::IO);
|
||||
scoped_refptr<PrinterQuery> printer_query;
|
||||
|
@ -218,7 +218,7 @@ index df6cdee86c1bc34eef013f7d36deb77a8dfa7ecb..2692f831de4699b68a5b79982d440c31
|
|||
printer_query = queue_->PopPrinterQuery(0);
|
||||
if (!printer_query.get()) {
|
||||
printer_query =
|
||||
@@ -221,11 +227,13 @@ void PrintingMessageFilter::OnUpdatePrintSettings(int document_cookie,
|
||||
@@ -234,11 +240,13 @@ void PrintingMessageFilter::OnUpdatePrintSettings(int document_cookie,
|
||||
base::Value job_settings,
|
||||
IPC::Message* reply_msg) {
|
||||
scoped_refptr<PrinterQuery> printer_query;
|
||||
|
@ -232,7 +232,7 @@ index df6cdee86c1bc34eef013f7d36deb77a8dfa7ecb..2692f831de4699b68a5b79982d440c31
|
|||
printer_query = queue_->PopPrinterQuery(document_cookie);
|
||||
if (!printer_query.get()) {
|
||||
printer_query = queue_->CreatePrinterQuery(
|
||||
@@ -284,7 +292,7 @@ void PrintingMessageFilter::OnUpdatePrintSettingsReply(
|
||||
@@ -302,7 +310,7 @@ void PrintingMessageFilter::OnUpdatePrintSettingsReply(
|
||||
#if BUILDFLAG(ENABLE_PRINT_PREVIEW)
|
||||
void PrintingMessageFilter::OnCheckForCancel(const PrintHostMsg_PreviewIds& ids,
|
||||
bool* cancel) {
|
||||
|
@ -242,11 +242,11 @@ index df6cdee86c1bc34eef013f7d36deb77a8dfa7ecb..2692f831de4699b68a5b79982d440c31
|
|||
#endif
|
||||
|
||||
diff --git a/chrome/browser/printing/printing_message_filter.h b/chrome/browser/printing/printing_message_filter.h
|
||||
index c4d586e62f14c3002993a2dbc7e478027d8f9b02..85d5fc55e93bea0080cd03316f29856bcaf27b59 100644
|
||||
index 4607c9af91bb604bb4753eb54c2013e58698ff30..58cbf62a1bc1e18327e987cd55524848d2eca05e 100644
|
||||
--- a/chrome/browser/printing/printing_message_filter.h
|
||||
+++ b/chrome/browser/printing/printing_message_filter.h
|
||||
@@ -23,6 +23,10 @@ struct PrintHostMsg_PreviewIds;
|
||||
struct PrintHostMsg_ScriptedPrint_Params;
|
||||
@@ -24,6 +24,10 @@ struct PrintHostMsg_ScriptedPrint_Params;
|
||||
struct PrintMsg_Print_Params;
|
||||
class Profile;
|
||||
|
||||
+namespace content {
|
||||
|
@ -256,10 +256,10 @@ index c4d586e62f14c3002993a2dbc7e478027d8f9b02..85d5fc55e93bea0080cd03316f29856b
|
|||
namespace printing {
|
||||
|
||||
class PrintQueriesQueue;
|
||||
@@ -32,7 +36,8 @@ class PrinterQuery;
|
||||
// renderer process on the IPC thread.
|
||||
class PrintingMessageFilter : public content::BrowserMessageFilter {
|
||||
public:
|
||||
@@ -37,7 +41,8 @@ class PrintingMessageFilter : public content::BrowserMessageFilter {
|
||||
static void SetTestUpdatePrintSettingsReply(
|
||||
const PrintMsg_Print_Params& print_params);
|
||||
|
||||
- PrintingMessageFilter(int render_process_id, Profile* profile);
|
||||
+ PrintingMessageFilter(int render_process_id,
|
||||
+ content::BrowserContext* browser_context);
|
||||
|
@ -283,7 +283,7 @@ index 1802034a6e15a6ad8b0d9591cfb79ba5873dc982..a827091facdb4f6b1d74ce826c3492ce
|
|||
// Like PrintMsg_PrintPages, but using the print preview document's frame/node.
|
||||
IPC_MESSAGE_ROUTED0(PrintMsg_PrintForSystemDialog)
|
||||
diff --git a/components/printing/renderer/print_render_frame_helper.cc b/components/printing/renderer/print_render_frame_helper.cc
|
||||
index d51abda693de7fc701928e29fe35154169f41651..051958321c9b95d5951f76ee822dd67a17d18324 100644
|
||||
index 560a6e4d12c90958c3dbe858c446e50f8ff0d020..7c4be124adeaf0535191da9ff339e9bf33b378a0 100644
|
||||
--- a/components/printing/renderer/print_render_frame_helper.cc
|
||||
+++ b/components/printing/renderer/print_render_frame_helper.cc
|
||||
@@ -1109,7 +1109,9 @@ void PrintRenderFrameHelper::ScriptedPrint(bool user_initiated) {
|
||||
|
@ -438,10 +438,10 @@ index d51abda693de7fc701928e29fe35154169f41651..051958321c9b95d5951f76ee822dd67a
|
|||
Send(new PrintHostMsg_ShowInvalidPrinterSettingsError(routing_id()));
|
||||
return false;
|
||||
diff --git a/components/printing/renderer/print_render_frame_helper.h b/components/printing/renderer/print_render_frame_helper.h
|
||||
index 34690801675c8b049d195e37f4fa400c6b30a644..2587534c550612809a4235f4ff92cc6fa962765c 100644
|
||||
index c4effb05d16cd67acf3d8140d25eb33fb4814dc3..0660062708438a2de7132b1a39dcbac85f8b8cbf 100644
|
||||
--- a/components/printing/renderer/print_render_frame_helper.h
|
||||
+++ b/components/printing/renderer/print_render_frame_helper.h
|
||||
@@ -192,7 +192,9 @@ class PrintRenderFrameHelper
|
||||
@@ -193,7 +193,9 @@ class PrintRenderFrameHelper
|
||||
bool OnMessageReceived(const IPC::Message& message) override;
|
||||
|
||||
// Message handlers ---------------------------------------------------------
|
||||
|
@ -452,7 +452,7 @@ index 34690801675c8b049d195e37f4fa400c6b30a644..2587534c550612809a4235f4ff92cc6f
|
|||
void OnPrintForSystemDialog();
|
||||
#if BUILDFLAG(ENABLE_PRINT_PREVIEW)
|
||||
void OnInitiatePrintPreview(bool has_selection);
|
||||
@@ -243,7 +245,10 @@ class PrintRenderFrameHelper
|
||||
@@ -244,7 +246,10 @@ class PrintRenderFrameHelper
|
||||
// WARNING: |this| may be gone after this method returns.
|
||||
void Print(blink::WebLocalFrame* frame,
|
||||
const blink::WebNode& node,
|
||||
|
@ -464,7 +464,7 @@ index 34690801675c8b049d195e37f4fa400c6b30a644..2587534c550612809a4235f4ff92cc6f
|
|||
|
||||
// Notification when printing is done - signal tear-down/free resources.
|
||||
void DidFinishPrinting(PrintingResult result);
|
||||
@@ -252,12 +257,14 @@ class PrintRenderFrameHelper
|
||||
@@ -253,12 +258,14 @@ class PrintRenderFrameHelper
|
||||
|
||||
// Initialize print page settings with default settings.
|
||||
// Used only for native printing workflow.
|
||||
|
|
|
@ -67,10 +67,10 @@ index f1e287553244cfd1054c4949ffbb1acdaccbe1e2..94cbca68cedc314d55993375bc48159c
|
|||
}
|
||||
#endif
|
||||
diff --git a/chrome/browser/net/proxy_config_monitor.h b/chrome/browser/net/proxy_config_monitor.h
|
||||
index c6c1fa51cbf35e8183a34848f79ed8dcbc97e0e2..c511bf188b0f24a9bf6c8729d9188c9bf342cf6a 100644
|
||||
index 0f20947c7819c3be2086a69f5997412652a99915..a88a1e001a4c1b8d7bafdac74fb060a1ee30361d 100644
|
||||
--- a/chrome/browser/net/proxy_config_monitor.h
|
||||
+++ b/chrome/browser/net/proxy_config_monitor.h
|
||||
@@ -38,11 +38,12 @@ class ProxyConfigMonitor : public net::ProxyConfigService::Observer,
|
||||
@@ -40,11 +40,12 @@ class ProxyConfigMonitor : public net::ProxyConfigService::Observer,
|
||||
|
||||
{
|
||||
public:
|
||||
|
@ -84,7 +84,7 @@ index c6c1fa51cbf35e8183a34848f79ed8dcbc97e0e2..c511bf188b0f24a9bf6c8729d9188c9b
|
|||
// Creates a ProxyConfigMonitor that gets proxy settings from the
|
||||
// |local_state|, for use with NetworkContexts not
|
||||
// associated with a profile. Must be destroyed before |local_state|.
|
||||
@@ -89,7 +90,6 @@ class ProxyConfigMonitor : public net::ProxyConfigService::Observer,
|
||||
@@ -91,7 +92,6 @@ class ProxyConfigMonitor : public net::ProxyConfigService::Observer,
|
||||
|
||||
#if BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
mojo::BindingSet<network::mojom::ProxyErrorClient> error_binding_set_;
|
||||
|
|
|
@ -5,10 +5,10 @@ Subject: render_widget_host_view_base.patch
|
|||
|
||||
|
||||
diff --git a/content/browser/renderer_host/render_widget_host_view_base.cc b/content/browser/renderer_host/render_widget_host_view_base.cc
|
||||
index 7e2761a4afb131982ad436388e73d9bf69618627..f6f72559a711e65c48f555b849b78966774e606f 100644
|
||||
index 68d55c2f9e2da0a987cd0629762bf2dfa32b83f5..0ce79827459e67c65da2bac738663610d278b56a 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_view_base.cc
|
||||
+++ b/content/browser/renderer_host/render_widget_host_view_base.cc
|
||||
@@ -670,6 +670,15 @@ viz::FrameSinkId RenderWidgetHostViewBase::FrameSinkIdAtPoint(
|
||||
@@ -652,6 +652,15 @@ viz::FrameSinkId RenderWidgetHostViewBase::FrameSinkIdAtPoint(
|
||||
return frame_sink_id.is_valid() ? frame_sink_id : GetFrameSinkId();
|
||||
}
|
||||
|
||||
|
@ -25,7 +25,7 @@ index 7e2761a4afb131982ad436388e73d9bf69618627..f6f72559a711e65c48f555b849b78966
|
|||
const blink::WebMouseEvent& event,
|
||||
const ui::LatencyInfo& latency) {
|
||||
diff --git a/content/browser/renderer_host/render_widget_host_view_base.h b/content/browser/renderer_host/render_widget_host_view_base.h
|
||||
index b7febba61de2018127b365ae9d707030406098e5..c07184c23b9e8f89919e623338db4bfa86a0f6ee 100644
|
||||
index 148c980a6f6062f2191658055a8294d3b93eb517..bb58cfc26558e39fe771a6d0c30c88bdbd36da49 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_view_base.h
|
||||
+++ b/content/browser/renderer_host/render_widget_host_view_base.h
|
||||
@@ -23,8 +23,10 @@
|
||||
|
@ -62,7 +62,7 @@ index b7febba61de2018127b365ae9d707030406098e5..c07184c23b9e8f89919e623338db4bfa
|
|||
// This only needs to be overridden by RenderWidgetHostViewBase subclasses
|
||||
// that handle content embedded within other RenderWidgetHostViews.
|
||||
gfx::PointF TransformPointToRootCoordSpaceF(
|
||||
@@ -365,6 +372,11 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
@@ -352,6 +359,11 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
virtual void ProcessGestureEvent(const blink::WebGestureEvent& event,
|
||||
const ui::LatencyInfo& latency);
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ Subject: render_widget_host_view_mac.patch
|
|||
|
||||
|
||||
diff --git a/content/browser/renderer_host/render_widget_host_view_cocoa.mm b/content/browser/renderer_host/render_widget_host_view_cocoa.mm
|
||||
index 89939596b253bbd55b117328fd822b087607d8e3..aba0a33ec9a7f87a1f7f57ffed4c697d8d81a285 100644
|
||||
index ed18a0a46c22620850d4384e6bb82dba80a3b6d8..c940999eeec8fcf2a2a4514d0edd67f844979b41 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_view_cocoa.mm
|
||||
+++ b/content/browser/renderer_host/render_widget_host_view_cocoa.mm
|
||||
@@ -142,6 +142,11 @@ void ExtractUnderlines(NSAttributedString* string,
|
||||
|
@ -20,7 +20,7 @@ index 89939596b253bbd55b117328fd822b087607d8e3..aba0a33ec9a7f87a1f7f57ffed4c697d
|
|||
// These are not documented, so use only after checking -respondsToSelector:.
|
||||
@interface NSApplication (UndocumentedSpeechMethods)
|
||||
- (void)speakString:(NSString*)string;
|
||||
@@ -403,6 +408,9 @@ void ExtractUnderlines(NSAttributedString* string,
|
||||
@@ -403,6 +408,9 @@ - (BOOL)acceptsMouseEventsWhenInactive {
|
||||
}
|
||||
|
||||
- (BOOL)acceptsFirstMouse:(NSEvent*)theEvent {
|
||||
|
@ -30,7 +30,7 @@ index 89939596b253bbd55b117328fd822b087607d8e3..aba0a33ec9a7f87a1f7f57ffed4c697d
|
|||
return [self acceptsMouseEventsWhenInactive];
|
||||
}
|
||||
|
||||
@@ -765,6 +773,10 @@ void ExtractUnderlines(NSAttributedString* string,
|
||||
@@ -765,6 +773,10 @@ - (void)keyEvent:(NSEvent*)theEvent wasKeyEquivalent:(BOOL)equiv {
|
||||
eventType == NSKeyDown &&
|
||||
!(modifierFlags & NSCommandKeyMask);
|
||||
|
||||
|
@ -41,7 +41,7 @@ index 89939596b253bbd55b117328fd822b087607d8e3..aba0a33ec9a7f87a1f7f57ffed4c697d
|
|||
// We only handle key down events and just simply forward other events.
|
||||
if (eventType != NSKeyDown) {
|
||||
clientHelper_->ForwardKeyboardEvent(event, latency_info);
|
||||
@@ -1513,9 +1525,11 @@ void ExtractUnderlines(NSAttributedString* string,
|
||||
@@ -1513,9 +1525,11 @@ - (id)accessibilityFocusedUIElement {
|
||||
// Since this implementation doesn't have to wait any IPC calls, this doesn't
|
||||
// make any key-typing jank. --hbono 7/23/09
|
||||
//
|
||||
|
@ -53,7 +53,7 @@ index 89939596b253bbd55b117328fd822b087607d8e3..aba0a33ec9a7f87a1f7f57ffed4c697d
|
|||
|
||||
- (NSArray*)validAttributesForMarkedText {
|
||||
// This code is just copied from WebKit except renaming variables.
|
||||
@@ -1524,7 +1538,10 @@ extern NSString* NSTextInputReplacementRangeAttributeName;
|
||||
@@ -1524,7 +1538,10 @@ - (NSArray*)validAttributesForMarkedText {
|
||||
initWithObjects:NSUnderlineStyleAttributeName,
|
||||
NSUnderlineColorAttributeName,
|
||||
NSMarkedClauseSegmentAttributeName,
|
||||
|
|
|
@ -52,10 +52,10 @@ Some alternatives to this patch:
|
|||
None of these options seems like a substantial maintainability win over this patch to me (@nornagon).
|
||||
|
||||
diff --git a/chrome/BUILD.gn b/chrome/BUILD.gn
|
||||
index 11e4c4c9fd436fd57501e0e2c71e5fe6f66f4204..fcc072d6d9347feffd49450eb3d3172882a80289 100644
|
||||
index ececd22ccf241a21666b1964c4bce053e1ab504a..2b1b875437102c9fd2573df3ad0688a40a69d499 100644
|
||||
--- a/chrome/BUILD.gn
|
||||
+++ b/chrome/BUILD.gn
|
||||
@@ -1642,7 +1642,7 @@ if (is_chrome_branded && !is_android) {
|
||||
@@ -1647,7 +1647,7 @@ if (is_chrome_branded && !is_android) {
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -64,7 +64,7 @@ index 11e4c4c9fd436fd57501e0e2c71e5fe6f66f4204..fcc072d6d9347feffd49450eb3d31728
|
|||
chrome_paks("packed_resources") {
|
||||
if (is_mac) {
|
||||
output_dir = "$root_gen_dir/repack"
|
||||
@@ -1666,6 +1666,12 @@ if (!is_android) {
|
||||
@@ -1671,6 +1671,12 @@ if (!is_android) {
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ Subject: Revert "Build swiftshader for ARM32."
|
|||
This reverts commit e7caa7ca82fc015675aea8cecf178c83a94ab3a7.
|
||||
|
||||
diff --git a/ui/gl/BUILD.gn b/ui/gl/BUILD.gn
|
||||
index 77750dc5e9f24347bba17811da7d86c9ef28e99c..07fb1573d21cf84dfd295927104fb82a254664a8 100644
|
||||
index 2b80ce0756be0f8153edebb409ac3981a0cefa9a..f04dc7baf9186194936cbb7c2df40ed709a9bc6f 100644
|
||||
--- a/ui/gl/BUILD.gn
|
||||
+++ b/ui/gl/BUILD.gn
|
||||
@@ -15,8 +15,8 @@ declare_args() {
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: scroll_bounce_flag.patch
|
|||
Patch to make scrollBounce option work.
|
||||
|
||||
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
|
||||
index f376c3cbbce159c568a8c0ef207ac537e6810743..afff6e117f1447e792652df1cb37fbdc910c4738 100644
|
||||
index 44d963793f143530704a0a06273e51d7c68766cc..5cea319fea51e27f6bd5be7221bafb186b2a3973 100644
|
||||
--- a/content/renderer/render_thread_impl.cc
|
||||
+++ b/content/renderer/render_thread_impl.cc
|
||||
@@ -1539,7 +1539,7 @@ bool RenderThreadImpl::IsGpuMemoryBufferCompositorResourcesEnabled() {
|
||||
@@ -1535,7 +1535,7 @@ bool RenderThreadImpl::IsGpuMemoryBufferCompositorResourcesEnabled() {
|
||||
}
|
||||
|
||||
bool RenderThreadImpl::IsElasticOverscrollEnabled() {
|
||||
|
|
|
@ -6,10 +6,10 @@ Subject: ssl_security_state_tab_helper.patch
|
|||
Allows populating security tab info for devtools in Electron.
|
||||
|
||||
diff --git a/chrome/browser/ssl/security_state_tab_helper.cc b/chrome/browser/ssl/security_state_tab_helper.cc
|
||||
index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae5747fc994f 100644
|
||||
index d27ed1f62bfa6f550f88acd97638fc51f666e38c..186bc75254e81309a8cd33364916b4f8db3d5937 100644
|
||||
--- a/chrome/browser/ssl/security_state_tab_helper.cc
|
||||
+++ b/chrome/browser/ssl/security_state_tab_helper.cc
|
||||
@@ -12,16 +12,20 @@
|
||||
@@ -12,10 +12,12 @@
|
||||
#include "base/strings/pattern.h"
|
||||
#include "base/strings/string_util.h"
|
||||
#include "build/build_config.h"
|
||||
|
@ -22,15 +22,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
|
|||
#include "chrome/common/chrome_switches.h"
|
||||
#include "chrome/common/pref_names.h"
|
||||
#include "chrome/common/secure_origin_whitelist.h"
|
||||
#include "components/omnibox/browser/omnibox_field_trial.h"
|
||||
#include "components/prefs/pref_service.h"
|
||||
+#if 0
|
||||
#include "components/safe_browsing/features.h"
|
||||
+#endif
|
||||
#include "components/security_state/content/content_utils.h"
|
||||
#include "content/public/browser/browser_context.h"
|
||||
#include "content/public/browser/navigation_entry.h"
|
||||
@@ -42,7 +46,7 @@
|
||||
@@ -41,7 +43,7 @@
|
||||
#include "chrome/browser/chromeos/policy/policy_cert_service_factory.h"
|
||||
#endif // defined(OS_CHROMEOS)
|
||||
|
||||
|
@ -39,7 +31,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
|
|||
#include "chrome/browser/safe_browsing/chrome_password_protection_service.h"
|
||||
#endif
|
||||
|
||||
@@ -78,7 +82,9 @@ bool IsOriginSecureWithWhitelist(
|
||||
@@ -77,7 +79,9 @@ bool IsOriginSecureWithWhitelist(
|
||||
|
||||
} // namespace
|
||||
|
||||
|
@ -49,7 +41,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
|
|||
|
||||
SecurityStateTabHelper::SecurityStateTabHelper(
|
||||
content::WebContents* web_contents)
|
||||
@@ -138,6 +144,7 @@ void SecurityStateTabHelper::DidFinishNavigation(
|
||||
@@ -137,6 +141,7 @@ void SecurityStateTabHelper::DidFinishNavigation(
|
||||
UMA_HISTOGRAM_BOOLEAN("interstitial.ssl.visited_site_after_warning", true);
|
||||
}
|
||||
|
||||
|
@ -57,7 +49,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
|
|||
// Security indicator UI study (https://crbug.com/803501): Show a message in
|
||||
// the console to reduce developer confusion about the experimental UI
|
||||
// treatments for HTTPS pages with EV certificates.
|
||||
@@ -165,6 +172,7 @@ void SecurityStateTabHelper::DidFinishNavigation(
|
||||
@@ -164,6 +169,7 @@ void SecurityStateTabHelper::DidFinishNavigation(
|
||||
"Validation is still valid.");
|
||||
}
|
||||
}
|
||||
|
@ -65,7 +57,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
|
|||
}
|
||||
|
||||
void SecurityStateTabHelper::DidChangeVisibleSecurityState() {
|
||||
@@ -190,6 +198,7 @@ SecurityStateTabHelper::GetMaliciousContentStatus() const {
|
||||
@@ -189,6 +195,7 @@ SecurityStateTabHelper::GetMaliciousContentStatus() const {
|
||||
web_contents()->GetController().GetVisibleEntry();
|
||||
if (!entry)
|
||||
return security_state::MALICIOUS_CONTENT_STATUS_NONE;
|
||||
|
@ -73,7 +65,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
|
|||
safe_browsing::SafeBrowsingService* sb_service =
|
||||
g_browser_process->safe_browsing_service();
|
||||
if (!sb_service)
|
||||
@@ -259,6 +268,7 @@ SecurityStateTabHelper::GetMaliciousContentStatus() const {
|
||||
@@ -256,6 +263,7 @@ SecurityStateTabHelper::GetMaliciousContentStatus() const {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -81,7 +73,7 @@ index 254f203e4db90b9ad09022409defc82a6dfa6100..3f121d32629920284ed45201f423ae57
|
|||
return security_state::MALICIOUS_CONTENT_STATUS_NONE;
|
||||
}
|
||||
|
||||
@@ -277,15 +287,19 @@ std::vector<std::string> SecurityStateTabHelper::GetSecureOriginsAndPatterns()
|
||||
@@ -274,15 +282,19 @@ std::vector<std::string> SecurityStateTabHelper::GetSecureOriginsAndPatterns()
|
||||
const {
|
||||
const base::CommandLine& command_line =
|
||||
*base::CommandLine::ForCurrentProcess();
|
||||
|
|
|
@ -22,10 +22,10 @@ However, the patch would need to be reviewed by the security team, as it
|
|||
does touch a security-sensitive class.
|
||||
|
||||
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
|
||||
index 04f816a43b87609d31b89e147d6357dd66480200..77f9ff3979592f711a2f8b8cea5df31376d7f31d 100644
|
||||
index c6feebd62b98c18d260088b5a60fc59b2c2e0d1a..17edbd3a08010f257152e857a178af83c9aaf3d6 100644
|
||||
--- a/content/browser/renderer_host/render_process_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_process_host_impl.cc
|
||||
@@ -470,6 +470,10 @@ class RendererSandboxedProcessLauncherDelegate
|
||||
@@ -423,6 +423,10 @@ class RendererSandboxedProcessLauncherDelegate
|
||||
: public SandboxedProcessLauncherDelegate {
|
||||
public:
|
||||
RendererSandboxedProcessLauncherDelegate() {}
|
||||
|
@ -36,7 +36,7 @@ index 04f816a43b87609d31b89e147d6357dd66480200..77f9ff3979592f711a2f8b8cea5df313
|
|||
|
||||
~RendererSandboxedProcessLauncherDelegate() override {}
|
||||
|
||||
@@ -489,6 +493,9 @@ class RendererSandboxedProcessLauncherDelegate
|
||||
@@ -442,6 +446,9 @@ class RendererSandboxedProcessLauncherDelegate
|
||||
|
||||
#if BUILDFLAG(USE_ZYGOTE_HANDLE)
|
||||
service_manager::ZygoteHandle GetZygote() override {
|
||||
|
@ -46,7 +46,7 @@ index 04f816a43b87609d31b89e147d6357dd66480200..77f9ff3979592f711a2f8b8cea5df313
|
|||
const base::CommandLine& browser_command_line =
|
||||
*base::CommandLine::ForCurrentProcess();
|
||||
base::CommandLine::StringType renderer_prefix =
|
||||
@@ -502,6 +509,11 @@ class RendererSandboxedProcessLauncherDelegate
|
||||
@@ -455,6 +462,11 @@ class RendererSandboxedProcessLauncherDelegate
|
||||
service_manager::SandboxType GetSandboxType() override {
|
||||
return service_manager::SANDBOX_TYPE_RENDERER;
|
||||
}
|
||||
|
@ -58,7 +58,7 @@ index 04f816a43b87609d31b89e147d6357dd66480200..77f9ff3979592f711a2f8b8cea5df313
|
|||
};
|
||||
|
||||
const char kSessionStorageHolderKey[] = "kSessionStorageHolderKey";
|
||||
@@ -1857,11 +1869,18 @@ bool RenderProcessHostImpl::Init() {
|
||||
@@ -1748,11 +1760,18 @@ bool RenderProcessHostImpl::Init() {
|
||||
cmd_line->PrependWrapper(renderer_prefix);
|
||||
AppendRendererCommandLine(cmd_line.get());
|
||||
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue