mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
Update to Chromium version 68.0.3425.0 (#557062)
Known issues: - Surface synchronization is now enabled for OSR, see issue #2447. - Jumbo build is broken, fixed in https://crrev.com/868717ce.
This commit is contained in:
@ -7,5 +7,5 @@
|
||||
# https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding
|
||||
|
||||
{
|
||||
'chromium_checkout': 'refs/tags/68.0.3416.0',
|
||||
'chromium_checkout': 'refs/tags/68.0.3425.0',
|
||||
}
|
||||
|
@ -27,29 +27,31 @@
|
||||
# Files in the chromium/src directory that should be evaluated for changes.
|
||||
# Similar changes may need to be applied to the CEF source code.
|
||||
'files': [
|
||||
'chrome/browser/extensions/api/tabs/tabs_api.*',
|
||||
'chrome/browser/extensions/chrome_component_extension_resource_manager.*',
|
||||
'chrome/browser/extensions/chrome_extension_web_contents_observer.*',
|
||||
'chrome/browser/extensions/component_loader.*',
|
||||
'chrome/browser/extensions/extension_service.*',
|
||||
'chrome/browser/printing/print_view_manager*',
|
||||
'chrome/browser/printing/printing_message_filter*',
|
||||
'chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.*',
|
||||
'chrome/common/extensions/api/*_features.json',
|
||||
'chrome/renderer/chrome_content_renderer_client.*',
|
||||
'chrome/renderer/extensions/chrome_extensions_renderer_client.*',
|
||||
'content/public/browser/render_widget_host_view.h',
|
||||
'content/public/browser/storage_partition.h',
|
||||
'content/shell/BUILD.gn',
|
||||
'content/shell/app/*',
|
||||
'content/shell/browser/shell_*',
|
||||
'content/shell/browser/renderer_host/shell_*',
|
||||
'content/shell/common/shell_*',
|
||||
'content/shell/gpu/shell_*',
|
||||
'content/shell/renderer/shell_*',
|
||||
'content/shell/utility/shell_*',
|
||||
'extensions/shell/*',
|
||||
'net/cookies/cookie_store.h',
|
||||
'chrome/browser/browser_process.h',
|
||||
'chrome/browser/extensions/api/tabs/tabs_api.*',
|
||||
'chrome/browser/extensions/chrome_component_extension_resource_manager.*',
|
||||
'chrome/browser/extensions/chrome_extension_web_contents_observer.*',
|
||||
'chrome/browser/extensions/component_loader.*',
|
||||
'chrome/browser/extensions/extension_service.*',
|
||||
'chrome/browser/printing/print_view_manager*',
|
||||
'chrome/browser/printing/printing_message_filter*',
|
||||
'chrome/browser/renderer_host/chrome_resource_dispatcher_host_delegate.*',
|
||||
'chrome/common/extensions/api/*_features.json',
|
||||
'chrome/renderer/chrome_content_renderer_client.*',
|
||||
'chrome/renderer/extensions/chrome_extensions_renderer_client.*',
|
||||
'content/public/browser/render_widget_host_view.h',
|
||||
'content/public/browser/storage_partition.h',
|
||||
'content/public/browser/web_contents_delegate.h',
|
||||
'content/shell/BUILD.gn',
|
||||
'content/shell/app/*',
|
||||
'content/shell/browser/shell_*',
|
||||
'content/shell/browser/renderer_host/shell_*',
|
||||
'content/shell/common/shell_*',
|
||||
'content/shell/gpu/shell_*',
|
||||
'content/shell/renderer/shell_*',
|
||||
'content/shell/utility/shell_*',
|
||||
'extensions/shell/*',
|
||||
'net/cookies/cookie_store.h',
|
||||
],
|
||||
# Patterns that should not be found in the chromium/src directory after
|
||||
# applying patch files.
|
||||
|
@ -1903,7 +1903,8 @@ bool CefBrowserHostImpl::EmbedsFullscreenWidget() const {
|
||||
|
||||
void CefBrowserHostImpl::EnterFullscreenModeForTab(
|
||||
content::WebContents* web_contents,
|
||||
const GURL& origin) {
|
||||
const GURL& origin,
|
||||
const blink::WebFullscreenOptions& options) {
|
||||
OnFullscreenModeChange(true);
|
||||
}
|
||||
|
||||
|
@ -452,8 +452,10 @@ class CefBrowserHostImpl : public CefBrowserHost,
|
||||
void RunFileChooser(content::RenderFrameHost* render_frame_host,
|
||||
const content::FileChooserParams& params) override;
|
||||
bool EmbedsFullscreenWidget() const override;
|
||||
void EnterFullscreenModeForTab(content::WebContents* web_contents,
|
||||
const GURL& origin) override;
|
||||
void EnterFullscreenModeForTab(
|
||||
content::WebContents* web_contents,
|
||||
const GURL& origin,
|
||||
const blink::WebFullscreenOptions& options) override;
|
||||
void ExitFullscreenModeForTab(content::WebContents* web_contents) override;
|
||||
bool IsFullscreenForTabOrPending(
|
||||
const content::WebContents* web_contents) const override;
|
||||
|
@ -30,10 +30,10 @@
|
||||
#include "chrome/browser/chrome_browser_main_extra_parts.h"
|
||||
#include "chrome/browser/plugins/plugin_finder.h"
|
||||
#include "content/public/browser/gpu_data_manager.h"
|
||||
#include "content/public/common/result_codes.h"
|
||||
#include "extensions/browser/extension_system.h"
|
||||
#include "extensions/common/constants.h"
|
||||
#include "net/base/net_module.h"
|
||||
#include "services/service_manager/embedder/result_codes.h"
|
||||
#include "ui/base/resource/resource_bundle.h"
|
||||
|
||||
#if defined(USE_AURA)
|
||||
@ -80,7 +80,7 @@ int CefBrowserMainParts::PreEarlyInitialization() {
|
||||
for (size_t i = 0; i < chrome_extra_parts_.size(); ++i)
|
||||
chrome_extra_parts_[i]->PreEarlyInitialization();
|
||||
|
||||
return service_manager::RESULT_CODE_NORMAL_EXIT;
|
||||
return content::RESULT_CODE_NORMAL_EXIT;
|
||||
}
|
||||
|
||||
void CefBrowserMainParts::PostEarlyInitialization() {
|
||||
|
@ -346,12 +346,6 @@ resource_coordinator::TabManager* ChromeBrowserProcessStub::GetTabManager() {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
physical_web::PhysicalWebDataSource*
|
||||
ChromeBrowserProcessStub::GetPhysicalWebDataSource() {
|
||||
NOTREACHED();
|
||||
return NULL;
|
||||
}
|
||||
|
||||
prefs::InProcessPrefServiceFactory*
|
||||
ChromeBrowserProcessStub::pref_service_factory() const {
|
||||
NOTREACHED();
|
||||
|
@ -104,7 +104,6 @@ class ChromeBrowserProcessStub : public BrowserProcess,
|
||||
shell_integration::DefaultWebClientState CachedDefaultWebClientState()
|
||||
override;
|
||||
resource_coordinator::TabManager* GetTabManager() override;
|
||||
physical_web::PhysicalWebDataSource* GetPhysicalWebDataSource() override;
|
||||
prefs::InProcessPrefServiceFactory* pref_service_factory() const override;
|
||||
|
||||
// BrowserContextIncognitoHelper implementation.
|
||||
|
@ -86,7 +86,6 @@
|
||||
#include "extensions/common/switches.h"
|
||||
#include "net/ssl/ssl_cert_request_info.h"
|
||||
#include "ppapi/host/ppapi_host.h"
|
||||
#include "services/service_manager/embedder/switches.h"
|
||||
#include "services/service_manager/public/mojom/connector.mojom.h"
|
||||
#include "services/service_manager/sandbox/switches.h"
|
||||
#include "storage/browser/quota/quota_settings.h"
|
||||
@ -721,7 +720,7 @@ void CefContentBrowserClient::AppendExtraCommandLineSwitches(
|
||||
}
|
||||
|
||||
#if defined(OS_LINUX)
|
||||
if (process_type == service_manager::switches::kZygoteProcess) {
|
||||
if (process_type == switches::kZygoteProcess) {
|
||||
// Propagate the following switches to the zygote command line (along with
|
||||
// any associated values) if present in the browser command line.
|
||||
static const char* const kSwitchNames[] = {
|
||||
@ -983,7 +982,7 @@ void CefContentBrowserClient::GetAdditionalMappedFilesForChildProcess(
|
||||
content::PosixFileDescriptorInfo* mappings) {
|
||||
int crash_signal_fd = GetCrashSignalFD(command_line);
|
||||
if (crash_signal_fd >= 0) {
|
||||
mappings->Share(service_manager::kCrashDumpSignal, crash_signal_fd);
|
||||
mappings->Share(kCrashDumpSignal, crash_signal_fd);
|
||||
}
|
||||
}
|
||||
#endif // defined(OS_LINUX)
|
||||
|
@ -609,7 +609,7 @@ void CefCookieManagerImpl::DeleteCookiesInternal(
|
||||
base::Bind(DeleteCookiesCallbackImpl, callback));
|
||||
} else if (cookie_name.empty()) {
|
||||
// Delete all matching host cookies.
|
||||
net::CookieStore::CookieDeletionInfo delete_info;
|
||||
net::CookieDeletionInfo delete_info;
|
||||
delete_info.host = url.host();
|
||||
cookie_store->DeleteAllMatchingInfoAsync(
|
||||
delete_info, base::Bind(DeleteCookiesCallbackImpl, callback));
|
||||
|
@ -130,7 +130,7 @@ void CefCookieStoreProxy::DeleteCanonicalCookieAsync(
|
||||
}
|
||||
|
||||
void CefCookieStoreProxy::DeleteAllCreatedInTimeRangeAsync(
|
||||
const TimeRange& creation_range,
|
||||
const net::CookieDeletionInfo::TimeRange& creation_range,
|
||||
DeleteCallback callback) {
|
||||
net::CookieStore* cookie_store = GetCookieStore();
|
||||
if (cookie_store) {
|
||||
@ -142,7 +142,7 @@ void CefCookieStoreProxy::DeleteAllCreatedInTimeRangeAsync(
|
||||
}
|
||||
|
||||
void CefCookieStoreProxy::DeleteAllMatchingInfoAsync(
|
||||
CookieDeletionInfo delete_info,
|
||||
net::CookieDeletionInfo delete_info,
|
||||
DeleteCallback callback) {
|
||||
net::CookieStore* cookie_store = GetCookieStore();
|
||||
if (cookie_store) {
|
||||
|
@ -39,9 +39,10 @@ class CefCookieStoreProxy : public net::CookieStore {
|
||||
base::OnceClosure callback) override;
|
||||
void DeleteCanonicalCookieAsync(const net::CanonicalCookie& cookie,
|
||||
DeleteCallback callback) override;
|
||||
void DeleteAllCreatedInTimeRangeAsync(const TimeRange& creation_range,
|
||||
DeleteCallback callback) override;
|
||||
void DeleteAllMatchingInfoAsync(CookieDeletionInfo delete_info,
|
||||
void DeleteAllCreatedInTimeRangeAsync(
|
||||
const net::CookieDeletionInfo::TimeRange& creation_range,
|
||||
DeleteCallback callback) override;
|
||||
void DeleteAllMatchingInfoAsync(net::CookieDeletionInfo delete_info,
|
||||
DeleteCallback callback) override;
|
||||
void DeleteSessionCookiesAsync(DeleteCallback callback) override;
|
||||
void FlushStore(base::OnceClosure callback) override;
|
||||
|
@ -138,7 +138,7 @@ std::unique_ptr<net::ProxyResolutionService> CreateProxyResolutionService(
|
||||
|
||||
proxy_service = network::CreateProxyResolutionServiceUsingMojoFactory(
|
||||
std::move(proxy_resolver_factory), std::move(proxy_config_service),
|
||||
std::make_unique<net::PacFileFetcherImpl>(context),
|
||||
net::PacFileFetcherImpl::Create(context),
|
||||
std::move(dhcp_pac_file_fetcher), context->host_resolver(), net_log,
|
||||
network_delegate);
|
||||
} else {
|
||||
|
@ -80,6 +80,7 @@ struct PopulateAxNodeAttributes {
|
||||
case ax::mojom::IntAttribute::kScrollY:
|
||||
case ax::mojom::IntAttribute::kScrollYMin:
|
||||
case ax::mojom::IntAttribute::kScrollYMax:
|
||||
case ax::mojom::IntAttribute::kHasPopup:
|
||||
case ax::mojom::IntAttribute::kHierarchicalLevel:
|
||||
case ax::mojom::IntAttribute::kTextSelStart:
|
||||
case ax::mojom::IntAttribute::kTextSelEnd:
|
||||
|
@ -240,14 +240,10 @@ CefRenderWidgetHostViewOSR::CefRenderWidgetHostViewOSR(
|
||||
|
||||
local_surface_id_ = local_surface_id_allocator_.GenerateId();
|
||||
|
||||
// Surface synchronization is not supported with OSR.
|
||||
DCHECK(!features::IsSurfaceSynchronizationEnabled());
|
||||
|
||||
#if !defined(OS_MACOSX)
|
||||
// Matching the attributes from BrowserCompositorMac.
|
||||
delegated_frame_host_ = std::make_unique<content::DelegatedFrameHost>(
|
||||
AllocateFrameSinkId(is_guest_view_hack), this,
|
||||
features::IsSurfaceSynchronizationEnabled(),
|
||||
base::FeatureList::IsEnabled(features::kVizDisplayCompositor),
|
||||
true /* should_register_frame_sink_id */);
|
||||
|
||||
@ -279,7 +275,7 @@ CefRenderWidgetHostViewOSR::CefRenderWidgetHostViewOSR(
|
||||
#endif
|
||||
|
||||
if (browser_impl_.get())
|
||||
ResizeRootLayer();
|
||||
ResizeRootLayer(false);
|
||||
|
||||
// Do this last because it may result in a call to SetNeedsBeginFrames.
|
||||
render_widget_host_->SetView(this);
|
||||
@ -329,7 +325,7 @@ void CefRenderWidgetHostViewOSR::InitAsChild(gfx::NativeView parent_view) {
|
||||
// The parent view should not render while the full-screen view exists.
|
||||
parent_host_view_->Hide();
|
||||
|
||||
ResizeRootLayer();
|
||||
ResizeRootLayer(false);
|
||||
Show();
|
||||
}
|
||||
|
||||
@ -559,7 +555,7 @@ void CefRenderWidgetHostViewOSR::InitAsPopup(
|
||||
if (handler.get())
|
||||
handler->OnPopupSize(browser_impl_.get(), widget_pos);
|
||||
|
||||
ResizeRootLayer();
|
||||
ResizeRootLayer(false);
|
||||
Show();
|
||||
}
|
||||
|
||||
@ -878,7 +874,7 @@ void CefRenderWidgetHostViewOSR::SetWantsAnimateOnlyBeginFrames() {
|
||||
}
|
||||
}
|
||||
|
||||
bool CefRenderWidgetHostViewOSR::TransformPointToLocalCoordSpace(
|
||||
bool CefRenderWidgetHostViewOSR::TransformPointToLocalCoordSpaceLegacy(
|
||||
const gfx::PointF& point,
|
||||
const viz::SurfaceId& original_surface,
|
||||
gfx::PointF* transformed_point) {
|
||||
@ -886,7 +882,7 @@ bool CefRenderWidgetHostViewOSR::TransformPointToLocalCoordSpace(
|
||||
// is necessary.
|
||||
gfx::PointF point_in_pixels =
|
||||
gfx::ConvertPointToPixel(current_device_scale_factor_, point);
|
||||
if (!GetDelegatedFrameHost()->TransformPointToLocalCoordSpace(
|
||||
if (!GetDelegatedFrameHost()->TransformPointToLocalCoordSpaceLegacy(
|
||||
point_in_pixels, original_surface, transformed_point)) {
|
||||
return false;
|
||||
}
|
||||
@ -899,7 +895,8 @@ bool CefRenderWidgetHostViewOSR::TransformPointToLocalCoordSpace(
|
||||
bool CefRenderWidgetHostViewOSR::TransformPointToCoordSpaceForView(
|
||||
const gfx::PointF& point,
|
||||
RenderWidgetHostViewBase* target_view,
|
||||
gfx::PointF* transformed_point) {
|
||||
gfx::PointF* transformed_point,
|
||||
viz::EventSource source) {
|
||||
if (target_view == this) {
|
||||
*transformed_point = point;
|
||||
return true;
|
||||
@ -909,14 +906,16 @@ bool CefRenderWidgetHostViewOSR::TransformPointToCoordSpaceForView(
|
||||
// but it is not necessary here because the final target view is responsible
|
||||
// for converting before computing the final transform.
|
||||
return GetDelegatedFrameHost()->TransformPointToCoordSpaceForView(
|
||||
point, target_view, transformed_point);
|
||||
point, target_view, transformed_point, source);
|
||||
}
|
||||
|
||||
void CefRenderWidgetHostViewOSR::DidNavigate() {
|
||||
#if defined(OS_MACOSX)
|
||||
browser_compositor_->DidNavigate();
|
||||
#else
|
||||
ResizeRootLayer();
|
||||
// With surface synchronization enabled we need to force synchronization on
|
||||
// first navigation.
|
||||
ResizeRootLayer(true);
|
||||
if (delegated_frame_host_)
|
||||
delegated_frame_host_->DidNavigate();
|
||||
#endif
|
||||
@ -956,18 +955,6 @@ SkColor CefRenderWidgetHostViewOSR::DelegatedFrameHostGetGutterColor() const {
|
||||
return background_color_;
|
||||
}
|
||||
|
||||
bool CefRenderWidgetHostViewOSR::DelegatedFrameCanCreateResizeLock() const {
|
||||
return !render_widget_host_->auto_resize_enabled();
|
||||
}
|
||||
|
||||
std::unique_ptr<content::CompositorResizeLock>
|
||||
CefRenderWidgetHostViewOSR::DelegatedFrameHostCreateResizeLock() {
|
||||
HoldResize();
|
||||
|
||||
const gfx::Size& desired_size = GetRootLayer()->bounds().size();
|
||||
return std::make_unique<content::CompositorResizeLock>(this, desired_size);
|
||||
}
|
||||
|
||||
viz::LocalSurfaceId CefRenderWidgetHostViewOSR::GetLocalSurfaceId() const {
|
||||
return local_surface_id_;
|
||||
}
|
||||
@ -981,10 +968,6 @@ void CefRenderWidgetHostViewOSR::OnBeginFrame(base::TimeTicks frame_time) {
|
||||
// See https://codereview.chromium.org/1841083007.
|
||||
}
|
||||
|
||||
bool CefRenderWidgetHostViewOSR::IsAutoResizeEnabled() const {
|
||||
return render_widget_host_->auto_resize_enabled();
|
||||
}
|
||||
|
||||
void CefRenderWidgetHostViewOSR::OnFrameTokenChanged(uint32_t frame_token) {
|
||||
render_widget_host_->DidProcessFrame(frame_token);
|
||||
}
|
||||
@ -1025,7 +1008,7 @@ void CefRenderWidgetHostViewOSR::SynchronizeVisualProperties() {
|
||||
return;
|
||||
}
|
||||
|
||||
ResizeRootLayer();
|
||||
ResizeRootLayer(false);
|
||||
}
|
||||
|
||||
void CefRenderWidgetHostViewOSR::OnScreenInfoChanged() {
|
||||
@ -1353,7 +1336,7 @@ void CefRenderWidgetHostViewOSR::SetDeviceScaleFactor() {
|
||||
}
|
||||
}
|
||||
|
||||
void CefRenderWidgetHostViewOSR::ResizeRootLayer() {
|
||||
void CefRenderWidgetHostViewOSR::ResizeRootLayer(bool force) {
|
||||
SetFrameRate();
|
||||
|
||||
const float orgScaleFactor = current_device_scale_factor_;
|
||||
@ -1367,8 +1350,10 @@ void CefRenderWidgetHostViewOSR::ResizeRootLayer() {
|
||||
else
|
||||
size = popup_position_.size();
|
||||
|
||||
if (!scaleFactorDidChange && size == GetRootLayer()->bounds().size())
|
||||
if (!force && !scaleFactorDidChange &&
|
||||
size == GetRootLayer()->bounds().size()) {
|
||||
return;
|
||||
}
|
||||
|
||||
const gfx::Size& size_in_pixels =
|
||||
gfx::ConvertSizeToPixel(current_device_scale_factor_, size);
|
||||
|
@ -173,13 +173,15 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase,
|
||||
void SetNeedsBeginFrames(bool enabled) override;
|
||||
void SetWantsAnimateOnlyBeginFrames() override;
|
||||
|
||||
bool TransformPointToLocalCoordSpace(const gfx::PointF& point,
|
||||
const viz::SurfaceId& original_surface,
|
||||
gfx::PointF* transformed_point) override;
|
||||
bool TransformPointToLocalCoordSpaceLegacy(
|
||||
const gfx::PointF& point,
|
||||
const viz::SurfaceId& original_surface,
|
||||
gfx::PointF* transformed_point) override;
|
||||
bool TransformPointToCoordSpaceForView(
|
||||
const gfx::PointF& point,
|
||||
RenderWidgetHostViewBase* target_view,
|
||||
gfx::PointF* transformed_point) override;
|
||||
gfx::PointF* transformed_point,
|
||||
viz::EventSource source = viz::EventSource::ANY) override;
|
||||
void DidNavigate() override;
|
||||
|
||||
void SelectionChanged(const base::string16& text,
|
||||
@ -195,13 +197,9 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase,
|
||||
ui::Layer* DelegatedFrameHostGetLayer() const override;
|
||||
bool DelegatedFrameHostIsVisible() const override;
|
||||
SkColor DelegatedFrameHostGetGutterColor() const override;
|
||||
bool DelegatedFrameCanCreateResizeLock() const override;
|
||||
std::unique_ptr<content::CompositorResizeLock>
|
||||
DelegatedFrameHostCreateResizeLock() override;
|
||||
viz::LocalSurfaceId GetLocalSurfaceId() const override;
|
||||
void OnFirstSurfaceActivation(const viz::SurfaceInfo& surface_info) override;
|
||||
void OnBeginFrame(base::TimeTicks frame_time) override;
|
||||
bool IsAutoResizeEnabled() const override;
|
||||
void OnFrameTokenChanged(uint32_t frame_token) override;
|
||||
void DidReceiveFirstFrameAfterNavigation() override;
|
||||
|
||||
@ -267,7 +265,7 @@ class CefRenderWidgetHostViewOSR : public content::RenderWidgetHostViewBase,
|
||||
|
||||
void SetFrameRate();
|
||||
void SetDeviceScaleFactor();
|
||||
void ResizeRootLayer();
|
||||
void ResizeRootLayer(bool force);
|
||||
|
||||
// Called by CefBeginFrameTimer to send a BeginFrame request.
|
||||
void OnBeginFrameTimerTick();
|
||||
|
@ -61,7 +61,7 @@ class MacHelper : public content::BrowserCompositorMacClient,
|
||||
return nil;
|
||||
}
|
||||
|
||||
void AcceleratedWidgetSwapCompleted() override {}
|
||||
void AcceleratedWidgetCALayerParamsUpdated() override {}
|
||||
|
||||
void DidReceiveFirstFrameAfterNavigation() override {
|
||||
view_->render_widget_host()->DidReceiveFirstFrameAfterNavigation();
|
||||
@ -69,8 +69,8 @@ class MacHelper : public content::BrowserCompositorMacClient,
|
||||
|
||||
void DestroyCompositorForShutdown() override {}
|
||||
|
||||
void SynchronizeVisualProperties() override {
|
||||
view_->render_widget_host()->SynchronizeVisualProperties();
|
||||
bool SynchronizeVisualProperties() override {
|
||||
return view_->render_widget_host()->SynchronizeVisualProperties();
|
||||
}
|
||||
|
||||
private:
|
||||
|
@ -176,8 +176,8 @@ void CefPrintDialogLinux::UseDefaultSettings() {
|
||||
UpdateSettings(&settings, true);
|
||||
}
|
||||
|
||||
bool CefPrintDialogLinux::UpdateSettings(printing::PrintSettings* settings) {
|
||||
return UpdateSettings(settings, false);
|
||||
void CefPrintDialogLinux::UpdateSettings(printing::PrintSettings* settings) {
|
||||
UpdateSettings(settings, false);
|
||||
}
|
||||
|
||||
void CefPrintDialogLinux::ShowDialog(
|
||||
|
@ -42,7 +42,7 @@ class CefPrintDialogLinux : public printing::PrintDialogGtkInterface,
|
||||
|
||||
// PrintDialogGtkInterface implementation.
|
||||
void UseDefaultSettings() override;
|
||||
bool UpdateSettings(printing::PrintSettings* settings) override;
|
||||
void UpdateSettings(printing::PrintSettings* settings) override;
|
||||
void ShowDialog(
|
||||
gfx::NativeView parent_view,
|
||||
bool has_selection,
|
||||
|
@ -50,7 +50,6 @@ void FillInDictionaryFromPdfPrintSettings(
|
||||
print_settings.SetBoolean(kSettingCollate, false);
|
||||
print_settings.SetString(kSettingDeviceName, "");
|
||||
print_settings.SetBoolean(kSettingRasterizePdf, false);
|
||||
print_settings.SetBoolean(kSettingGenerateDraftData, false);
|
||||
print_settings.SetBoolean(kSettingPreviewModifiable, false);
|
||||
print_settings.SetInteger(kSettingDpiHorizontal, 0);
|
||||
print_settings.SetInteger(kSettingDpiVertical, 0);
|
||||
|
@ -12,7 +12,6 @@
|
||||
#include "base/location.h"
|
||||
#include "base/memory/ref_counted_memory.h"
|
||||
#include "base/memory/shared_memory.h"
|
||||
#include "base/message_loop/message_loop.h"
|
||||
#include "base/message_loop/message_loop_current.h"
|
||||
#include "base/run_loop.h"
|
||||
#include "base/single_thread_task_runner.h"
|
||||
|
@ -134,12 +134,13 @@ void CefStoragePartitionProxy::ClearData(
|
||||
uint32_t remove_mask,
|
||||
uint32_t quota_storage_remove_mask,
|
||||
const OriginMatcherFunction& origin_matcher,
|
||||
net::CookieStore::CookieDeletionInfo cookie_delete_info,
|
||||
network::mojom::CookieDeletionFilterPtr cookie_deletion_filter,
|
||||
const base::Time begin,
|
||||
const base::Time end,
|
||||
base::OnceClosure callback) {
|
||||
parent_->ClearData(remove_mask, quota_storage_remove_mask, origin_matcher,
|
||||
cookie_delete_info, begin, end, std::move(callback));
|
||||
std::move(cookie_deletion_filter), begin, end,
|
||||
std::move(callback));
|
||||
}
|
||||
|
||||
void CefStoragePartitionProxy::ClearHttpAndMediaCaches(
|
||||
|
@ -59,7 +59,7 @@ class CefStoragePartitionProxy : public content::StoragePartition {
|
||||
void ClearData(uint32_t remove_mask,
|
||||
uint32_t quota_storage_remove_mask,
|
||||
const OriginMatcherFunction& origin_matcher,
|
||||
net::CookieStore::CookieDeletionInfo cookie_delete_info,
|
||||
network::mojom::CookieDeletionFilterPtr cookie_deletion_filter,
|
||||
const base::Time begin,
|
||||
const base::Time end,
|
||||
base::OnceClosure callback) override;
|
||||
|
@ -18,7 +18,6 @@
|
||||
#include "base/strings/string_util.h"
|
||||
#include "base/strings/utf_string_conversions.h"
|
||||
#include "components/crash/core/common/crash_key.h"
|
||||
#include "services/service_manager/embedder/switches.h"
|
||||
#include "third_party/crashpad/crashpad/client/annotation.h"
|
||||
|
||||
#if defined(OS_MACOSX)
|
||||
@ -624,7 +623,7 @@ bool CefCrashReporterClient::EnableBreakpadForProcess(
|
||||
const std::string& process_type) {
|
||||
return process_type == switches::kRendererProcess ||
|
||||
process_type == switches::kPpapiPluginProcess ||
|
||||
process_type == service_manager::switches::kZygoteProcess ||
|
||||
process_type == switches::kZygoteProcess ||
|
||||
process_type == switches::kGpuProcess;
|
||||
}
|
||||
|
||||
|
@ -16,7 +16,6 @@
|
||||
#include "components/crash/core/common/crash_key.h"
|
||||
#include "components/crash/core/common/crash_keys.h"
|
||||
#include "content/public/common/content_switches.h"
|
||||
#include "services/service_manager/embedder/switches.h"
|
||||
|
||||
#if defined(OS_MACOSX)
|
||||
#include "base/mac/foundation_util.h"
|
||||
@ -131,7 +130,7 @@ void InitCrashReporter(const base::CommandLine& command_line,
|
||||
#else // !defined(OS_MACOSX)
|
||||
breakpad::SetCrashServerURL(crash_client->GetCrashServerURL());
|
||||
|
||||
if (process_type != service_manager::switches::kZygoteProcess) {
|
||||
if (process_type != switches::kZygoteProcess) {
|
||||
// Crash reporting for subprocesses created using the zygote will be
|
||||
// initialized in ZygoteForked.
|
||||
breakpad::InitCrashReporter(process_type);
|
||||
|
@ -448,14 +448,6 @@ bool CefMainDelegate::BasicStartupComplete(int* exit_code) {
|
||||
base::FEATURE_ENABLED_BY_DEFAULT) {
|
||||
disable_features.push_back(features::kAsyncWheelEvents.name);
|
||||
}
|
||||
|
||||
// Disable SurfaceSynchronization when OSR is enabled, otherwise rendering
|
||||
// will fail.
|
||||
if (features::kEnableSurfaceSynchronization.default_state ==
|
||||
base::FEATURE_ENABLED_BY_DEFAULT) {
|
||||
disable_features.push_back(
|
||||
features::kEnableSurfaceSynchronization.name);
|
||||
}
|
||||
}
|
||||
|
||||
if (!disable_features.empty()) {
|
||||
|
@ -25,7 +25,6 @@
|
||||
#include "content/public/common/content_switches.h"
|
||||
#include "media/cdm/cdm_host_file.h"
|
||||
#include "media/cdm/supported_cdm_versions.h"
|
||||
#include "services/service_manager/embedder/switches.h"
|
||||
#include "services/service_manager/sandbox/switches.h"
|
||||
|
||||
namespace {
|
||||
@ -84,6 +83,8 @@ const char kCdmCodecsListName[] = "x-cdm-codecs";
|
||||
// Whether persistent license is supported by the CDM: "true" or "false".
|
||||
const char kCdmPersistentLicenseSupportName[] =
|
||||
"x-cdm-persistent-license-support";
|
||||
const char kCdmSupportedEncryptionSchemesName[] =
|
||||
"x-cdm-supported-encryption-schemes";
|
||||
|
||||
// The following strings are used to specify supported codecs in the
|
||||
// parameter |kCdmCodecsListName|.
|
||||
@ -93,6 +94,11 @@ const char kCdmSupportedCodecVp9[] = "vp9.0";
|
||||
const char kCdmSupportedCodecAvc1[] = "avc1";
|
||||
#endif
|
||||
|
||||
// The following strings are used to specify supported encryption schemes in
|
||||
// the parameter |kCdmSupportedEncryptionSchemesName|.
|
||||
const char kCdmSupportedEncryptionSchemeCenc[] = "cenc";
|
||||
const char kCdmSupportedEncryptionSchemeCbcs[] = "cbcs";
|
||||
|
||||
std::unique_ptr<base::DictionaryValue> ParseManifestFile(
|
||||
const base::FilePath& manifest_path) {
|
||||
CEF_REQUIRE_BLOCKING();
|
||||
@ -176,6 +182,57 @@ bool IsCompatibleWithChrome(const base::DictionaryValue& manifest,
|
||||
error_message);
|
||||
}
|
||||
|
||||
// Determine the set of encryption schemes supported from |manifest|. It is
|
||||
// assumed that all CDMs support 'cenc', so if the manifest entry
|
||||
// |kCdmSupportedEncryptionSchemesName| is missing, the result will indicate
|
||||
// support for 'cenc' only. Incorrect types in the manifest entry will log
|
||||
// the error and return the empty set. Unrecognized values will be reported
|
||||
// but otherwise ignored.
|
||||
base::flat_set<media::EncryptionMode> GetSupportedEncryptionSchemes(
|
||||
const base::DictionaryValue& manifest,
|
||||
std::string* error_message) {
|
||||
const base::Value* value =
|
||||
manifest.FindKey(kCdmSupportedEncryptionSchemesName);
|
||||
if (!value)
|
||||
return {media::EncryptionMode::kCenc};
|
||||
|
||||
if (!value->is_list()) {
|
||||
std::stringstream ss;
|
||||
ss << "Manifest entry " << kCdmSupportedEncryptionSchemesName
|
||||
<< " is not a list.";
|
||||
*error_message = ss.str();
|
||||
return {};
|
||||
}
|
||||
|
||||
const base::Value::ListStorage& list = value->GetList();
|
||||
base::flat_set<media::EncryptionMode> result;
|
||||
for (const auto& item : list) {
|
||||
if (!item.is_string()) {
|
||||
std::stringstream ss;
|
||||
ss << "Unrecognized item type in manifest entry "
|
||||
<< kCdmSupportedEncryptionSchemesName;
|
||||
*error_message = ss.str();
|
||||
return {};
|
||||
}
|
||||
|
||||
const std::string& scheme = item.GetString();
|
||||
if (scheme == kCdmSupportedEncryptionSchemeCenc) {
|
||||
result.insert(media::EncryptionMode::kCenc);
|
||||
} else if (scheme == kCdmSupportedEncryptionSchemeCbcs) {
|
||||
result.insert(media::EncryptionMode::kCbcs);
|
||||
} else {
|
||||
std::stringstream ss;
|
||||
ss << "Unrecognized encryption scheme " << scheme << " in manifest entry "
|
||||
<< kCdmSupportedEncryptionSchemesName;
|
||||
if (!error_message->empty())
|
||||
*error_message += ", ";
|
||||
*error_message += ss.str();
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
// Verify and load the contents of |base_path|.
|
||||
cef_cdm_registration_error_t LoadWidevineCdmInfo(
|
||||
const base::FilePath& base_path,
|
||||
@ -183,6 +240,7 @@ cef_cdm_registration_error_t LoadWidevineCdmInfo(
|
||||
std::string* cdm_version,
|
||||
std::string* cdm_codecs,
|
||||
bool* supports_persistent_license,
|
||||
base::flat_set<media::EncryptionMode>* supported_encryption_schemes,
|
||||
std::string* error_message) {
|
||||
std::stringstream ss;
|
||||
|
||||
@ -224,6 +282,11 @@ cef_cdm_registration_error_t LoadWidevineCdmInfo(
|
||||
manifest->FindKey(kCdmPersistentLicenseSupportName);
|
||||
*supports_persistent_license = value && value->is_bool() && value->GetBool();
|
||||
|
||||
*supported_encryption_schemes =
|
||||
GetSupportedEncryptionSchemes(*manifest, error_message);
|
||||
if (supported_encryption_schemes->empty())
|
||||
return CEF_CDM_REGISTRATION_ERROR_INCORRECT_CONTENTS;
|
||||
|
||||
return CEF_CDM_REGISTRATION_ERROR_NONE;
|
||||
}
|
||||
|
||||
@ -234,6 +297,8 @@ void DeliverWidevineCdmCallback(cef_cdm_registration_error_t result,
|
||||
|
||||
if (result != CEF_CDM_REGISTRATION_ERROR_NONE)
|
||||
LOG(ERROR) << "Widevine CDM registration failed; " << error_message;
|
||||
else if (!error_message.empty())
|
||||
LOG(WARNING) << "Widevine CDM registration warning; " << error_message;
|
||||
|
||||
if (callback)
|
||||
callback->OnCdmRegistrationComplete(result, error_message);
|
||||
@ -259,28 +324,34 @@ std::vector<media::VideoCodec> ConvertCodecsString(const std::string& codecs) {
|
||||
return supported_video_codecs;
|
||||
}
|
||||
|
||||
content::CdmInfo MakeCdmInfo(const base::FilePath& cdm_path,
|
||||
const std::string& cdm_version,
|
||||
const std::string& cdm_codecs,
|
||||
bool supports_persistent_license) {
|
||||
content::CdmInfo MakeCdmInfo(
|
||||
const base::FilePath& cdm_path,
|
||||
const std::string& cdm_version,
|
||||
const std::string& cdm_codecs,
|
||||
bool supports_persistent_license,
|
||||
const base::flat_set<media::EncryptionMode>& supported_encryption_schemes) {
|
||||
std::vector<media::VideoCodec> supported_video_codecs =
|
||||
ConvertCodecsString(cdm_codecs);
|
||||
return content::CdmInfo(
|
||||
kWidevineCdmDisplayName, kWidevineCdmGuid, base::Version(cdm_version),
|
||||
cdm_path, kWidevineCdmFileSystemId, supported_video_codecs,
|
||||
supports_persistent_license, kWidevineKeySystem, false);
|
||||
supports_persistent_license, supported_encryption_schemes,
|
||||
kWidevineKeySystem, false);
|
||||
}
|
||||
|
||||
void RegisterWidevineCdmOnUIThread(const base::FilePath& cdm_path,
|
||||
const std::string& cdm_version,
|
||||
const std::string& cdm_codecs,
|
||||
bool supports_persistent_license,
|
||||
CefRefPtr<CefRegisterCdmCallback> callback) {
|
||||
void RegisterWidevineCdmOnUIThread(
|
||||
const base::FilePath& cdm_path,
|
||||
const std::string& cdm_version,
|
||||
const std::string& cdm_codecs,
|
||||
bool supports_persistent_license,
|
||||
const base::flat_set<media::EncryptionMode>& supported_encryption_schemes,
|
||||
CefRefPtr<CefRegisterCdmCallback> callback) {
|
||||
CEF_REQUIRE_UIT();
|
||||
|
||||
// Register Widevine with the CdmRegistry.
|
||||
content::CdmRegistry::GetInstance()->RegisterCdm(MakeCdmInfo(
|
||||
cdm_path, cdm_version, cdm_codecs, supports_persistent_license));
|
||||
content::CdmRegistry::GetInstance()->RegisterCdm(
|
||||
MakeCdmInfo(cdm_path, cdm_version, cdm_codecs,
|
||||
supports_persistent_license, supported_encryption_schemes));
|
||||
|
||||
DeliverWidevineCdmCallback(CEF_CDM_REGISTRATION_ERROR_NONE, std::string(),
|
||||
callback);
|
||||
@ -295,10 +366,12 @@ void LoadWidevineCdmInfoOnBlockingThread(
|
||||
std::string cdm_version;
|
||||
std::string cdm_codecs;
|
||||
bool supports_persistent_license;
|
||||
base::flat_set<media::EncryptionMode> supported_encryption_schemes;
|
||||
std::string error_message;
|
||||
cef_cdm_registration_error_t result =
|
||||
LoadWidevineCdmInfo(base_path, &cdm_path, &cdm_version, &cdm_codecs,
|
||||
&supports_persistent_license, &error_message);
|
||||
&supports_persistent_license,
|
||||
&supported_encryption_schemes, &error_message);
|
||||
if (result != CEF_CDM_REGISTRATION_ERROR_NONE) {
|
||||
CEF_POST_TASK(CEF_UIT, base::Bind(DeliverWidevineCdmCallback, result,
|
||||
error_message, callback));
|
||||
@ -308,7 +381,8 @@ void LoadWidevineCdmInfoOnBlockingThread(
|
||||
// Continue execution on the UI thread.
|
||||
CEF_POST_TASK(CEF_UIT,
|
||||
base::Bind(RegisterWidevineCdmOnUIThread, cdm_path, cdm_version,
|
||||
cdm_codecs, supports_persistent_license, callback));
|
||||
cdm_codecs, supports_persistent_license,
|
||||
supported_encryption_schemes, callback));
|
||||
}
|
||||
|
||||
} // namespace
|
||||
@ -356,7 +430,7 @@ void CefWidevineLoader::AddContentDecryptionModules(
|
||||
// errors during plugin loading. This is because the Zygote process must pre-
|
||||
// load all plugins before initializing the sandbox.
|
||||
if (command_line.GetSwitchValueASCII(switches::kProcessType) !=
|
||||
service_manager::switches::kZygoteProcess ||
|
||||
switches::kZygoteProcess ||
|
||||
command_line.HasSwitch(service_manager::switches::kNoSandbox)) {
|
||||
return;
|
||||
}
|
||||
@ -375,17 +449,20 @@ void CefWidevineLoader::AddContentDecryptionModules(
|
||||
std::string cdm_version;
|
||||
std::string cdm_codecs;
|
||||
bool supports_persistent_license;
|
||||
base::flat_set<media::EncryptionMode> supported_encryption_schemes;
|
||||
std::string error_message;
|
||||
cef_cdm_registration_error_t result =
|
||||
LoadWidevineCdmInfo(base_path, &cdm_path, &cdm_version, &cdm_codecs,
|
||||
&supports_persistent_license, &error_message);
|
||||
&supports_persistent_license,
|
||||
&supported_encryption_schemes, &error_message);
|
||||
if (result != CEF_CDM_REGISTRATION_ERROR_NONE) {
|
||||
LOG(ERROR) << "Widevine CDM registration failed; " << error_message;
|
||||
return;
|
||||
}
|
||||
|
||||
cdms->push_back(MakeCdmInfo(cdm_path, cdm_version, cdm_codecs,
|
||||
supports_persistent_license));
|
||||
supports_persistent_license,
|
||||
supported_encryption_schemes));
|
||||
}
|
||||
|
||||
#endif // defined(OS_LINUX)
|
||||
|
@ -183,10 +183,10 @@ void CefExtensionsRendererClient::WillSendRequest(
|
||||
GURL request_url(url);
|
||||
if (extension->permissions_data()->GetPageAccess(extension, request_url,
|
||||
tab_id, nullptr) ==
|
||||
extensions::PermissionsData::ACCESS_ALLOWED ||
|
||||
extensions::PermissionsData::PageAccess::kAllowed ||
|
||||
extension->permissions_data()->GetContentScriptAccess(
|
||||
extension, request_url, tab_id, nullptr) ==
|
||||
extensions::PermissionsData::ACCESS_ALLOWED) {
|
||||
extensions::PermissionsData::PageAccess::kAllowed) {
|
||||
*attach_same_site_cookies = true;
|
||||
}
|
||||
}
|
||||
|
@ -328,8 +328,6 @@ patches = [
|
||||
# https://bitbucket.org/chromiumembedded/cef/issues/2256
|
||||
#
|
||||
# Linux: Fix GTK2 compile errors.
|
||||
#
|
||||
# Linux: Fix "undefined symbol: ErrHandler" runtime error.
|
||||
'name': 'linux_build',
|
||||
},
|
||||
{
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git content/browser/renderer_host/browser_compositor_view_mac.h content/browser/renderer_host/browser_compositor_view_mac.h
|
||||
index 6ad9f5fb334d..d7bf762314a4 100644
|
||||
index f823af11a791..2c08bf522a10 100644
|
||||
--- content/browser/renderer_host/browser_compositor_view_mac.h
|
||||
+++ content/browser/renderer_host/browser_compositor_view_mac.h
|
||||
@@ -56,11 +56,13 @@ class CONTENT_EXPORT BrowserCompositorMac : public DelegatedFrameHostClient {
|
||||
@@ -56,6 +56,7 @@ class CONTENT_EXPORT BrowserCompositorMac : public DelegatedFrameHostClient {
|
||||
|
||||
// These will not return nullptr until Destroy is called.
|
||||
DelegatedFrameHost* GetDelegatedFrameHost();
|
||||
@ -10,17 +10,19 @@ index 6ad9f5fb334d..d7bf762314a4 100644
|
||||
|
||||
// Ensure that the currect compositor frame be cleared (even if it is
|
||||
// potentially visible).
|
||||
void ClearCompositorFrame();
|
||||
@@ -67,6 +68,7 @@ class CONTENT_EXPORT BrowserCompositorMac : public DelegatedFrameHostClient {
|
||||
// no valid frame is available.
|
||||
const gfx::CALayerParams* GetLastCALayerParams() const;
|
||||
|
||||
+ ui::Compositor* GetCompositor();
|
||||
gfx::AcceleratedWidget GetAcceleratedWidget();
|
||||
void DidCreateNewRendererCompositorFrameSink(
|
||||
viz::mojom::CompositorFrameSinkClient* renderer_compositor_frame_sink);
|
||||
diff --git content/browser/renderer_host/browser_compositor_view_mac.mm content/browser/renderer_host/browser_compositor_view_mac.mm
|
||||
index f8d3575e06dc..688aa7e5b117 100644
|
||||
index a03b35dbad92..d8938fb0562c 100644
|
||||
--- content/browser/renderer_host/browser_compositor_view_mac.mm
|
||||
+++ content/browser/renderer_host/browser_compositor_view_mac.mm
|
||||
@@ -206,6 +206,12 @@ BrowserCompositorMac::~BrowserCompositorMac() {
|
||||
@@ -248,6 +248,12 @@ BrowserCompositorMac::~BrowserCompositorMac() {
|
||||
g_spare_recyclable_compositors.Get().clear();
|
||||
}
|
||||
|
||||
@ -33,18 +35,3 @@ index f8d3575e06dc..688aa7e5b117 100644
|
||||
gfx::AcceleratedWidget BrowserCompositorMac::GetAcceleratedWidget() {
|
||||
if (recyclable_compositor_) {
|
||||
return recyclable_compositor_->accelerated_widget_mac()
|
||||
diff --git ui/accelerated_widget_mac/accelerated_widget_mac.mm ui/accelerated_widget_mac/accelerated_widget_mac.mm
|
||||
index 0de89795c461..3d46421491a9 100644
|
||||
--- ui/accelerated_widget_mac/accelerated_widget_mac.mm
|
||||
+++ ui/accelerated_widget_mac/accelerated_widget_mac.mm
|
||||
@@ -71,6 +71,10 @@ void AcceleratedWidgetMac::SetNSView(AcceleratedWidgetMacNSView* view) {
|
||||
DCHECK(view && !view_);
|
||||
view_ = view;
|
||||
|
||||
+ // Will be nullptr for CEF.
|
||||
+ if (!view_->AcceleratedWidgetGetNSView())
|
||||
+ return;
|
||||
+
|
||||
CALayer* background_layer = [view_->AcceleratedWidgetGetNSView() layer];
|
||||
DCHECK(background_layer);
|
||||
[flipped_layer_ setBounds:[background_layer bounds]];
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git content/browser/browser_plugin/browser_plugin_guest.cc content/browser/browser_plugin/browser_plugin_guest.cc
|
||||
index ab0b50b62aac..d17bc04e53bf 100644
|
||||
index 6f3759f4d66f..c7d7188444b1 100644
|
||||
--- content/browser/browser_plugin/browser_plugin_guest.cc
|
||||
+++ content/browser/browser_plugin/browser_plugin_guest.cc
|
||||
@@ -315,8 +315,11 @@ void BrowserPluginGuest::InitInternal(
|
||||
@@ -314,8 +314,11 @@ void BrowserPluginGuest::InitInternal(
|
||||
static_cast<WebContentsViewGuest*>(GetWebContents()->GetView());
|
||||
}
|
||||
|
||||
@ -15,7 +15,7 @@ index ab0b50b62aac..d17bc04e53bf 100644
|
||||
|
||||
// Once a BrowserPluginGuest has an embedder WebContents, it's considered to
|
||||
// be attached.
|
||||
@@ -791,10 +794,19 @@ void BrowserPluginGuest::OnWillAttachComplete(
|
||||
@@ -790,10 +793,19 @@ void BrowserPluginGuest::OnWillAttachComplete(
|
||||
static_cast<WebContentsViewGuest*>(GetWebContents()->GetView());
|
||||
if (!web_contents()->GetRenderViewHost()->GetWidget()->GetView()) {
|
||||
web_contents_view->CreateViewForWidget(
|
||||
@ -266,7 +266,7 @@ index d05dd5421458..fa13775f0512 100644
|
||||
// a BrowserPlugin even when we are using cross process frames for guests. It
|
||||
// should be removed after resolving https://crbug.com/642826).
|
||||
diff --git extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
|
||||
index 54c9b6320d9c..d474ead5f147 100644
|
||||
index 8aa4bd7ffca6..0a649863f381 100644
|
||||
--- extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
|
||||
+++ extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
|
||||
@@ -193,6 +193,8 @@ void MimeHandlerViewGuest::CreateWebContents(
|
||||
@ -277,8 +277,8 @@ index 54c9b6320d9c..d474ead5f147 100644
|
||||
+ delegate_->OverrideWebContentsCreateParams(¶ms);
|
||||
// TODO(erikchen): Fix ownership semantics for guest views.
|
||||
// https://crbug.com/832879.
|
||||
auto* web_contents = WebContents::Create(params).release();
|
||||
@@ -230,6 +232,18 @@ bool MimeHandlerViewGuest::ShouldDestroyOnDetach() const {
|
||||
callback.Run(WebContents::Create(params).release());
|
||||
@@ -228,6 +230,18 @@ bool MimeHandlerViewGuest::ShouldDestroyOnDetach() const {
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -298,7 +298,7 @@ index 54c9b6320d9c..d474ead5f147 100644
|
||||
WebContents* source,
|
||||
const content::OpenURLParams& params) {
|
||||
diff --git extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h
|
||||
index 2bc53e063aae..9814b40f84ea 100644
|
||||
index 7f0df3d7dc3a..82e2e8a8cdc6 100644
|
||||
--- extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h
|
||||
+++ extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h
|
||||
@@ -108,6 +108,10 @@ class MimeHandlerViewGuest :
|
||||
|
@ -1,5 +1,5 @@
|
||||
diff --git chrome/browser/BUILD.gn chrome/browser/BUILD.gn
|
||||
index aa1294af0a9a..c3606b23c821 100644
|
||||
index 69d42d094933..96383d6f94d7 100644
|
||||
--- chrome/browser/BUILD.gn
|
||||
+++ chrome/browser/BUILD.gn
|
||||
@@ -8,6 +8,7 @@ import("//build/config/features.gni")
|
||||
@ -9,8 +9,8 @@ index aa1294af0a9a..c3606b23c821 100644
|
||||
+import("//cef/libcef/features/features.gni")
|
||||
import("//chrome/common/features.gni")
|
||||
import("//components/feature_engagement/features.gni")
|
||||
import("//components/nacl/features.gni")
|
||||
@@ -1574,6 +1575,7 @@ jumbo_split_static_library("browser") {
|
||||
import("//components/feed/features.gni")
|
||||
@@ -1600,6 +1601,7 @@ jumbo_split_static_library("browser") {
|
||||
"//base:i18n",
|
||||
"//base/allocator:buildflags",
|
||||
"//cc",
|
||||
@ -18,7 +18,7 @@ index aa1294af0a9a..c3606b23c821 100644
|
||||
"//chrome:extra_resources",
|
||||
"//chrome:resources",
|
||||
"//chrome:strings",
|
||||
@@ -1834,6 +1836,10 @@ jumbo_split_static_library("browser") {
|
||||
@@ -1866,6 +1868,10 @@ jumbo_split_static_library("browser") {
|
||||
]
|
||||
}
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
diff --git chrome/browser/content_settings/host_content_settings_map_factory.cc chrome/browser/content_settings/host_content_settings_map_factory.cc
|
||||
index 6745fbf917e2..0eec77c1aa72 100644
|
||||
index 607dfe4d4c99..27e55b7f6b2d 100644
|
||||
--- chrome/browser/content_settings/host_content_settings_map_factory.cc
|
||||
+++ chrome/browser/content_settings/host_content_settings_map_factory.cc
|
||||
@@ -7,6 +7,7 @@
|
||||
@ -9,8 +9,8 @@ index 6745fbf917e2..0eec77c1aa72 100644
|
||||
+#include "cef/libcef/features/features.h"
|
||||
#include "chrome/browser/profiles/off_the_record_profile_impl.h"
|
||||
#include "chrome/browser/profiles/profile.h"
|
||||
#include "chrome/common/chrome_features.h"
|
||||
@@ -16,6 +17,10 @@
|
||||
#include "chrome/browser/search_engines/template_url_service_factory.h"
|
||||
@@ -17,6 +18,10 @@
|
||||
#include "content/public/browser/browser_thread.h"
|
||||
#include "extensions/buildflags/buildflags.h"
|
||||
|
||||
@ -21,7 +21,7 @@ index 6745fbf917e2..0eec77c1aa72 100644
|
||||
#if BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
#include "chrome/browser/extensions/extension_service.h"
|
||||
#include "extensions/browser/extension_system.h"
|
||||
@@ -41,8 +46,14 @@ HostContentSettingsMapFactory::HostContentSettingsMapFactory()
|
||||
@@ -42,8 +47,14 @@ HostContentSettingsMapFactory::HostContentSettingsMapFactory()
|
||||
DependsOn(SupervisedUserSettingsServiceFactory::GetInstance());
|
||||
#endif
|
||||
#if BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
@ -36,7 +36,7 @@ index 6745fbf917e2..0eec77c1aa72 100644
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -86,9 +97,15 @@ scoped_refptr<RefcountedKeyedService>
|
||||
@@ -87,9 +98,15 @@ scoped_refptr<RefcountedKeyedService>
|
||||
/*store_last_modified=*/true));
|
||||
|
||||
#if BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
|
@ -70,7 +70,7 @@ index e8e76ce5b954..1dd338dd0142 100644
|
||||
content::BrowserContext* GetBrowserContextRedirectedInIncognito(
|
||||
content::BrowserContext* context);
|
||||
diff --git chrome/browser/profiles/profile_manager.cc chrome/browser/profiles/profile_manager.cc
|
||||
index 7f15a0bcb0a9..3f2db9c4b75b 100644
|
||||
index fc316ed90cfd..eef294ac6985 100644
|
||||
--- chrome/browser/profiles/profile_manager.cc
|
||||
+++ chrome/browser/profiles/profile_manager.cc
|
||||
@@ -379,7 +379,7 @@ ProfileManager::ProfileManager(const base::FilePath& user_data_dir)
|
||||
@ -83,10 +83,10 @@ index 7f15a0bcb0a9..3f2db9c4b75b 100644
|
||||
this));
|
||||
}
|
||||
diff --git chrome/browser/profiles/profile_manager.h chrome/browser/profiles/profile_manager.h
|
||||
index 9a0d8dd4c3e6..6cfbfd1ddc8d 100644
|
||||
index fc027d61027a..61484ca7e3c5 100644
|
||||
--- chrome/browser/profiles/profile_manager.h
|
||||
+++ chrome/browser/profiles/profile_manager.h
|
||||
@@ -94,7 +94,7 @@ class ProfileManager : public content::NotificationObserver,
|
||||
@@ -93,7 +93,7 @@ class ProfileManager : public content::NotificationObserver,
|
||||
// acceptable. Returns null if creation of the new profile fails.
|
||||
// TODO(bauerb): Migrate calls from other code to GetProfileByPath(), then
|
||||
// make this method private.
|
||||
@ -95,7 +95,7 @@ index 9a0d8dd4c3e6..6cfbfd1ddc8d 100644
|
||||
|
||||
// Returns total number of profiles available on this machine.
|
||||
size_t GetNumberOfProfiles();
|
||||
@@ -125,7 +125,7 @@ class ProfileManager : public content::NotificationObserver,
|
||||
@@ -124,7 +124,7 @@ class ProfileManager : public content::NotificationObserver,
|
||||
|
||||
// Returns true if the profile pointer is known to point to an existing
|
||||
// profile.
|
||||
@ -104,7 +104,7 @@ index 9a0d8dd4c3e6..6cfbfd1ddc8d 100644
|
||||
|
||||
// Returns the directory where the first created profile is stored,
|
||||
// relative to the user data directory currently in use.
|
||||
@@ -134,7 +134,7 @@ class ProfileManager : public content::NotificationObserver,
|
||||
@@ -133,7 +133,7 @@ class ProfileManager : public content::NotificationObserver,
|
||||
// Get the Profile last used (the Profile to which owns the most recently
|
||||
// focused window) with this Chrome build. If no signed profile has been
|
||||
// stored in Local State, hand back the Default profile.
|
||||
|
@ -1,5 +1,5 @@
|
||||
diff --git chrome/renderer/BUILD.gn chrome/renderer/BUILD.gn
|
||||
index 6fd923e3e365..8e31cee51cab 100644
|
||||
index 0b312fc03b93..929fca9eaee3 100644
|
||||
--- chrome/renderer/BUILD.gn
|
||||
+++ chrome/renderer/BUILD.gn
|
||||
@@ -3,6 +3,7 @@
|
||||
@ -10,7 +10,7 @@ index 6fd923e3e365..8e31cee51cab 100644
|
||||
import("//chrome/common/features.gni")
|
||||
import("//components/nacl/features.gni")
|
||||
import("//components/offline_pages/buildflags/features.gni")
|
||||
@@ -110,6 +111,7 @@ static_library("renderer") {
|
||||
@@ -113,6 +114,7 @@ static_library("renderer") {
|
||||
defines = []
|
||||
|
||||
deps = [
|
||||
@ -18,7 +18,7 @@ index 6fd923e3e365..8e31cee51cab 100644
|
||||
"//chrome:resources",
|
||||
"//chrome:strings",
|
||||
"//chrome/common",
|
||||
@@ -173,6 +175,10 @@ static_library("renderer") {
|
||||
@@ -176,6 +178,10 @@ static_library("renderer") {
|
||||
|
||||
configs += [ "//build/config/compiler:wexit_time_destructors" ]
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git chrome/common/chrome_content_client.cc chrome/common/chrome_content_client.cc
|
||||
index df43d2bfaec6..aa2da0e9a15b 100644
|
||||
index da90176ea5a9..34da381c00e2 100644
|
||||
--- chrome/common/chrome_content_client.cc
|
||||
+++ chrome/common/chrome_content_client.cc
|
||||
@@ -92,7 +92,8 @@
|
||||
@@ -94,7 +94,8 @@
|
||||
|
||||
#if BUILDFLAG(ENABLE_LIBRARY_CDMS)
|
||||
#include "media/cdm/cdm_paths.h" // nogncheck
|
||||
|
@ -13,7 +13,7 @@ index 4393a8fac233..860715e86900 100644
|
||||
explicit ContentServiceManagerMainDelegate(const ContentMainParams& params);
|
||||
~ContentServiceManagerMainDelegate() override;
|
||||
diff --git third_party/blink/renderer/controller/BUILD.gn third_party/blink/renderer/controller/BUILD.gn
|
||||
index dd83de48cc20..c3be12e866e9 100644
|
||||
index 1aaa34c60ac9..c9c9a430f6b0 100644
|
||||
--- third_party/blink/renderer/controller/BUILD.gn
|
||||
+++ third_party/blink/renderer/controller/BUILD.gn
|
||||
@@ -25,6 +25,7 @@ component("controller") {
|
||||
|
@ -1,5 +1,5 @@
|
||||
diff --git content/browser/compositor/gpu_process_transport_factory.cc content/browser/compositor/gpu_process_transport_factory.cc
|
||||
index 917b51464fce..cdb5213d12d4 100644
|
||||
index 2775fd430e02..f066901641e0 100644
|
||||
--- content/browser/compositor/gpu_process_transport_factory.cc
|
||||
+++ content/browser/compositor/gpu_process_transport_factory.cc
|
||||
@@ -504,9 +504,19 @@ void GpuProcessTransportFactory::EstablishedGpuChannel(
|
||||
|
@ -63,23 +63,24 @@ index 569e6112d86b..41599944688a 100644
|
||||
allow_wildcard, NULL, &plugin, NULL);
|
||||
}
|
||||
|
||||
diff --git chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc
|
||||
index dfbad402f1ea..7a332ea67611 100644
|
||||
--- chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc
|
||||
+++ chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc
|
||||
@@ -601,6 +601,6 @@ void BrowserTabStripController::OnFindURLMimeTypeCompleted(
|
||||
diff --git chrome/browser/ui/views/frame/browser_root_view.cc chrome/browser/ui/views/frame/browser_root_view.cc
|
||||
index d544c9ec13a3..b15c5b13d902 100644
|
||||
--- chrome/browser/ui/views/frame/browser_root_view.cc
|
||||
+++ chrome/browser/ui/views/frame/browser_root_view.cc
|
||||
@@ -66,7 +66,7 @@ void OnFindURLMimeType(const GURL& url,
|
||||
content::PluginService::GetInstance()->GetPluginInfo(
|
||||
-1, // process ID
|
||||
MSG_ROUTING_NONE, // routing ID
|
||||
- model_->profile()->GetResourceContext(), url, url::Origin(),
|
||||
+ model_->profile()->GetResourceContext(), url, true, url::Origin(),
|
||||
mime_type, false, NULL, &plugin, NULL));
|
||||
- profile->GetResourceContext(), url, url::Origin(), mime_type,
|
||||
+ profile->GetResourceContext(), url, true, url::Origin(), mime_type,
|
||||
false, nullptr, &plugin, nullptr));
|
||||
}
|
||||
|
||||
diff --git content/browser/frame_host/navigation_handle_impl.cc content/browser/frame_host/navigation_handle_impl.cc
|
||||
index de4e732fd84f..48a68c7f83f1 100644
|
||||
index df35ab90fa05..3835d6d76a06 100644
|
||||
--- content/browser/frame_host/navigation_handle_impl.cc
|
||||
+++ content/browser/frame_host/navigation_handle_impl.cc
|
||||
@@ -383,12 +383,6 @@ net::Error NavigationHandleImpl::GetNetErrorCode() {
|
||||
@@ -380,12 +380,6 @@ net::Error NavigationHandleImpl::GetNetErrorCode() {
|
||||
}
|
||||
|
||||
RenderFrameHostImpl* NavigationHandleImpl::GetRenderFrameHost() {
|
||||
@ -93,10 +94,10 @@ index de4e732fd84f..48a68c7f83f1 100644
|
||||
}
|
||||
|
||||
diff --git content/browser/frame_host/render_frame_host_impl.cc content/browser/frame_host/render_frame_host_impl.cc
|
||||
index 1e13fa2ee857..1b6b236a8196 100644
|
||||
index f289fb7cfd49..d7512011539b 100644
|
||||
--- content/browser/frame_host/render_frame_host_impl.cc
|
||||
+++ content/browser/frame_host/render_frame_host_impl.cc
|
||||
@@ -1550,6 +1550,7 @@ void RenderFrameHostImpl::OnDidFailProvisionalLoadWithError(
|
||||
@@ -1551,6 +1551,7 @@ void RenderFrameHostImpl::OnDidFailProvisionalLoadWithError(
|
||||
if (GetNavigationHandle()) {
|
||||
GetNavigationHandle()->set_net_error_code(
|
||||
static_cast<net::Error>(params.error_code));
|
||||
@ -104,7 +105,7 @@ index 1e13fa2ee857..1b6b236a8196 100644
|
||||
}
|
||||
|
||||
frame_tree_node_->navigator()->DidFailProvisionalLoadWithError(this, params);
|
||||
@@ -3436,9 +3437,9 @@ void RenderFrameHostImpl::RegisterMojoInterfaces() {
|
||||
@@ -3449,9 +3450,9 @@ void RenderFrameHostImpl::RegisterMojoInterfaces() {
|
||||
BrowserThread::GetTaskRunnerForThread(BrowserThread::IO));
|
||||
|
||||
if (base::FeatureList::IsEnabled(network::features::kNetworkService)) {
|
||||
@ -117,7 +118,7 @@ index 1e13fa2ee857..1b6b236a8196 100644
|
||||
// TODO(https://crbug.com/813479): Investigate why we need to explicitly
|
||||
// specify task runner for BrowserThread::IO here.
|
||||
// Bind calls to the BindRegistry should come on to the IO thread by
|
||||
@@ -3712,9 +3713,9 @@ void RenderFrameHostImpl::CommitNavigation(
|
||||
@@ -3724,9 +3725,9 @@ void RenderFrameHostImpl::CommitNavigation(
|
||||
// however only do this for cross-document navigations, because the
|
||||
// alternative would be redundant effort.
|
||||
network::mojom::URLLoaderFactoryPtrInfo default_factory_info;
|
||||
@ -130,22 +131,22 @@ index 1e13fa2ee857..1b6b236a8196 100644
|
||||
if (subresource_loader_params &&
|
||||
subresource_loader_params->loader_factory_info.is_valid()) {
|
||||
// If the caller has supplied a default URLLoaderFactory override (for
|
||||
@@ -4355,8 +4356,8 @@ void RenderFrameHostImpl::CreateNetworkServiceDefaultFactoryAndObserve(
|
||||
// Keep DevTools proxy lasy, i.e. closest to the network.
|
||||
@@ -4369,8 +4370,8 @@ void RenderFrameHostImpl::CreateNetworkServiceDefaultFactoryAndObserve(
|
||||
RenderFrameDevToolsAgentHost::WillCreateURLLoaderFactory(
|
||||
this, false, false, &default_factory_request);
|
||||
this, false /* is_navigation */, false /* is_download */,
|
||||
&default_factory_request);
|
||||
- StoragePartitionImpl* storage_partition = static_cast<StoragePartitionImpl*>(
|
||||
- BrowserContext::GetStoragePartition(context, GetSiteInstance()));
|
||||
+ StoragePartition* storage_partition =
|
||||
+ auto* storage_partition =
|
||||
+ BrowserContext::GetStoragePartition(context, GetSiteInstance());
|
||||
if (g_create_network_factory_callback_for_test.Get().is_null()) {
|
||||
storage_partition->GetNetworkContext()->CreateURLLoaderFactory(
|
||||
std::move(default_factory_request), GetProcess()->GetID());
|
||||
diff --git content/browser/frame_host/render_frame_message_filter.cc content/browser/frame_host/render_frame_message_filter.cc
|
||||
index d6ae1864eee2..31169d0bf4d0 100644
|
||||
index 91bf248a67a5..ede635e9ef44 100644
|
||||
--- content/browser/frame_host/render_frame_message_filter.cc
|
||||
+++ content/browser/frame_host/render_frame_message_filter.cc
|
||||
@@ -581,6 +581,7 @@ void RenderFrameMessageFilter::GetCookies(int render_frame_id,
|
||||
@@ -588,6 +588,7 @@ void RenderFrameMessageFilter::GetCookies(int render_frame_id,
|
||||
|
||||
void RenderFrameMessageFilter::OnGetPlugins(
|
||||
bool refresh,
|
||||
@ -153,7 +154,7 @@ index d6ae1864eee2..31169d0bf4d0 100644
|
||||
const url::Origin& main_frame_origin,
|
||||
IPC::Message* reply_msg) {
|
||||
// Don't refresh if the specified threshold has not been passed. Note that
|
||||
@@ -602,18 +603,19 @@ void RenderFrameMessageFilter::OnGetPlugins(
|
||||
@@ -609,18 +610,19 @@ void RenderFrameMessageFilter::OnGetPlugins(
|
||||
|
||||
PluginServiceImpl::GetInstance()->GetPlugins(
|
||||
base::BindOnce(&RenderFrameMessageFilter::GetPluginsCallback, this,
|
||||
@ -175,7 +176,7 @@ index d6ae1864eee2..31169d0bf4d0 100644
|
||||
int routing_id = MSG_ROUTING_NONE;
|
||||
// In this loop, copy the WebPluginInfo (and do not use a reference) because
|
||||
// the filter might mutate it.
|
||||
@@ -622,7 +624,7 @@ void RenderFrameMessageFilter::GetPluginsCallback(
|
||||
@@ -629,7 +631,7 @@ void RenderFrameMessageFilter::GetPluginsCallback(
|
||||
if (!filter ||
|
||||
filter->IsPluginAvailable(child_process_id, routing_id,
|
||||
resource_context_, main_frame_origin.GetURL(),
|
||||
@ -184,7 +185,7 @@ index d6ae1864eee2..31169d0bf4d0 100644
|
||||
plugins.push_back(plugin);
|
||||
}
|
||||
}
|
||||
@@ -634,6 +636,7 @@ void RenderFrameMessageFilter::GetPluginsCallback(
|
||||
@@ -641,6 +643,7 @@ void RenderFrameMessageFilter::GetPluginsCallback(
|
||||
void RenderFrameMessageFilter::OnGetPluginInfo(
|
||||
int render_frame_id,
|
||||
const GURL& url,
|
||||
@ -192,7 +193,7 @@ index d6ae1864eee2..31169d0bf4d0 100644
|
||||
const url::Origin& main_frame_origin,
|
||||
const std::string& mime_type,
|
||||
bool* found,
|
||||
@@ -642,8 +645,8 @@ void RenderFrameMessageFilter::OnGetPluginInfo(
|
||||
@@ -649,8 +652,8 @@ void RenderFrameMessageFilter::OnGetPluginInfo(
|
||||
bool allow_wildcard = true;
|
||||
*found = plugin_service_->GetPluginInfo(
|
||||
render_process_id_, render_frame_id, resource_context_, url,
|
||||
@ -225,7 +226,7 @@ index 7f3ab224bd15..7fb3e94d8756 100644
|
||||
const std::string& mime_type,
|
||||
bool* found,
|
||||
diff --git content/browser/loader/mime_sniffing_resource_handler.cc content/browser/loader/mime_sniffing_resource_handler.cc
|
||||
index 577f62b57ff2..3847f8ec616a 100644
|
||||
index 305f48e69dad..8bf94749e7d6 100644
|
||||
--- content/browser/loader/mime_sniffing_resource_handler.cc
|
||||
+++ content/browser/loader/mime_sniffing_resource_handler.cc
|
||||
@@ -494,8 +494,8 @@ bool MimeSniffingResourceHandler::CheckForPluginHandler(
|
||||
@ -274,10 +275,10 @@ index 4e11056a3dc9..973ad50975e1 100644
|
||||
const std::string& mime_type,
|
||||
bool allow_wildcard,
|
||||
diff --git content/common/frame_messages.h content/common/frame_messages.h
|
||||
index 5b1b0371b087..deaee55626dd 100644
|
||||
index 1b5b3ad3dbbc..468289370554 100644
|
||||
--- content/common/frame_messages.h
|
||||
+++ content/common/frame_messages.h
|
||||
@@ -1391,8 +1391,9 @@ IPC_MESSAGE_ROUTED1(FrameHostMsg_PepperStopsPlayback,
|
||||
@@ -1384,8 +1384,9 @@ IPC_MESSAGE_ROUTED1(FrameHostMsg_PepperStopsPlayback,
|
||||
|
||||
// Used to get the list of plugins. |main_frame_origin| is used to handle
|
||||
// exceptions for plugin content settings.
|
||||
@ -288,7 +289,7 @@ index 5b1b0371b087..deaee55626dd 100644
|
||||
url::Origin /* main_frame_origin */,
|
||||
std::vector<content::WebPluginInfo> /* plugins */)
|
||||
|
||||
@@ -1400,9 +1401,10 @@ IPC_SYNC_MESSAGE_CONTROL2_1(FrameHostMsg_GetPlugins,
|
||||
@@ -1393,9 +1394,10 @@ IPC_SYNC_MESSAGE_CONTROL2_1(FrameHostMsg_GetPlugins,
|
||||
// type. If there is no matching plugin, |found| is false.
|
||||
// |actual_mime_type| is the actual mime type supported by the
|
||||
// found plugin.
|
||||
@ -388,10 +389,10 @@ index 74a031ad10c3..3b3f9e292f4b 100644
|
||||
virtual void FocusedNodeChanged(const blink::WebNode& node) {}
|
||||
|
||||
diff --git content/renderer/render_frame_impl.cc content/renderer/render_frame_impl.cc
|
||||
index 165f418781cb..85a28a9faf12 100644
|
||||
index cba2c9ccd1d6..c2b272dee124 100644
|
||||
--- content/renderer/render_frame_impl.cc
|
||||
+++ content/renderer/render_frame_impl.cc
|
||||
@@ -3278,7 +3278,8 @@ blink::WebPlugin* RenderFrameImpl::CreatePlugin(
|
||||
@@ -3273,7 +3273,8 @@ blink::WebPlugin* RenderFrameImpl::CreatePlugin(
|
||||
std::string mime_type;
|
||||
bool found = false;
|
||||
Send(new FrameHostMsg_GetPluginInfo(
|
||||
@ -401,7 +402,7 @@ index 165f418781cb..85a28a9faf12 100644
|
||||
params.mime_type.Utf8(), &found, &info, &mime_type));
|
||||
if (!found)
|
||||
return nullptr;
|
||||
@@ -3643,6 +3644,8 @@ void RenderFrameImpl::FrameDetached(DetachType type) {
|
||||
@@ -3638,6 +3639,8 @@ void RenderFrameImpl::FrameDetached(DetachType type) {
|
||||
|
||||
void RenderFrameImpl::FrameFocused() {
|
||||
Send(new FrameHostMsg_FrameFocused(routing_id_));
|
||||
@ -411,10 +412,10 @@ index 165f418781cb..85a28a9faf12 100644
|
||||
|
||||
void RenderFrameImpl::WillCommitProvisionalLoad() {
|
||||
diff --git content/renderer/render_thread_impl.cc content/renderer/render_thread_impl.cc
|
||||
index 02c3aa656b66..c993780d2539 100644
|
||||
index 03b9de4df7e9..db2e2407b6b1 100644
|
||||
--- content/renderer/render_thread_impl.cc
|
||||
+++ content/renderer/render_thread_impl.cc
|
||||
@@ -900,6 +900,8 @@ void RenderThreadImpl::Init(
|
||||
@@ -893,6 +893,8 @@ void RenderThreadImpl::Init(
|
||||
|
||||
StartServiceManagerConnection();
|
||||
|
||||
@ -424,7 +425,7 @@ index 02c3aa656b66..c993780d2539 100644
|
||||
base::Bind(&RenderThreadImpl::OnRendererInterfaceRequest,
|
||||
base::Unretained(this)));
|
||||
diff --git content/renderer/renderer_blink_platform_impl.cc content/renderer/renderer_blink_platform_impl.cc
|
||||
index 51e1bd539972..74e1b81b1955 100644
|
||||
index 23d5d95ecd03..609fd81e7c27 100644
|
||||
--- content/renderer/renderer_blink_platform_impl.cc
|
||||
+++ content/renderer/renderer_blink_platform_impl.cc
|
||||
@@ -788,6 +788,7 @@ RendererBlinkPlatformImpl::CreateMIDIAccessor(
|
||||
|
@ -127,7 +127,7 @@ index fdc51ab22807..cb0a99dd190c 100644
|
||||
g_crash_helper_enabled = true;
|
||||
return true;
|
||||
diff --git components/crash/content/app/breakpad_linux.cc components/crash/content/app/breakpad_linux.cc
|
||||
index 87703f9a5276..a651ed2b1833 100644
|
||||
index e57c54b9cf6c..caee714efe38 100644
|
||||
--- components/crash/content/app/breakpad_linux.cc
|
||||
+++ components/crash/content/app/breakpad_linux.cc
|
||||
@@ -28,6 +28,7 @@
|
||||
@ -155,7 +155,7 @@ index 87703f9a5276..a651ed2b1833 100644
|
||||
info.process_start_time = g_process_start_time;
|
||||
info.oom_size = base::g_oom_size;
|
||||
info.pid = g_pid;
|
||||
@@ -1341,7 +1343,7 @@ void ExecUploadProcessOrTerminate(const BreakpadInfo& info,
|
||||
@@ -1342,7 +1344,7 @@ void ExecUploadProcessOrTerminate(const BreakpadInfo& info,
|
||||
header_content_encoding,
|
||||
header_content_type,
|
||||
post_file,
|
||||
@ -164,7 +164,7 @@ index 87703f9a5276..a651ed2b1833 100644
|
||||
"--timeout=10", // Set a timeout so we don't hang forever.
|
||||
"--tries=1", // Don't retry if the upload fails.
|
||||
"-O", // Output reply to the file descriptor path.
|
||||
@@ -1681,10 +1683,19 @@ void HandleCrashDump(const BreakpadInfo& info) {
|
||||
@@ -1682,10 +1684,19 @@ void HandleCrashDump(const BreakpadInfo& info) {
|
||||
GetCrashReporterClient()->GetProductNameAndVersion(&product_name, &version);
|
||||
|
||||
writer.AddBoundary();
|
||||
@ -186,7 +186,7 @@ index 87703f9a5276..a651ed2b1833 100644
|
||||
if (info.pid > 0) {
|
||||
char pid_value_buf[kUint64StringSize];
|
||||
uint64_t pid_value_len = my_uint64_len(info.pid);
|
||||
@@ -1802,10 +1813,20 @@ void HandleCrashDump(const BreakpadInfo& info) {
|
||||
@@ -1803,10 +1814,20 @@ void HandleCrashDump(const BreakpadInfo& info) {
|
||||
crash_reporter::internal::TransitionalCrashKeyStorage;
|
||||
CrashKeyStorage::Iterator crash_key_iterator(*info.crash_keys);
|
||||
const CrashKeyStorage::Entry* entry;
|
||||
@ -208,7 +208,7 @@ index 87703f9a5276..a651ed2b1833 100644
|
||||
writer.AddBoundary();
|
||||
writer.Flush();
|
||||
}
|
||||
@@ -2015,6 +2036,17 @@ void SetChannelCrashKey(const std::string& channel) {
|
||||
@@ -2016,6 +2037,17 @@ void SetChannelCrashKey(const std::string& channel) {
|
||||
channel_key.Set(channel);
|
||||
}
|
||||
|
||||
@ -402,7 +402,7 @@ index a5f6b2e6f423..b3892d3743ff 100644
|
||||
->set_system_crash_reporter_forwarding(crashpad::TriState::kDisabled);
|
||||
}
|
||||
diff --git components/crash/content/app/crashpad_mac.mm components/crash/content/app/crashpad_mac.mm
|
||||
index eb82f44053ce..daf2c722837c 100644
|
||||
index eb82f44053ce..73cfcc15998d 100644
|
||||
--- components/crash/content/app/crashpad_mac.mm
|
||||
+++ components/crash/content/app/crashpad_mac.mm
|
||||
@@ -16,11 +16,14 @@
|
||||
@ -429,7 +429,7 @@ index eb82f44053ce..daf2c722837c 100644
|
||||
- framework_bundle_path.Append("Helpers").Append("crashpad_handler");
|
||||
+ // Use the same subprocess helper exe.
|
||||
+ base::FilePath handler_path;
|
||||
+ PathService::Get(content::CHILD_PROCESS_EXE, &handler_path);
|
||||
+ base::PathService::Get(content::CHILD_PROCESS_EXE, &handler_path);
|
||||
+ DCHECK(!handler_path.empty());
|
||||
|
||||
// Is there a way to recover if this fails?
|
||||
|
@ -27,10 +27,10 @@ index 53c7404ef1f9..ac33df7cfe0e 100644
|
||||
auto* browser_context = web_contents->GetBrowserContext();
|
||||
StreamsPrivateAPI* streams_private = GetStreamsPrivateAPI(browser_context);
|
||||
diff --git content/browser/frame_host/render_frame_host_manager.cc content/browser/frame_host/render_frame_host_manager.cc
|
||||
index d7875ac0c044..d369de7e33f1 100644
|
||||
index 73b66a56be83..3f60cbf1a727 100644
|
||||
--- content/browser/frame_host/render_frame_host_manager.cc
|
||||
+++ content/browser/frame_host/render_frame_host_manager.cc
|
||||
@@ -903,10 +903,11 @@ bool RenderFrameHostManager::ShouldSwapBrowsingInstancesForNavigation(
|
||||
@@ -897,10 +897,11 @@ bool RenderFrameHostManager::ShouldSwapBrowsingInstancesForNavigation(
|
||||
// TODO(alexmos): This check should've been enforced earlier in the
|
||||
// navigation, in chrome::Navigate(). Verify this, and then convert this to
|
||||
// a CHECK and remove the fallback.
|
||||
@ -46,7 +46,7 @@ index d7875ac0c044..d369de7e33f1 100644
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -1046,7 +1047,8 @@ RenderFrameHostManager::GetSiteInstanceForNavigation(
|
||||
@@ -1041,7 +1042,8 @@ RenderFrameHostManager::GetSiteInstanceForNavigation(
|
||||
|
||||
// Double-check that the new SiteInstance is associated with the right
|
||||
// BrowserContext.
|
||||
@ -57,12 +57,12 @@ index d7875ac0c044..d369de7e33f1 100644
|
||||
// If |new_instance| is a new SiteInstance for a subframe that requires a
|
||||
// dedicated process, set its process reuse policy so that such subframes are
|
||||
diff --git content/public/browser/content_browser_client.h content/public/browser/content_browser_client.h
|
||||
index 0a347624dcc5..46a2398b567f 100644
|
||||
index 2dc3bf7a8006..034598edfada 100644
|
||||
--- content/public/browser/content_browser_client.h
|
||||
+++ content/public/browser/content_browser_client.h
|
||||
@@ -366,6 +366,13 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
const GURL& current_url,
|
||||
const GURL& new_url);
|
||||
@@ -371,6 +371,13 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
// Returns true if error page should be isolated in its own process.
|
||||
virtual bool ShouldIsolateErrorPage(bool in_main_frame);
|
||||
|
||||
+ // Returns true if two browser contexts should be considered the same. CEF
|
||||
+ // uses this to treat *Impl and *Proxy contexts as the same.
|
||||
|
@ -12,7 +12,7 @@ index 36b54aca866c..06337f3f3086 100644
|
||||
# https://crbug.com/474506.
|
||||
"//clank/java/BUILD.gn",
|
||||
diff --git BUILD.gn BUILD.gn
|
||||
index 1ffcbba9a38d..e8863b981e8d 100644
|
||||
index 9dec8407e62d..f3355fe8fc3e 100644
|
||||
--- BUILD.gn
|
||||
+++ BUILD.gn
|
||||
@@ -192,6 +192,7 @@ group("gn_all") {
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git tools/gritsettings/resource_ids tools/gritsettings/resource_ids
|
||||
index b2846be164ab..1afe8acb59b3 100644
|
||||
index 7e838ac964fc..184708195c52 100644
|
||||
--- tools/gritsettings/resource_ids
|
||||
+++ tools/gritsettings/resource_ids
|
||||
@@ -411,4 +411,11 @@
|
||||
@@ -417,4 +417,11 @@
|
||||
# Please read the header and find the right section above instead.
|
||||
|
||||
# Resource ids starting at 31000 are reserved for projects built on Chromium.
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git ui/base/ime/input_method_win_base.cc ui/base/ime/input_method_win_base.cc
|
||||
index 0e89451afb3b..1a0bdac93c1b 100644
|
||||
index 1040d54fa088..a5e72467610e 100644
|
||||
--- ui/base/ime/input_method_win_base.cc
|
||||
+++ ui/base/ime/input_method_win_base.cc
|
||||
@@ -53,8 +53,9 @@ bool InputMethodWinBase::IsWindowFocused(const TextInputClient* client) const {
|
||||
@@ -66,8 +66,9 @@ bool InputMethodWinBase::IsWindowFocused(const TextInputClient* client) const {
|
||||
// receiving keyboard input as long as it is an active window. This works well
|
||||
// even when the |attached_window_handle| becomes active but has not received
|
||||
// WM_FOCUS yet.
|
||||
|
@ -1,5 +1,5 @@
|
||||
diff --git build/config/compiler/BUILD.gn build/config/compiler/BUILD.gn
|
||||
index bb13f93c0277..52e610d0a28a 100644
|
||||
index e4e0775ff9ee..03d4123187cf 100644
|
||||
--- build/config/compiler/BUILD.gn
|
||||
+++ build/config/compiler/BUILD.gn
|
||||
@@ -153,7 +153,7 @@ declare_args() {
|
||||
@ -60,18 +60,16 @@ index 96f8c0e71472..49c462b37e12 100644
|
||||
|
||||
ScopedStyleContext child_context(gtk_style_context_new());
|
||||
gtk_style_context_set_path(child_context, path);
|
||||
diff --git third_party/unrar/BUILD.gn third_party/unrar/BUILD.gn
|
||||
index 6e2bc75171ee..9275f68d12e3 100644
|
||||
--- third_party/unrar/BUILD.gn
|
||||
+++ third_party/unrar/BUILD.gn
|
||||
@@ -56,6 +56,10 @@ if (safe_browsing_mode == 1) {
|
||||
"src/volume.cpp",
|
||||
]
|
||||
diff --git chrome/browser/ui/libgtkui/native_theme_gtk2.cc chrome/browser/ui/libgtkui/native_theme_gtk2.cc
|
||||
index b24ff4b95f97..49e80717b1d6 100644
|
||||
--- chrome/browser/ui/libgtkui/native_theme_gtk2.cc
|
||||
+++ chrome/browser/ui/libgtkui/native_theme_gtk2.cc
|
||||
@@ -163,6 +163,8 @@ SkColor NativeThemeGtk2::GetSystemColor(ColorId color_id) const {
|
||||
return GetBgColor(GetMenu(), NORMAL);
|
||||
|
||||
+ if (is_posix && !is_mac) {
|
||||
+ sources += [ "src/global.cpp" ]
|
||||
+ }
|
||||
+
|
||||
configs -= [
|
||||
"//build/config/compiler:chromium_code",
|
||||
"//build/config/compiler:no_exceptions",
|
||||
// Label
|
||||
+ case kColorId_ActionableSubmenuVerticalSeparatorColor:
|
||||
+ case kColorId_TouchableMenuItemLabelColor:
|
||||
case kColorId_LabelEnabledColor:
|
||||
return GetTextColor(GetEntry(), NORMAL);
|
||||
case kColorId_LabelDisabledColor:
|
||||
|
@ -1,5 +1,5 @@
|
||||
diff --git ui/gl/init/gl_initializer_mac.cc ui/gl/init/gl_initializer_mac.cc
|
||||
index 30725d1f2a5f..1a0278110d78 100644
|
||||
index f4789ebf3b0e..a7f5b21da372 100644
|
||||
--- ui/gl/init/gl_initializer_mac.cc
|
||||
+++ ui/gl/init/gl_initializer_mac.cc
|
||||
@@ -47,11 +47,8 @@ bool InitializeOneOffForSandbox() {
|
||||
|
@ -34,10 +34,18 @@ index cf30bae0b202..009574ff488b 100644
|
||||
|
||||
#if !defined(OS_NACL)
|
||||
diff --git base/message_loop/message_pump_win.cc base/message_loop/message_pump_win.cc
|
||||
index ca257370fb56..3d9b4cea21ce 100644
|
||||
index 8e6f1f41def2..b07865ebae37 100644
|
||||
--- base/message_loop/message_pump_win.cc
|
||||
+++ base/message_loop/message_pump_win.cc
|
||||
@@ -370,20 +370,28 @@ bool MessagePumpForUI::ProcessMessageHelper(const MSG& msg) {
|
||||
@@ -11,6 +11,7 @@
|
||||
|
||||
#include "base/debug/alias.h"
|
||||
#include "base/memory/ptr_util.h"
|
||||
+#include "base/message_loop/message_loop_current.h"
|
||||
#include "base/metrics/histogram_macros.h"
|
||||
#include "base/strings/stringprintf.h"
|
||||
#include "base/trace_event/trace_event.h"
|
||||
@@ -369,20 +370,28 @@ bool MessagePumpForUI::ProcessMessageHelper(const MSG& msg) {
|
||||
}
|
||||
|
||||
bool MessagePumpForUI::ProcessPumpReplacementMessage() {
|
||||
@ -66,7 +74,7 @@ index ca257370fb56..3d9b4cea21ce 100644
|
||||
+ // We should not process all window messages if we are in the context of an
|
||||
+ // OS modal loop, i.e. in the context of a windows API call like MessageBox.
|
||||
+ // This is to ensure that these messages are peeked out by the OS modal loop.
|
||||
+ if (MessageLoop::current()->os_modal_loop()) {
|
||||
+ if (MessageLoopCurrent::Get()->os_modal_loop()) {
|
||||
+ // We only peek out WM_PAINT and WM_TIMER here for reasons mentioned above.
|
||||
+ have_message = PeekMessage(&msg, NULL, WM_PAINT, WM_PAINT, PM_REMOVE) ||
|
||||
+ PeekMessage(&msg, NULL, WM_TIMER, WM_TIMER, PM_REMOVE);
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git BUILD.gn BUILD.gn
|
||||
index 19e85f99d..ed2da7390 100644
|
||||
index 874a8f7d8..8a11f125c 100644
|
||||
--- BUILD.gn
|
||||
+++ BUILD.gn
|
||||
@@ -242,6 +242,10 @@ jumbo_static_library("pdfium") {
|
||||
@@ -244,6 +244,10 @@ jumbo_static_library("pdfium") {
|
||||
complete_static_lib = true
|
||||
configs -= [ "//build/config/compiler:thin_archive" ]
|
||||
}
|
||||
@ -14,10 +14,10 @@ index 19e85f99d..ed2da7390 100644
|
||||
|
||||
jumbo_static_library("test_support") {
|
||||
diff --git fpdfsdk/fpdf_view.cpp fpdfsdk/fpdf_view.cpp
|
||||
index 0015716d9..afb269a64 100644
|
||||
index 6c4ad6020..bb069b005 100644
|
||||
--- fpdfsdk/fpdf_view.cpp
|
||||
+++ fpdfsdk/fpdf_view.cpp
|
||||
@@ -36,6 +36,7 @@
|
||||
@@ -37,6 +37,7 @@
|
||||
#include "fpdfsdk/cpdfsdk_memoryaccess.h"
|
||||
#include "fpdfsdk/cpdfsdk_pageview.h"
|
||||
#include "fpdfsdk/ipdfsdk_pauseadapter.h"
|
||||
@ -25,7 +25,7 @@ index 0015716d9..afb269a64 100644
|
||||
#include "fxjs/ijs_runtime.h"
|
||||
#include "public/fpdf_formfill.h"
|
||||
#include "third_party/base/ptr_util.h"
|
||||
@@ -192,6 +193,7 @@ FPDF_EXPORT void FPDF_CALLCONV FPDF_DestroyLibrary() {
|
||||
@@ -193,6 +194,7 @@ FPDF_EXPORT void FPDF_CALLCONV FPDF_DestroyLibrary() {
|
||||
|
||||
CPDF_ModuleMgr::Destroy();
|
||||
CFX_GEModule::Destroy();
|
||||
|
@ -1,5 +1,5 @@
|
||||
diff --git content/public/common/common_param_traits_macros.h content/public/common/common_param_traits_macros.h
|
||||
index 3b72878d9462..02ed570accd6 100644
|
||||
index b297eae01757..65b4ac6ded54 100644
|
||||
--- content/public/common/common_param_traits_macros.h
|
||||
+++ content/public/common/common_param_traits_macros.h
|
||||
@@ -185,6 +185,7 @@ IPC_STRUCT_TRAITS_BEGIN(content::WebPreferences)
|
||||
@ -35,10 +35,10 @@ index e4fc39c60fd7..f19fccf47261 100644
|
||||
bool record_whole_document;
|
||||
SavePreviousDocumentResources save_previous_document_resources;
|
||||
diff --git content/renderer/render_view_impl.cc content/renderer/render_view_impl.cc
|
||||
index c0df4120b0d1..679c8974fc95 100644
|
||||
index 2533785a1911..3518aba46aef 100644
|
||||
--- content/renderer/render_view_impl.cc
|
||||
+++ content/renderer/render_view_impl.cc
|
||||
@@ -1198,6 +1198,7 @@ void RenderViewImpl::ApplyWebPreferencesInternal(
|
||||
@@ -1201,6 +1201,7 @@ void RenderViewImpl::ApplyWebPreferencesInternal(
|
||||
blink::WebView* web_view,
|
||||
CompositorDependencies* compositor_deps) {
|
||||
ApplyWebPreferences(prefs, web_view);
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git chrome/browser/ui/BUILD.gn chrome/browser/ui/BUILD.gn
|
||||
index b6f6dbf2c0c5..82672ca1320e 100644
|
||||
index e7da097d25f4..8ca569703b26 100644
|
||||
--- chrome/browser/ui/BUILD.gn
|
||||
+++ chrome/browser/ui/BUILD.gn
|
||||
@@ -891,6 +891,7 @@ split_static_library("ui") {
|
||||
@@ -892,6 +892,7 @@ split_static_library("ui") {
|
||||
"//base:i18n",
|
||||
"//base/allocator:buildflags",
|
||||
"//cc/paint",
|
||||
|
@ -1,5 +1,5 @@
|
||||
diff --git chrome/browser/printing/print_job_worker.cc chrome/browser/printing/print_job_worker.cc
|
||||
index e08f806de054..bb7f75769d4a 100644
|
||||
index 1065e808e621..ca9a0bd14652 100644
|
||||
--- chrome/browser/printing/print_job_worker.cc
|
||||
+++ chrome/browser/printing/print_job_worker.cc
|
||||
@@ -145,6 +145,7 @@ PrintJobWorker::PrintJobWorker(int render_process_id,
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git content/browser/renderer_host/render_widget_host_view_aura.cc content/browser/renderer_host/render_widget_host_view_aura.cc
|
||||
index 01db5dbf533b..b70659867710 100644
|
||||
index 6a0753f3f3b8..f567fee075e4 100644
|
||||
--- content/browser/renderer_host/render_widget_host_view_aura.cc
|
||||
+++ content/browser/renderer_host/render_widget_host_view_aura.cc
|
||||
@@ -741,9 +741,11 @@ void RenderWidgetHostViewAura::UpdateBackgroundColorFromRenderer(
|
||||
@@ -744,9 +744,11 @@ void RenderWidgetHostViewAura::UpdateBackgroundColorFromRenderer(
|
||||
return;
|
||||
background_color_ = color;
|
||||
|
||||
@ -17,7 +17,7 @@ index 01db5dbf533b..b70659867710 100644
|
||||
}
|
||||
|
||||
void RenderWidgetHostViewAura::WindowTitleChanged() {
|
||||
@@ -1892,6 +1894,15 @@ void RenderWidgetHostViewAura::CreateAuraWindow(aura::client::WindowType type) {
|
||||
@@ -1935,6 +1937,15 @@ void RenderWidgetHostViewAura::CreateAuraWindow(aura::client::WindowType type) {
|
||||
if (frame_sink_id_.is_valid())
|
||||
window_->SetEmbedFrameSinkId(frame_sink_id_);
|
||||
|
||||
@ -30,6 +30,6 @@ index 01db5dbf533b..b70659867710 100644
|
||||
+ ignore_result(rvh->GetWebkitPreferences());
|
||||
+ }
|
||||
+
|
||||
if (!features::IsMusEnabled())
|
||||
if (!features::IsMashEnabled())
|
||||
return;
|
||||
|
||||
|
@ -28,7 +28,7 @@ index 596cfaa01092..f341bca174d5 100644
|
||||
origin, std::move(request)));
|
||||
}
|
||||
diff --git content/browser/blob_storage/chrome_blob_storage_context.cc content/browser/blob_storage/chrome_blob_storage_context.cc
|
||||
index 89f917826da1..d102ad69f084 100644
|
||||
index 17347dbfd102..193584187bd1 100644
|
||||
--- content/browser/blob_storage/chrome_blob_storage_context.cc
|
||||
+++ content/browser/blob_storage/chrome_blob_storage_context.cc
|
||||
@@ -87,6 +87,11 @@ class BlobHandleImpl : public BlobHandle {
|
||||
@ -111,7 +111,7 @@ index af7cced24feb..6a228c204912 100644
|
||||
CHECK(GetUserData(kMojoWasInitialized))
|
||||
<< "Attempting to destroy a BrowserContext that never called "
|
||||
diff --git content/browser/devtools/protocol/network_handler.cc content/browser/devtools/protocol/network_handler.cc
|
||||
index 4fa1766cf313..7f539e1e83a3 100644
|
||||
index 65963b26bb4b..df4ea08a9588 100644
|
||||
--- content/browser/devtools/protocol/network_handler.cc
|
||||
+++ content/browser/devtools/protocol/network_handler.cc
|
||||
@@ -889,8 +889,7 @@ class BackgroundSyncRestorer {
|
||||
@ -161,10 +161,10 @@ index ec9ab86d0ca6..0fe5219f1e84 100644
|
||||
base::WeakPtrFactory<ServiceWorkerHandler> weak_factory_;
|
||||
|
||||
diff --git content/browser/download/download_manager_impl.cc content/browser/download/download_manager_impl.cc
|
||||
index 591f60dc8f96..ad90a2648e23 100644
|
||||
index eb14d255d48b..ecea6e42e595 100644
|
||||
--- content/browser/download/download_manager_impl.cc
|
||||
+++ content/browser/download/download_manager_impl.cc
|
||||
@@ -85,9 +85,9 @@
|
||||
@@ -84,9 +84,9 @@
|
||||
namespace content {
|
||||
namespace {
|
||||
|
||||
@ -177,7 +177,7 @@ index 591f60dc8f96..ad90a2648e23 100644
|
||||
DCHECK_CURRENTLY_ON(BrowserThread::UI);
|
||||
|
||||
SiteInstance* site_instance = nullptr;
|
||||
@@ -97,8 +97,7 @@ StoragePartitionImpl* GetStoragePartition(BrowserContext* context,
|
||||
@@ -96,8 +96,7 @@ StoragePartitionImpl* GetStoragePartition(BrowserContext* context,
|
||||
if (render_frame_host_)
|
||||
site_instance = render_frame_host_->GetSiteInstance();
|
||||
}
|
||||
@ -187,16 +187,16 @@ index 591f60dc8f96..ad90a2648e23 100644
|
||||
}
|
||||
|
||||
bool CanRequestURLFromRenderer(int render_process_id, GURL url) {
|
||||
@@ -251,7 +250,7 @@ base::FilePath GetTemporaryDownloadDirectory() {
|
||||
@@ -250,7 +249,7 @@ base::FilePath GetTemporaryDownloadDirectory() {
|
||||
#endif
|
||||
|
||||
scoped_refptr<download::DownloadURLLoaderFactoryGetter>
|
||||
-CreateDownloadURLLoaderFactoryGetter(StoragePartitionImpl* storage_partition,
|
||||
+CreateDownloadURLLoaderFactoryGetter(StoragePartition* storage_partition,
|
||||
RenderFrameHost* rfh,
|
||||
bool has_suggested_filename) {
|
||||
bool is_download) {
|
||||
network::mojom::URLLoaderFactoryPtrInfo proxy_factory_ptr_info;
|
||||
@@ -268,7 +267,7 @@ CreateDownloadURLLoaderFactoryGetter(StoragePartitionImpl* storage_partition,
|
||||
@@ -267,7 +266,7 @@ CreateDownloadURLLoaderFactoryGetter(StoragePartitionImpl* storage_partition,
|
||||
}
|
||||
}
|
||||
return base::MakeRefCounted<NetworkDownloadURLLoaderFactoryGetter>(
|
||||
@ -205,7 +205,7 @@ index 591f60dc8f96..ad90a2648e23 100644
|
||||
std::move(proxy_factory_ptr_info), std::move(proxy_factory_request));
|
||||
}
|
||||
|
||||
@@ -598,8 +597,8 @@ void DownloadManagerImpl::ResumeInterruptedDownload(
|
||||
@@ -597,8 +596,8 @@ void DownloadManagerImpl::ResumeInterruptedDownload(
|
||||
std::unique_ptr<download::DownloadUrlParameters> params,
|
||||
uint32_t id,
|
||||
const GURL& site_url) {
|
||||
@ -216,7 +216,7 @@ index 591f60dc8f96..ad90a2648e23 100644
|
||||
params->set_url_request_context_getter(
|
||||
storage_partition->GetURLRequestContext());
|
||||
BeginDownloadInternal(std::move(params), nullptr /* blob_data_handle */,
|
||||
@@ -789,7 +788,7 @@ void DownloadManagerImpl::DownloadUrl(
|
||||
@@ -787,7 +786,7 @@ void DownloadManagerImpl::DownloadUrl(
|
||||
download::RecordDownloadCountWithSource(
|
||||
download::DownloadCountTypes::DOWNLOAD_TRIGGERED_COUNT,
|
||||
params->download_source());
|
||||
@ -225,7 +225,7 @@ index 591f60dc8f96..ad90a2648e23 100644
|
||||
GetStoragePartition(browser_context_, params->render_process_host_id(),
|
||||
params->render_frame_host_routing_id());
|
||||
BeginDownloadInternal(std::move(params), std::move(blob_data_handle),
|
||||
@@ -1008,7 +1007,7 @@ void DownloadManagerImpl::InterceptNavigationOnChecksComplete(
|
||||
@@ -1005,7 +1004,7 @@ void DownloadManagerImpl::InterceptNavigationOnChecksComplete(
|
||||
tab_referrer_url = entry->GetReferrer().url;
|
||||
}
|
||||
}
|
||||
@ -234,7 +234,7 @@ index 591f60dc8f96..ad90a2648e23 100644
|
||||
GetStoragePartition(browser_context_, render_process_id, render_frame_id);
|
||||
in_progress_manager_->InterceptDownloadFromNavigation(
|
||||
std::move(resource_request), render_process_id, render_frame_id, site_url,
|
||||
@@ -1024,7 +1023,7 @@ void DownloadManagerImpl::BeginDownloadInternal(
|
||||
@@ -1020,7 +1019,7 @@ void DownloadManagerImpl::BeginDownloadInternal(
|
||||
std::unique_ptr<storage::BlobDataHandle> blob_data_handle,
|
||||
scoped_refptr<network::SharedURLLoaderFactory> blob_url_loader_factory,
|
||||
uint32_t id,
|
||||
@ -244,7 +244,7 @@ index 591f60dc8f96..ad90a2648e23 100644
|
||||
if (params->render_process_host_id() >= 0 &&
|
||||
!CanRequestURLFromRenderer(params->render_process_host_id(),
|
||||
diff --git content/browser/download/download_manager_impl.h content/browser/download/download_manager_impl.h
|
||||
index f79ea7165dfd..35b545213c31 100644
|
||||
index b62b8ae7eb8a..3f4d01b03ebb 100644
|
||||
--- content/browser/download/download_manager_impl.h
|
||||
+++ content/browser/download/download_manager_impl.h
|
||||
@@ -42,7 +42,7 @@ class DownloadRequestHandleInterface;
|
||||
@ -256,7 +256,7 @@ index f79ea7165dfd..35b545213c31 100644
|
||||
|
||||
class CONTENT_EXPORT DownloadManagerImpl
|
||||
: public DownloadManager,
|
||||
@@ -248,7 +248,7 @@ class CONTENT_EXPORT DownloadManagerImpl
|
||||
@@ -247,7 +247,7 @@ class CONTENT_EXPORT DownloadManagerImpl
|
||||
std::unique_ptr<storage::BlobDataHandle> blob_data_handle,
|
||||
scoped_refptr<network::SharedURLLoaderFactory> blob_url_loader_factory,
|
||||
uint32_t id,
|
||||
@ -266,10 +266,10 @@ index f79ea7165dfd..35b545213c31 100644
|
||||
void InterceptNavigationOnChecksComplete(
|
||||
ResourceRequestInfo::WebContentsGetter web_contents_getter,
|
||||
diff --git content/browser/loader/navigation_url_loader_network_service.cc content/browser/loader/navigation_url_loader_network_service.cc
|
||||
index 955cb24e64d1..1c2abdf645dc 100644
|
||||
index 3cc782fcc7dd..653706abe893 100644
|
||||
--- content/browser/loader/navigation_url_loader_network_service.cc
|
||||
+++ content/browser/loader/navigation_url_loader_network_service.cc
|
||||
@@ -892,7 +892,7 @@ class NavigationURLLoaderNetworkService::URLLoaderRequestController
|
||||
@@ -884,7 +884,7 @@ class NavigationURLLoaderNetworkService::URLLoaderRequestController
|
||||
// path does as well for navigations.
|
||||
bool has_plugin = PluginService::GetInstance()->GetPluginInfo(
|
||||
-1 /* render_process_id */, -1 /* render_frame_id */, resource_context_,
|
||||
@ -278,7 +278,7 @@ index 955cb24e64d1..1c2abdf645dc 100644
|
||||
false /* allow_wildcard */, &stale, &plugin, nullptr);
|
||||
|
||||
if (stale) {
|
||||
@@ -1259,7 +1259,7 @@ NavigationURLLoaderNetworkService::NavigationURLLoaderNetworkService(
|
||||
@@ -1241,7 +1241,7 @@ NavigationURLLoaderNetworkService::NavigationURLLoaderNetworkService(
|
||||
}
|
||||
}
|
||||
|
||||
@ -287,16 +287,16 @@ index 955cb24e64d1..1c2abdf645dc 100644
|
||||
non_network_url_loader_factories_[url::kFileScheme] =
|
||||
std::make_unique<FileURLLoaderFactory>(
|
||||
partition->browser_context()->GetPath(),
|
||||
@@ -1273,7 +1273,8 @@ NavigationURLLoaderNetworkService::NavigationURLLoaderNetworkService(
|
||||
@@ -1255,7 +1255,8 @@ NavigationURLLoaderNetworkService::NavigationURLLoaderNetworkService(
|
||||
DCHECK(!request_controller_);
|
||||
request_controller_ = std::make_unique<URLLoaderRequestController>(
|
||||
std::move(initial_interceptors), std::move(new_request), resource_context,
|
||||
- partition->url_loader_factory_getter(), request_info->common_params.url,
|
||||
+ base::WrapRefCounted(partition->url_loader_factory_getter()),
|
||||
+ request_info->common_params.url,
|
||||
request_info->begin_params->initiator_origin,
|
||||
request_info->common_params.suggested_filename,
|
||||
std::move(proxied_factory_request), std::move(proxied_factory_info),
|
||||
std::move(known_schemes), weak_factory_.GetWeakPtr());
|
||||
BrowserThread::PostTask(
|
||||
diff --git content/browser/payments/payment_app_installer.cc content/browser/payments/payment_app_installer.cc
|
||||
index 6a6e31bdb070..dce0433e1775 100644
|
||||
--- content/browser/payments/payment_app_installer.cc
|
||||
@ -344,10 +344,10 @@ index dd0af046aec4..f5ad5b37c1f3 100644
|
||||
partition->GetPaymentAppContext();
|
||||
|
||||
diff --git content/browser/renderer_host/render_process_host_impl.cc content/browser/renderer_host/render_process_host_impl.cc
|
||||
index 20994fc0a49c..f2f79f299d20 100644
|
||||
index 8a5c3e12a938..5c87e5cfffbe 100644
|
||||
--- content/browser/renderer_host/render_process_host_impl.cc
|
||||
+++ content/browser/renderer_host/render_process_host_impl.cc
|
||||
@@ -732,11 +732,10 @@ class DefaultSubframeProcessHostHolder : public base::SupportsUserData::Data,
|
||||
@@ -733,11 +733,10 @@ class DefaultSubframeProcessHostHolder : public base::SupportsUserData::Data,
|
||||
// Gets the correct render process to use for this SiteInstance.
|
||||
RenderProcessHost* GetProcessHost(SiteInstance* site_instance,
|
||||
bool is_for_guests_only) {
|
||||
@ -363,7 +363,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
|
||||
// Is this the default storage partition? If it isn't, then just give it its
|
||||
// own non-shared process.
|
||||
@@ -1349,7 +1348,7 @@ int RenderProcessHost::GetCurrentRenderProcessCountForTesting() {
|
||||
@@ -1344,7 +1343,7 @@ int RenderProcessHost::GetCurrentRenderProcessCountForTesting() {
|
||||
// static
|
||||
RenderProcessHost* RenderProcessHostImpl::CreateRenderProcessHost(
|
||||
BrowserContext* browser_context,
|
||||
@ -372,7 +372,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
SiteInstance* site_instance,
|
||||
bool is_for_guests_only) {
|
||||
if (g_render_process_host_factory_) {
|
||||
@@ -1358,8 +1357,8 @@ RenderProcessHost* RenderProcessHostImpl::CreateRenderProcessHost(
|
||||
@@ -1353,8 +1352,8 @@ RenderProcessHost* RenderProcessHostImpl::CreateRenderProcessHost(
|
||||
}
|
||||
|
||||
if (!storage_partition_impl) {
|
||||
@ -383,7 +383,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
}
|
||||
// If we've made a StoragePartition for guests (e.g., for the <webview> tag),
|
||||
// stash the Site URL on it. This way, when we start a service worker inside
|
||||
@@ -1384,7 +1383,7 @@ const unsigned int RenderProcessHostImpl::kMaxFrameDepthForPriority =
|
||||
@@ -1379,7 +1378,7 @@ const unsigned int RenderProcessHostImpl::kMaxFrameDepthForPriority =
|
||||
|
||||
RenderProcessHostImpl::RenderProcessHostImpl(
|
||||
BrowserContext* browser_context,
|
||||
@ -392,7 +392,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
bool is_for_guests_only)
|
||||
: fast_shutdown_started_(false),
|
||||
deleting_soon_(false),
|
||||
@@ -1417,7 +1416,8 @@ RenderProcessHostImpl::RenderProcessHostImpl(
|
||||
@@ -1412,7 +1411,8 @@ RenderProcessHostImpl::RenderProcessHostImpl(
|
||||
indexed_db_factory_(new IndexedDBDispatcherHost(
|
||||
id_,
|
||||
storage_partition_impl_->GetURLRequestContext(),
|
||||
@ -402,7 +402,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
ChromeBlobStorageContext::GetFor(browser_context_))),
|
||||
channel_connected_(false),
|
||||
sent_render_process_ready_(false),
|
||||
@@ -1452,7 +1452,8 @@ RenderProcessHostImpl::RenderProcessHostImpl(
|
||||
@@ -1447,7 +1447,8 @@ RenderProcessHostImpl::RenderProcessHostImpl(
|
||||
}
|
||||
|
||||
push_messaging_manager_.reset(new PushMessagingManager(
|
||||
@ -412,7 +412,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
|
||||
AddObserver(indexed_db_factory_.get());
|
||||
#if defined(OS_MACOSX)
|
||||
@@ -1780,6 +1781,20 @@ void RenderProcessHostImpl::ResetChannelProxy() {
|
||||
@@ -1775,6 +1776,20 @@ void RenderProcessHostImpl::ResetChannelProxy() {
|
||||
|
||||
void RenderProcessHostImpl::CreateMessageFilters() {
|
||||
DCHECK_CURRENTLY_ON(BrowserThread::UI);
|
||||
@ -433,7 +433,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
AddFilter(new ResourceSchedulerFilter(GetID()));
|
||||
MediaInternals* media_internals = MediaInternals::GetInstance();
|
||||
// Add BrowserPluginMessageFilter to ensure it gets the first stab at messages
|
||||
@@ -1793,8 +1808,8 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
||||
@@ -1788,8 +1803,8 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
||||
new RenderMessageFilter(
|
||||
GetID(), GetBrowserContext(), request_context.get(),
|
||||
widget_helper_.get(), media_internals,
|
||||
@ -444,7 +444,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
AddFilter(render_message_filter.get());
|
||||
|
||||
render_frame_message_filter_ = new RenderFrameMessageFilter(
|
||||
@@ -1821,10 +1836,10 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
||||
@@ -1816,10 +1831,10 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
||||
ChromeBlobStorageContext::GetFor(browser_context);
|
||||
|
||||
resource_message_filter_ = new ResourceMessageFilter(
|
||||
@ -457,7 +457,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
storage_partition_impl_->GetPrefetchURLLoaderService(),
|
||||
std::move(get_contexts_callback),
|
||||
BrowserThread::GetTaskRunnerForThread(BrowserThread::IO));
|
||||
@@ -1833,8 +1848,7 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
||||
@@ -1828,8 +1843,7 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
||||
|
||||
AddFilter(
|
||||
new MidiHost(GetID(), BrowserMainLoop::GetInstance()->midi_service()));
|
||||
@ -467,7 +467,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
|
||||
#if BUILDFLAG(ENABLE_WEBRTC)
|
||||
peer_connection_tracker_host_ = new PeerConnectionTrackerHost(GetID());
|
||||
@@ -1854,8 +1868,7 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
||||
@@ -1849,8 +1863,7 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
||||
|
||||
scoped_refptr<ServiceWorkerDispatcherHost> service_worker_filter =
|
||||
new ServiceWorkerDispatcherHost(GetID(), resource_context);
|
||||
@ -477,7 +477,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
AddFilter(service_worker_filter.get());
|
||||
|
||||
#if BUILDFLAG(ENABLE_WEBRTC)
|
||||
@@ -1867,11 +1880,8 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
||||
@@ -1862,11 +1875,8 @@ void RenderProcessHostImpl::CreateMessageFilters() {
|
||||
AddFilter(new TraceMessageFilter(GetID()));
|
||||
AddFilter(new ResolveProxyMsgHelper(request_context.get()));
|
||||
|
||||
@ -490,7 +490,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
resource_context, service_worker_context, browser_context);
|
||||
AddFilter(notification_message_filter_.get());
|
||||
}
|
||||
@@ -1885,7 +1895,8 @@ void RenderProcessHostImpl::BindCacheStorage(
|
||||
@@ -1880,7 +1890,8 @@ void RenderProcessHostImpl::BindCacheStorage(
|
||||
cache_storage_dispatcher_host_ =
|
||||
base::MakeRefCounted<CacheStorageDispatcherHost>();
|
||||
cache_storage_dispatcher_host_->Init(
|
||||
@ -500,7 +500,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
}
|
||||
// Send the binding to IO thread, because Cache Storage handles Mojo IPC on IO
|
||||
// thread entirely.
|
||||
@@ -2018,7 +2029,8 @@ void RenderProcessHostImpl::RegisterMojoInterfaces() {
|
||||
@@ -2013,7 +2024,8 @@ void RenderProcessHostImpl::RegisterMojoInterfaces() {
|
||||
|
||||
registry->AddInterface(base::BindRepeating(
|
||||
&AppCacheDispatcherHost::Create,
|
||||
@ -511,7 +511,7 @@ index 20994fc0a49c..f2f79f299d20 100644
|
||||
|
||||
AddUIThreadInterface(registry.get(), base::Bind(&FieldTrialRecorder::Create));
|
||||
diff --git content/browser/renderer_host/render_process_host_impl.h content/browser/renderer_host/render_process_host_impl.h
|
||||
index e709fd121d7c..b67e0d854e07 100644
|
||||
index 403fcc676b0f..886f62977604 100644
|
||||
--- content/browser/renderer_host/render_process_host_impl.h
|
||||
+++ content/browser/renderer_host/render_process_host_impl.h
|
||||
@@ -88,7 +88,6 @@ class ResourceMessageFilter;
|
||||
@ -619,10 +619,10 @@ index 597e99215428..29c6ba3049b7 100644
|
||||
base::BindOnce(&SharedWorkerServiceImpl::StartWorker,
|
||||
weak_factory_.GetWeakPtr(), std::move(instance),
|
||||
diff --git content/browser/storage_partition_impl.h content/browser/storage_partition_impl.h
|
||||
index 2cf35167ebaa..646392017593 100644
|
||||
index 07992017538c..94d6dcd425a1 100644
|
||||
--- content/browser/storage_partition_impl.h
|
||||
+++ content/browser/storage_partition_impl.h
|
||||
@@ -96,7 +96,7 @@ class CONTENT_EXPORT StoragePartitionImpl
|
||||
@@ -95,7 +95,7 @@ class CONTENT_EXPORT StoragePartitionImpl
|
||||
storage::FileSystemContext* GetFileSystemContext() override;
|
||||
storage::DatabaseTracker* GetDatabaseTracker() override;
|
||||
DOMStorageContextWrapper* GetDOMStorageContext() override;
|
||||
@ -631,7 +631,7 @@ index 2cf35167ebaa..646392017593 100644
|
||||
IndexedDBContextImpl* GetIndexedDBContext() override;
|
||||
CacheStorageContextImpl* GetCacheStorageContext() override;
|
||||
ServiceWorkerContextWrapper* GetServiceWorkerContext() override;
|
||||
@@ -135,14 +135,14 @@ class CONTENT_EXPORT StoragePartitionImpl
|
||||
@@ -134,14 +134,14 @@ class CONTENT_EXPORT StoragePartitionImpl
|
||||
void FlushNetworkInterfaceForTesting() override;
|
||||
void WaitForDeletionTasksForTesting() override;
|
||||
|
||||
@ -654,7 +654,7 @@ index 2cf35167ebaa..646392017593 100644
|
||||
|
||||
// mojom::StoragePartitionService interface.
|
||||
void OpenLocalStorage(const url::Origin& origin,
|
||||
@@ -151,18 +151,18 @@ class CONTENT_EXPORT StoragePartitionImpl
|
||||
@@ -150,18 +150,18 @@ class CONTENT_EXPORT StoragePartitionImpl
|
||||
const std::string& namespace_id,
|
||||
mojom::SessionStorageNamespaceRequest request) override;
|
||||
|
||||
@ -677,7 +677,7 @@ index 2cf35167ebaa..646392017593 100644
|
||||
|
||||
auto& bindings_for_testing() { return bindings_; }
|
||||
|
||||
@@ -173,10 +173,11 @@ class CONTENT_EXPORT StoragePartitionImpl
|
||||
@@ -172,10 +172,11 @@ class CONTENT_EXPORT StoragePartitionImpl
|
||||
// one must use the "chrome-guest://blahblah" site URL to ensure that the
|
||||
// service worker stays in this StoragePartition. This is an empty GURL if
|
||||
// this StoragePartition is not for guests.
|
||||
@ -779,7 +779,7 @@ index dffff04f6f86..29a0653b8fa5 100644
|
||||
std::map<std::string, service_manager::EmbeddedServiceInfo>;
|
||||
|
||||
diff --git content/public/browser/storage_partition.h content/public/browser/storage_partition.h
|
||||
index 5a3984eb6efb..fa57b523eaf2 100644
|
||||
index db26f7cfcef9..3a46d95fc6f3 100644
|
||||
--- content/public/browser/storage_partition.h
|
||||
+++ content/public/browser/storage_partition.h
|
||||
@@ -14,6 +14,7 @@
|
||||
@ -787,8 +787,8 @@ index 5a3984eb6efb..fa57b523eaf2 100644
|
||||
#include "base/time/time.h"
|
||||
#include "content/common/content_export.h"
|
||||
+#include "mojo/public/cpp/bindings/binding_set.h"
|
||||
#include "net/cookies/cookie_store.h"
|
||||
#include "services/network/public/cpp/shared_url_loader_factory.h"
|
||||
#include "services/network/public/mojom/cookie_manager.mojom.h"
|
||||
|
||||
@@ -59,12 +60,27 @@ class ServiceWorkerContext;
|
||||
class SharedWorkerService;
|
||||
@ -818,7 +818,7 @@ index 5a3984eb6efb..fa57b523eaf2 100644
|
||||
// Defines what persistent state a child process can access.
|
||||
//
|
||||
// The StoragePartition defines the view each child process has of the
|
||||
@@ -97,6 +113,7 @@ class CONTENT_EXPORT StoragePartition {
|
||||
@@ -102,6 +118,7 @@ class CONTENT_EXPORT StoragePartition {
|
||||
virtual storage::FileSystemContext* GetFileSystemContext() = 0;
|
||||
virtual storage::DatabaseTracker* GetDatabaseTracker() = 0;
|
||||
virtual DOMStorageContext* GetDOMStorageContext() = 0;
|
||||
@ -826,7 +826,7 @@ index 5a3984eb6efb..fa57b523eaf2 100644
|
||||
virtual IndexedDBContext* GetIndexedDBContext() = 0;
|
||||
virtual ServiceWorkerContext* GetServiceWorkerContext() = 0;
|
||||
virtual SharedWorkerService* GetSharedWorkerService() = 0;
|
||||
@@ -213,6 +230,26 @@ class CONTENT_EXPORT StoragePartition {
|
||||
@@ -223,6 +240,26 @@ class CONTENT_EXPORT StoragePartition {
|
||||
// Wait until all deletions tasks are finished. For test use only.
|
||||
virtual void WaitForDeletionTasksForTesting() = 0;
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
diff --git ui/base/models/menu_model.h ui/base/models/menu_model.h
|
||||
index 605dc1b17e43..24c385a53289 100644
|
||||
index a19e6e937f87..817b7eada253 100644
|
||||
--- ui/base/models/menu_model.h
|
||||
+++ ui/base/models/menu_model.h
|
||||
@@ -15,6 +15,7 @@
|
||||
@ -10,7 +10,7 @@ index 605dc1b17e43..24c385a53289 100644
|
||||
struct VectorIcon;
|
||||
}
|
||||
|
||||
@@ -120,6 +121,27 @@ class UI_BASE_EXPORT MenuModel {
|
||||
@@ -121,6 +122,27 @@ class UI_BASE_EXPORT MenuModel {
|
||||
// |event_flags| is a bit mask of ui::EventFlags.
|
||||
virtual void ActivatedAt(int index, int event_flags);
|
||||
|
||||
@ -154,7 +154,7 @@ index b2323dae3d9e..4b9546ca1a61 100644
|
||||
ImageView* image() const { return image_; }
|
||||
Label* label() const;
|
||||
diff --git ui/views/controls/button/menu_button.cc ui/views/controls/button/menu_button.cc
|
||||
index b6996aab742c..ef7ac692a21d 100644
|
||||
index 4b4c769910e3..d5ac9e531200 100644
|
||||
--- ui/views/controls/button/menu_button.cc
|
||||
+++ ui/views/controls/button/menu_button.cc
|
||||
@@ -178,7 +178,7 @@ bool MenuButton::IsTriggerableEventType(const ui::Event& event) {
|
||||
@ -295,10 +295,10 @@ index 1d35afeda78f..333f9c0f778d 100644
|
||||
std::unique_ptr<SelectionController> selection_controller_;
|
||||
|
||||
diff --git ui/views/controls/menu/menu_controller.cc ui/views/controls/menu/menu_controller.cc
|
||||
index c1ba25788dd6..8ed6b781e06a 100644
|
||||
index 5ee38baa45f9..fa0f8a090fa7 100644
|
||||
--- ui/views/controls/menu/menu_controller.cc
|
||||
+++ ui/views/controls/menu/menu_controller.cc
|
||||
@@ -2315,8 +2315,13 @@ MenuItemView* MenuController::FindNextSelectableMenuItem(
|
||||
@@ -2408,8 +2408,13 @@ MenuItemView* MenuController::FindNextSelectableMenuItem(
|
||||
|
||||
void MenuController::OpenSubmenuChangeSelectionIfCan() {
|
||||
MenuItemView* item = pending_state_.item;
|
||||
@ -313,7 +313,7 @@ index c1ba25788dd6..8ed6b781e06a 100644
|
||||
MenuItemView* to_select = NULL;
|
||||
if (item->GetSubmenu()->GetMenuItemCount() > 0)
|
||||
to_select = FindInitialSelectableMenuItem(item, INCREMENT_SELECTION_DOWN);
|
||||
@@ -2331,8 +2336,10 @@ void MenuController::OpenSubmenuChangeSelectionIfCan() {
|
||||
@@ -2424,8 +2429,10 @@ void MenuController::OpenSubmenuChangeSelectionIfCan() {
|
||||
void MenuController::CloseSubmenu() {
|
||||
MenuItemView* item = state_.item;
|
||||
DCHECK(item);
|
||||
@ -373,10 +373,10 @@ index 4dea63f9f286..ef50b710c5af 100644
|
||||
virtual int GetMaxWidthForMenu(MenuItemView* menu);
|
||||
|
||||
diff --git ui/views/controls/menu/menu_item_view.cc ui/views/controls/menu/menu_item_view.cc
|
||||
index 5c21e2213bfa..f5a35ea10ed9 100644
|
||||
index 4eb50c922aa4..52a3b414a017 100644
|
||||
--- ui/views/controls/menu/menu_item_view.cc
|
||||
+++ ui/views/controls/menu/menu_item_view.cc
|
||||
@@ -842,7 +842,12 @@ void MenuItemView::PaintButton(gfx::Canvas* canvas, PaintButtonMode mode) {
|
||||
@@ -896,7 +896,12 @@ void MenuItemView::PaintButton(gfx::Canvas* canvas, PaintButtonMode mode) {
|
||||
// only need the background when we want it to look different, as when we're
|
||||
// selected.
|
||||
ui::NativeTheme* native_theme = GetNativeTheme();
|
||||
@ -388,9 +388,9 @@ index 5c21e2213bfa..f5a35ea10ed9 100644
|
||||
+ canvas->DrawColor(override_color);
|
||||
+ } else if (render_selection) {
|
||||
gfx::Rect item_bounds(0, 0, width(), height());
|
||||
AdjustBoundsForRTLUI(&item_bounds);
|
||||
|
||||
@@ -952,6 +957,13 @@ void MenuItemView::PaintMinorIconAndText(gfx::Canvas* canvas, SkColor color) {
|
||||
if (type_ == ACTIONABLE_SUBMENU) {
|
||||
if (submenu_area_of_actionable_submenu_selected_) {
|
||||
@@ -1015,6 +1020,13 @@ void MenuItemView::PaintMinorIconAndText(gfx::Canvas* canvas, SkColor color) {
|
||||
SkColor MenuItemView::GetTextColor(bool minor,
|
||||
bool render_selection,
|
||||
bool emphasized) const {
|
||||
@ -405,10 +405,10 @@ index 5c21e2213bfa..f5a35ea10ed9 100644
|
||||
minor ? ui::NativeTheme::kColorId_MenuItemMinorTextColor
|
||||
: ui::NativeTheme::kColorId_EnabledMenuItemForegroundColor;
|
||||
diff --git ui/views/controls/menu/menu_model_adapter.cc ui/views/controls/menu/menu_model_adapter.cc
|
||||
index e1a2339bddbf..1f209c328a94 100644
|
||||
index e9cfe1c466c6..bc6797a8205d 100644
|
||||
--- ui/views/controls/menu/menu_model_adapter.cc
|
||||
+++ ui/views/controls/menu/menu_model_adapter.cc
|
||||
@@ -228,6 +228,77 @@ void MenuModelAdapter::SelectionChanged(MenuItemView* menu) {
|
||||
@@ -231,6 +231,77 @@ void MenuModelAdapter::SelectionChanged(MenuItemView* menu) {
|
||||
NOTREACHED();
|
||||
}
|
||||
|
||||
@ -512,7 +512,7 @@ index 0ac493c3c6a0..741769e90eb0 100644
|
||||
void WillHideMenu(MenuItemView* menu) override;
|
||||
void OnMenuClosed(MenuItemView* menu) override;
|
||||
diff --git ui/views/controls/menu/menu_scroll_view_container.cc ui/views/controls/menu/menu_scroll_view_container.cc
|
||||
index e35e0509480f..7594bb47e5d0 100644
|
||||
index abcc8e28e7e5..574d46d03505 100644
|
||||
--- ui/views/controls/menu/menu_scroll_view_container.cc
|
||||
+++ ui/views/controls/menu/menu_scroll_view_container.cc
|
||||
@@ -183,6 +183,11 @@ MenuScrollViewContainer::MenuScrollViewContainer(SubmenuView* content_view)
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git content/browser/renderer_host/render_widget_host_view_base.cc content/browser/renderer_host/render_widget_host_view_base.cc
|
||||
index 909cbf39b2e0..f91f652a9d73 100644
|
||||
index 8dfffd595a2a..757e7ef538f7 100644
|
||||
--- content/browser/renderer_host/render_widget_host_view_base.cc
|
||||
+++ content/browser/renderer_host/render_widget_host_view_base.cc
|
||||
@@ -376,6 +376,14 @@ float RenderWidgetHostViewBase::GetDeviceScaleFactor() const {
|
||||
@@ -395,6 +395,14 @@ float RenderWidgetHostViewBase::GetDeviceScaleFactor() const {
|
||||
return screen_info.device_scale_factor;
|
||||
}
|
||||
|
||||
@ -18,10 +18,10 @@ index 909cbf39b2e0..f91f652a9d73 100644
|
||||
return renderer_frame_number_;
|
||||
}
|
||||
diff --git content/browser/renderer_host/render_widget_host_view_base.h content/browser/renderer_host/render_widget_host_view_base.h
|
||||
index 04b50a9fcefb..c0b509f4881f 100644
|
||||
index 5e762d94c6ba..57c51ab01a5b 100644
|
||||
--- content/browser/renderer_host/render_widget_host_view_base.h
|
||||
+++ content/browser/renderer_host/render_widget_host_view_base.h
|
||||
@@ -81,6 +81,7 @@ class CursorManager;
|
||||
@@ -83,6 +83,7 @@ class CursorManager;
|
||||
class MouseWheelPhaseHandler;
|
||||
class RenderWidgetHostImpl;
|
||||
class RenderWidgetHostViewBaseObserver;
|
||||
@ -29,7 +29,7 @@ index 04b50a9fcefb..c0b509f4881f 100644
|
||||
class SyntheticGestureTarget;
|
||||
class TextInputManager;
|
||||
class TouchSelectionControllerClientManager;
|
||||
@@ -102,6 +103,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
@@ -104,6 +105,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
float current_device_scale_factor() const {
|
||||
return current_device_scale_factor_;
|
||||
}
|
||||
@ -39,7 +39,7 @@ index 04b50a9fcefb..c0b509f4881f 100644
|
||||
|
||||
// Returns the focused RenderWidgetHost inside this |view|'s RWH.
|
||||
RenderWidgetHostImpl* GetFocusedWidget() const;
|
||||
@@ -133,6 +137,8 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
@@ -136,6 +140,8 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
void DisableAutoResize(const gfx::Size& new_size) override;
|
||||
bool IsScrollOffsetAtTop() const override;
|
||||
float GetDeviceScaleFactor() const final;
|
||||
@ -48,7 +48,7 @@ index 04b50a9fcefb..c0b509f4881f 100644
|
||||
TouchSelectionControllerClientManager*
|
||||
GetTouchSelectionControllerClientManager() override;
|
||||
|
||||
@@ -426,6 +432,12 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
@@ -446,6 +452,12 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
// helps to position the full screen widget on the correct monitor.
|
||||
virtual void InitAsFullscreen(RenderWidgetHostView* reference_host_view) = 0;
|
||||
|
||||
@ -61,9 +61,9 @@ index 04b50a9fcefb..c0b509f4881f 100644
|
||||
// Sets the cursor for this view to the one associated with the specified
|
||||
// cursor_type.
|
||||
virtual void UpdateCursor(const WebCursor& cursor) = 0;
|
||||
@@ -600,6 +612,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
@@ -622,6 +634,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
|
||||
bool is_currently_scrolling_viewport_;
|
||||
bool use_viz_hit_test_ = false;
|
||||
|
||||
+ // True if the widget has a external parent view/window outside of the
|
||||
+ // Chromium-controlled view/window hierarchy.
|
||||
@ -73,11 +73,11 @@ index 04b50a9fcefb..c0b509f4881f 100644
|
||||
#if defined(USE_AURA)
|
||||
void OnDidScheduleEmbed(int routing_id,
|
||||
diff --git content/browser/renderer_host/render_widget_host_view_event_handler.cc content/browser/renderer_host/render_widget_host_view_event_handler.cc
|
||||
index e046d3a5e231..4c9d6059adb9 100644
|
||||
index e9bef08d3222..09bae481b663 100644
|
||||
--- content/browser/renderer_host/render_widget_host_view_event_handler.cc
|
||||
+++ content/browser/renderer_host/render_widget_host_view_event_handler.cc
|
||||
@@ -30,6 +30,10 @@
|
||||
#include "ui/events/keycodes/dom/keycode_converter.h"
|
||||
#include "ui/events/keycodes/dom/dom_code.h"
|
||||
#include "ui/touch_selection/touch_selection_controller.h"
|
||||
|
||||
+#if defined(OS_LINUX)
|
||||
@ -103,10 +103,10 @@ index e046d3a5e231..4c9d6059adb9 100644
|
||||
// TODO(wjmaclean): can host_ ever be null?
|
||||
if (host_ && set_focus_on_mouse_down_or_key_event_) {
|
||||
diff --git content/public/browser/render_widget_host_view.h content/public/browser/render_widget_host_view.h
|
||||
index 3b9d91220e63..2c5ae39a7cda 100644
|
||||
index c36409dbbcc3..b12f0a737081 100644
|
||||
--- content/public/browser/render_widget_host_view.h
|
||||
+++ content/public/browser/render_widget_host_view.h
|
||||
@@ -245,6 +245,14 @@ class CONTENT_EXPORT RenderWidgetHostView {
|
||||
@@ -253,6 +253,14 @@ class CONTENT_EXPORT RenderWidgetHostView {
|
||||
// This must always return the same device scale factor as GetScreenInfo.
|
||||
virtual float GetDeviceScaleFactor() const = 0;
|
||||
|
||||
@ -135,10 +135,10 @@ index f772f64d656e..7d13f9f81b6c 100644
|
||||
return host ? host->GetAcceleratedWidget() : NULL;
|
||||
}
|
||||
diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
|
||||
index 7c6128891689..c25deaeeb31d 100644
|
||||
index 88bebe016729..95345ae3c53a 100644
|
||||
--- ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
|
||||
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
|
||||
@@ -85,6 +85,7 @@ DesktopWindowTreeHostWin::DesktopWindowTreeHostWin(
|
||||
@@ -86,6 +86,7 @@ DesktopWindowTreeHostWin::DesktopWindowTreeHostWin(
|
||||
should_animate_window_close_(false),
|
||||
pending_close_(false),
|
||||
has_non_client_view_(false),
|
||||
@ -146,7 +146,7 @@ index 7c6128891689..c25deaeeb31d 100644
|
||||
tooltip_(NULL) {
|
||||
}
|
||||
|
||||
@@ -119,8 +120,12 @@ void DesktopWindowTreeHostWin::Init(const Widget::InitParams& params) {
|
||||
@@ -120,8 +121,12 @@ void DesktopWindowTreeHostWin::Init(const Widget::InitParams& params) {
|
||||
native_widget_delegate_);
|
||||
|
||||
HWND parent_hwnd = NULL;
|
||||
@ -160,7 +160,7 @@ index 7c6128891689..c25deaeeb31d 100644
|
||||
|
||||
remove_standard_frame_ = params.remove_standard_frame;
|
||||
has_non_client_view_ = Widget::RequiresNonClientView(params.type);
|
||||
@@ -857,11 +862,15 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() {
|
||||
@@ -858,11 +863,15 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() {
|
||||
}
|
||||
|
||||
void DesktopWindowTreeHostWin::HandleNativeFocus(HWND last_focused_window) {
|
||||
@ -179,10 +179,10 @@ index 7c6128891689..c25deaeeb31d 100644
|
||||
|
||||
bool DesktopWindowTreeHostWin::HandleMouseEvent(ui::MouseEvent* event) {
|
||||
diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_win.h ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
|
||||
index beffc35eee45..0982b021b4e2 100644
|
||||
index dd3784c0fe87..ad4fd65b80e5 100644
|
||||
--- ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
|
||||
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
|
||||
@@ -281,6 +281,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin
|
||||
@@ -282,6 +282,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin
|
||||
// True if the window should have the frame removed.
|
||||
bool remove_standard_frame_;
|
||||
|
||||
@ -194,10 +194,10 @@ index beffc35eee45..0982b021b4e2 100644
|
||||
// a reference.
|
||||
corewm::TooltipWin* tooltip_;
|
||||
diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
|
||||
index 89513b6e40e0..06bb9d0508ab 100644
|
||||
index 3393e97a2c44..7fb817a9ac54 100644
|
||||
--- ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
|
||||
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
|
||||
@@ -145,6 +145,7 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11(
|
||||
@@ -146,6 +146,7 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11(
|
||||
use_native_frame_(false),
|
||||
should_maximize_after_map_(false),
|
||||
use_argb_visual_(false),
|
||||
@ -205,7 +205,7 @@ index 89513b6e40e0..06bb9d0508ab 100644
|
||||
drag_drop_client_(NULL),
|
||||
native_widget_delegate_(native_widget_delegate),
|
||||
desktop_native_widget_aura_(desktop_native_widget_aura),
|
||||
@@ -157,6 +158,7 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11(
|
||||
@@ -158,6 +159,7 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11(
|
||||
has_window_focus_(false),
|
||||
has_pointer_focus_(false),
|
||||
modal_dialog_counter_(0),
|
||||
@ -213,7 +213,7 @@ index 89513b6e40e0..06bb9d0508ab 100644
|
||||
close_widget_factory_(this),
|
||||
weak_factory_(this) {}
|
||||
|
||||
@@ -192,6 +194,8 @@ std::vector<aura::Window*> DesktopWindowTreeHostX11::GetAllOpenWindows() {
|
||||
@@ -193,6 +195,8 @@ std::vector<aura::Window*> DesktopWindowTreeHostX11::GetAllOpenWindows() {
|
||||
}
|
||||
|
||||
gfx::Rect DesktopWindowTreeHostX11::GetX11RootWindowBounds() const {
|
||||
@ -222,7 +222,7 @@ index 89513b6e40e0..06bb9d0508ab 100644
|
||||
return bounds_in_pixels_;
|
||||
}
|
||||
|
||||
@@ -502,7 +506,8 @@ void DesktopWindowTreeHostX11::CloseNow() {
|
||||
@@ -503,7 +507,8 @@ void DesktopWindowTreeHostX11::CloseNow() {
|
||||
// Actually free our native resources.
|
||||
if (ui::PlatformEventSource::GetInstance())
|
||||
ui::PlatformEventSource::GetInstance()->RemovePlatformEventDispatcher(this);
|
||||
@ -232,7 +232,7 @@ index 89513b6e40e0..06bb9d0508ab 100644
|
||||
xwindow_ = x11::None;
|
||||
|
||||
desktop_native_widget_aura_->OnHostClosed();
|
||||
@@ -643,6 +648,8 @@ void DesktopWindowTreeHostX11::GetWindowPlacement(
|
||||
@@ -644,6 +649,8 @@ void DesktopWindowTreeHostX11::GetWindowPlacement(
|
||||
}
|
||||
|
||||
gfx::Rect DesktopWindowTreeHostX11::GetWindowBoundsInScreen() const {
|
||||
@ -241,7 +241,7 @@ index 89513b6e40e0..06bb9d0508ab 100644
|
||||
return ToDIPRect(bounds_in_pixels_);
|
||||
}
|
||||
|
||||
@@ -1263,6 +1270,8 @@ void DesktopWindowTreeHostX11::SetBoundsInPixels(
|
||||
@@ -1261,6 +1268,8 @@ void DesktopWindowTreeHostX11::SetBoundsInPixels(
|
||||
}
|
||||
|
||||
gfx::Point DesktopWindowTreeHostX11::GetLocationOnScreenInPixels() const {
|
||||
@ -250,7 +250,7 @@ index 89513b6e40e0..06bb9d0508ab 100644
|
||||
return bounds_in_pixels_.origin();
|
||||
}
|
||||
|
||||
@@ -1378,7 +1387,6 @@ void DesktopWindowTreeHostX11::InitX11Window(
|
||||
@@ -1376,7 +1385,6 @@ void DesktopWindowTreeHostX11::InitX11Window(
|
||||
::Atom window_type;
|
||||
switch (params.type) {
|
||||
case Widget::InitParams::TYPE_MENU:
|
||||
@ -258,7 +258,7 @@ index 89513b6e40e0..06bb9d0508ab 100644
|
||||
window_type = gfx::GetAtom("_NET_WM_WINDOW_TYPE_MENU");
|
||||
break;
|
||||
case Widget::InitParams::TYPE_TOOLTIP:
|
||||
@@ -1434,9 +1442,15 @@ void DesktopWindowTreeHostX11::InitX11Window(
|
||||
@@ -1432,9 +1440,15 @@ void DesktopWindowTreeHostX11::InitX11Window(
|
||||
attribute_mask |= CWBorderPixel;
|
||||
swa.border_pixel = 0;
|
||||
|
||||
@ -275,7 +275,7 @@ index 89513b6e40e0..06bb9d0508ab 100644
|
||||
bounds_in_pixels_.y(), bounds_in_pixels_.width(),
|
||||
bounds_in_pixels_.height(),
|
||||
0, // border width
|
||||
@@ -2034,6 +2048,10 @@ uint32_t DesktopWindowTreeHostX11::DispatchEvent(
|
||||
@@ -2032,6 +2046,10 @@ uint32_t DesktopWindowTreeHostX11::DispatchEvent(
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -287,10 +287,10 @@ index 89513b6e40e0..06bb9d0508ab 100644
|
||||
case x11::FocusOut:
|
||||
OnFocusEvent(xev->type == x11::FocusIn, event->xfocus.mode,
|
||||
diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h
|
||||
index 49c575b1a0d0..f45f7ef3ac6f 100644
|
||||
index cf991151505b..85b8e5844d63 100644
|
||||
--- ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h
|
||||
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h
|
||||
@@ -87,6 +87,12 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
|
||||
@@ -88,6 +88,12 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
|
||||
// Disables event listening to make |dialog| modal.
|
||||
std::unique_ptr<base::Closure> DisableEventListening();
|
||||
|
||||
@ -313,7 +313,7 @@ index 49c575b1a0d0..f45f7ef3ac6f 100644
|
||||
// Whenever the bounds are set, we keep the previous set of bounds around so
|
||||
// we can have a better chance of getting the real
|
||||
// |restored_bounds_in_pixels_|. Window managers tend to send a Configure
|
||||
@@ -350,6 +359,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
|
||||
@@ -351,6 +360,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
|
||||
// Whether we used an ARGB visual for our window.
|
||||
bool use_argb_visual_;
|
||||
|
||||
@ -324,7 +324,7 @@ index 49c575b1a0d0..f45f7ef3ac6f 100644
|
||||
DesktopDragDropClientAuraX11* drag_drop_client_;
|
||||
|
||||
std::unique_ptr<ui::EventHandler> x11_non_client_event_filter_;
|
||||
@@ -438,6 +451,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
|
||||
@@ -439,6 +452,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
|
||||
|
||||
uint32_t modal_dialog_counter_;
|
||||
|
||||
@ -335,10 +335,10 @@ index 49c575b1a0d0..f45f7ef3ac6f 100644
|
||||
base::WeakPtrFactory<DesktopWindowTreeHostX11> weak_factory_;
|
||||
|
||||
diff --git ui/views/widget/widget.cc ui/views/widget/widget.cc
|
||||
index 239b66424dcc..1006f78e284c 100644
|
||||
index bf4b1d07f7fe..5702e031d6ce 100644
|
||||
--- ui/views/widget/widget.cc
|
||||
+++ ui/views/widget/widget.cc
|
||||
@@ -133,6 +133,7 @@ Widget::InitParams::InitParams(Type type)
|
||||
@@ -132,6 +132,7 @@ Widget::InitParams::InitParams(Type type)
|
||||
use_system_default_icon(false),
|
||||
show_state(ui::SHOW_STATE_DEFAULT),
|
||||
parent(nullptr),
|
||||
@ -346,7 +346,7 @@ index 239b66424dcc..1006f78e284c 100644
|
||||
native_widget(nullptr),
|
||||
desktop_window_tree_host(nullptr),
|
||||
layer_type(ui::LAYER_TEXTURED),
|
||||
@@ -307,7 +308,7 @@ void Widget::Init(const InitParams& in_params) {
|
||||
@@ -306,7 +307,7 @@ void Widget::Init(const InitParams& in_params) {
|
||||
params.name = params.delegate->GetContentsView()->GetClassName();
|
||||
|
||||
params.child |= (params.type == InitParams::TYPE_CONTROL);
|
||||
@ -355,7 +355,7 @@ index 239b66424dcc..1006f78e284c 100644
|
||||
|
||||
if (params.opacity == views::Widget::InitParams::INFER_OPACITY &&
|
||||
params.type != views::Widget::InitParams::TYPE_WINDOW &&
|
||||
@@ -374,7 +375,12 @@ void Widget::Init(const InitParams& in_params) {
|
||||
@@ -373,7 +374,12 @@ void Widget::Init(const InitParams& in_params) {
|
||||
}
|
||||
} else if (params.delegate) {
|
||||
SetContentsView(params.delegate->GetContentsView());
|
||||
@ -369,7 +369,7 @@ index 239b66424dcc..1006f78e284c 100644
|
||||
}
|
||||
// This must come after SetContentsView() or it might not be able to find
|
||||
// the correct NativeTheme (on Linux). See http://crbug.com/384492
|
||||
@@ -1098,10 +1104,16 @@ void Widget::OnNativeWidgetDestroyed() {
|
||||
@@ -1097,10 +1103,16 @@ void Widget::OnNativeWidgetDestroyed() {
|
||||
}
|
||||
|
||||
gfx::Size Widget::GetMinimumSize() const {
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git content/browser/web_contents/web_contents_impl.cc content/browser/web_contents/web_contents_impl.cc
|
||||
index 73514cb25175..f21a0b700ac0 100644
|
||||
index 189b3f0ec944..0dcd5620f9c0 100644
|
||||
--- content/browser/web_contents/web_contents_impl.cc
|
||||
+++ content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -1791,21 +1791,30 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) {
|
||||
@@ -1782,21 +1782,30 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) {
|
||||
std::string unique_name;
|
||||
frame_tree_.root()->SetFrameName(params.main_frame_name, unique_name);
|
||||
|
||||
@ -45,7 +45,7 @@ index 73514cb25175..f21a0b700ac0 100644
|
||||
CHECK(render_view_host_delegate_view_);
|
||||
CHECK(view_.get());
|
||||
|
||||
@@ -2410,6 +2419,15 @@ void WebContentsImpl::CreateNewWindow(
|
||||
@@ -2403,6 +2412,15 @@ void WebContentsImpl::CreateNewWindow(
|
||||
create_params.renderer_initiated_creation =
|
||||
main_frame_route_id != MSG_ROUTING_NONE;
|
||||
|
||||
@ -61,7 +61,7 @@ index 73514cb25175..f21a0b700ac0 100644
|
||||
std::unique_ptr<WebContents> new_contents;
|
||||
if (!is_guest) {
|
||||
create_params.context = view_->GetNativeView();
|
||||
@@ -2440,7 +2458,7 @@ void WebContentsImpl::CreateNewWindow(
|
||||
@@ -2433,7 +2451,7 @@ void WebContentsImpl::CreateNewWindow(
|
||||
// TODO(brettw): It seems bogus that we have to call this function on the
|
||||
// newly created object and give it one of its own member variables.
|
||||
new_view->CreateViewForWidget(
|
||||
@ -70,7 +70,7 @@ index 73514cb25175..f21a0b700ac0 100644
|
||||
}
|
||||
// Save the created window associated with the route so we can show it
|
||||
// later.
|
||||
@@ -5759,7 +5777,7 @@ InterstitialPageImpl* WebContentsImpl::GetInterstitialForRenderManager() {
|
||||
@@ -5749,7 +5767,7 @@ InterstitialPageImpl* WebContentsImpl::GetInterstitialForRenderManager() {
|
||||
void WebContentsImpl::CreateRenderWidgetHostViewForRenderManager(
|
||||
RenderViewHost* render_view_host) {
|
||||
RenderWidgetHostViewBase* rwh_view =
|
||||
@ -95,10 +95,10 @@ index 53d56abb35a3..d7b955f42ca5 100644
|
||||
WebContents::CreateParams::CreateParams(const CreateParams& other) = default;
|
||||
|
||||
diff --git content/public/browser/web_contents.h content/public/browser/web_contents.h
|
||||
index b79480f87663..69ef5de880f3 100644
|
||||
index 2835d80ef446..3e9427593945 100644
|
||||
--- content/public/browser/web_contents.h
|
||||
+++ content/public/browser/web_contents.h
|
||||
@@ -74,9 +74,11 @@ class BrowserPluginGuestDelegate;
|
||||
@@ -70,9 +70,11 @@ class BrowserPluginGuestDelegate;
|
||||
class InterstitialPage;
|
||||
class RenderFrameHost;
|
||||
class RenderViewHost;
|
||||
@ -109,8 +109,8 @@ index b79480f87663..69ef5de880f3 100644
|
||||
+class WebContentsView;
|
||||
struct CustomContextMenuContext;
|
||||
struct DropData;
|
||||
struct MHTMLGenerationParams;
|
||||
@@ -178,6 +180,10 @@ class WebContents : public PageNavigator,
|
||||
struct Manifest;
|
||||
@@ -175,6 +177,10 @@ class WebContents : public PageNavigator,
|
||||
|
||||
// Sandboxing flags set on the new WebContents.
|
||||
blink::WebSandboxFlags starting_sandbox_flags;
|
||||
@ -122,10 +122,10 @@ index b79480f87663..69ef5de880f3 100644
|
||||
|
||||
// Creates a new WebContents.
|
||||
diff --git content/public/browser/web_contents_delegate.h content/public/browser/web_contents_delegate.h
|
||||
index d6adf55d3c68..dd260776e01b 100644
|
||||
index 6954d351c3b8..160bd5827a5b 100644
|
||||
--- content/public/browser/web_contents_delegate.h
|
||||
+++ content/public/browser/web_contents_delegate.h
|
||||
@@ -46,10 +46,12 @@ class ColorChooser;
|
||||
@@ -47,10 +47,12 @@ class ColorChooser;
|
||||
class JavaScriptDialogManager;
|
||||
class RenderFrameHost;
|
||||
class RenderProcessHost;
|
||||
@ -138,7 +138,7 @@ index d6adf55d3c68..dd260776e01b 100644
|
||||
struct ContextMenuParams;
|
||||
struct DropData;
|
||||
struct FileChooserParams;
|
||||
@@ -312,6 +314,14 @@ class CONTENT_EXPORT WebContentsDelegate {
|
||||
@@ -313,6 +315,14 @@ class CONTENT_EXPORT WebContentsDelegate {
|
||||
const std::string& partition_id,
|
||||
SessionStorageNamespace* session_storage_namespace);
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git third_party/blink/public/platform/platform.h third_party/blink/public/platform/platform.h
|
||||
index f832a1183d5f..cd52e63ab9b1 100644
|
||||
index 3ab92de1a98b..89f115e689c6 100644
|
||||
--- third_party/blink/public/platform/platform.h
|
||||
+++ third_party/blink/public/platform/platform.h
|
||||
@@ -375,6 +375,7 @@ class BLINK_PLATFORM_EXPORT Platform {
|
||||
@@ -368,6 +368,7 @@ class BLINK_PLATFORM_EXPORT Platform {
|
||||
// satisfy this call. mainFrameOrigin is used by the browser process to
|
||||
// filter plugins from the plugin list based on content settings.
|
||||
virtual void GetPluginList(bool refresh,
|
||||
@ -10,7 +10,7 @@ index f832a1183d5f..cd52e63ab9b1 100644
|
||||
const WebSecurityOrigin& main_frame_origin,
|
||||
WebPluginListBuilder*) {}
|
||||
|
||||
@@ -734,6 +735,11 @@ class BLINK_PLATFORM_EXPORT Platform {
|
||||
@@ -727,6 +728,11 @@ class BLINK_PLATFORM_EXPORT Platform {
|
||||
// runs during Chromium's build step).
|
||||
virtual bool IsTakingV8ContextSnapshot() { return false; }
|
||||
|
||||
@ -41,7 +41,7 @@ index 8c40eef254a8..b9ac9f2a3472 100644
|
||||
.Top()
|
||||
.GetSecurityContext()
|
||||
diff --git third_party/blink/renderer/core/exported/web_dev_tools_agent_impl.cc third_party/blink/renderer/core/exported/web_dev_tools_agent_impl.cc
|
||||
index ab50fed4ab5e..e8829a3b8529 100644
|
||||
index 114b6830844a..7d64147fc62e 100644
|
||||
--- third_party/blink/renderer/core/exported/web_dev_tools_agent_impl.cc
|
||||
+++ third_party/blink/renderer/core/exported/web_dev_tools_agent_impl.cc
|
||||
@@ -323,6 +323,8 @@ WebDevToolsAgentImpl::Session::Session(
|
||||
@ -62,10 +62,10 @@ index ab50fed4ab5e..e8829a3b8529 100644
|
||||
|
||||
void WebDevToolsAgentImpl::Session::SendProtocolResponse(int session_id,
|
||||
diff --git third_party/blink/renderer/core/frame/local_frame.cc third_party/blink/renderer/core/frame/local_frame.cc
|
||||
index 80d6c903d8ef..8433050ec98c 100644
|
||||
index 60caa00ec723..5d37ee2552a1 100644
|
||||
--- third_party/blink/renderer/core/frame/local_frame.cc
|
||||
+++ third_party/blink/renderer/core/frame/local_frame.cc
|
||||
@@ -1193,7 +1193,7 @@ FrameResourceCoordinator* LocalFrame::GetFrameResourceCoordinator() {
|
||||
@@ -1224,7 +1224,7 @@ FrameResourceCoordinator* LocalFrame::GetFrameResourceCoordinator() {
|
||||
PluginData* LocalFrame::GetPluginData() const {
|
||||
if (!Loader().AllowPlugins(kNotAboutToInstantiatePlugin))
|
||||
return nullptr;
|
||||
@ -75,7 +75,7 @@ index 80d6c903d8ef..8433050ec98c 100644
|
||||
}
|
||||
|
||||
diff --git third_party/blink/renderer/core/page/page.cc third_party/blink/renderer/core/page/page.cc
|
||||
index 3f4d3f06e7e2..23bbc71f88eb 100644
|
||||
index dc89b93741bd..399a33e9d4d7 100644
|
||||
--- third_party/blink/renderer/core/page/page.cc
|
||||
+++ third_party/blink/renderer/core/page/page.cc
|
||||
@@ -153,7 +153,8 @@ Page::Page(PageClients& page_clients)
|
||||
@ -88,7 +88,7 @@ index 3f4d3f06e7e2..23bbc71f88eb 100644
|
||||
use_counter_(page_clients.chrome_client &&
|
||||
page_clients.chrome_client->IsSVGImageChromeClient()
|
||||
? UseCounter::kSVGImageContext
|
||||
@@ -326,21 +327,40 @@ void Page::RefreshPlugins() {
|
||||
@@ -331,21 +332,40 @@ void Page::RefreshPlugins() {
|
||||
PluginData::RefreshBrowserSidePluginCache();
|
||||
}
|
||||
|
||||
@ -138,7 +138,7 @@ index 3f4d3f06e7e2..23bbc71f88eb 100644
|
||||
page->NotifyPluginsChanged();
|
||||
}
|
||||
}
|
||||
@@ -713,7 +733,8 @@ void Page::Trace(blink::Visitor* visitor) {
|
||||
@@ -718,7 +738,8 @@ void Page::Trace(blink::Visitor* visitor) {
|
||||
visitor->Trace(visual_viewport_);
|
||||
visitor->Trace(overscroll_controller_);
|
||||
visitor->Trace(main_frame_);
|
||||
|
@ -1,5 +1,5 @@
|
||||
diff --git third_party/blink/public/web/web_view.h third_party/blink/public/web/web_view.h
|
||||
index c25144ef9318..343d1de5f03a 100644
|
||||
index d9cea512dfc0..5a75a1ee5205 100644
|
||||
--- third_party/blink/public/web/web_view.h
|
||||
+++ third_party/blink/public/web/web_view.h
|
||||
@@ -358,6 +358,7 @@ class WebView : protected WebWidget {
|
||||
@ -14,13 +14,13 @@ index c25144ef9318..343d1de5f03a 100644
|
||||
unsigned inactive_background_color,
|
||||
unsigned inactive_foreground_color) = 0;
|
||||
|
||||
+ virtual void SetBaseBackgroundColor(WebColor color) = 0;
|
||||
+ virtual void SetBaseBackgroundColor(SkColor color) = 0;
|
||||
+
|
||||
// Modal dialog support ------------------------------------------------
|
||||
|
||||
// Call these methods before and after running a nested, modal event loop
|
||||
diff --git third_party/blink/renderer/core/exported/web_view_impl.cc third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
index 7298a752d360..26bac8472a20 100644
|
||||
index b6d1e6c88e47..70e250fc0c76 100644
|
||||
--- third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
+++ third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
@@ -251,8 +251,13 @@ void WebView::SetUseExternalPopupMenus(bool use_external_popup_menus) {
|
||||
@ -48,7 +48,7 @@ index 7298a752d360..26bac8472a20 100644
|
||||
suppress_next_keypress_event_(false),
|
||||
ime_accept_events_(true),
|
||||
diff --git third_party/blink/renderer/core/exported/web_view_impl.h third_party/blink/renderer/core/exported/web_view_impl.h
|
||||
index 7d13f1c07529..1c664d42eb17 100644
|
||||
index 8d945bba1818..9081f247934c 100644
|
||||
--- third_party/blink/renderer/core/exported/web_view_impl.h
|
||||
+++ third_party/blink/renderer/core/exported/web_view_impl.h
|
||||
@@ -102,7 +102,8 @@ class CORE_EXPORT WebViewImpl final : public WebView,
|
||||
@ -65,12 +65,12 @@ index 7d13f1c07529..1c664d42eb17 100644
|
||||
HitTestResult CoreHitTestResultAt(const WebPoint&);
|
||||
void InvalidateRect(const IntRect&);
|
||||
|
||||
- void SetBaseBackgroundColor(WebColor);
|
||||
+ void SetBaseBackgroundColor(WebColor) override;
|
||||
void SetBaseBackgroundColorOverride(WebColor);
|
||||
- void SetBaseBackgroundColor(SkColor);
|
||||
+ void SetBaseBackgroundColor(SkColor) override;
|
||||
void SetBaseBackgroundColorOverride(SkColor);
|
||||
void ClearBaseBackgroundColorOverride();
|
||||
void SetBackgroundColorOverride(WebColor);
|
||||
@@ -622,6 +623,8 @@ class CORE_EXPORT WebViewImpl final : public WebView,
|
||||
void SetBackgroundColorOverride(SkColor);
|
||||
@@ -620,6 +621,8 @@ class CORE_EXPORT WebViewImpl final : public WebView,
|
||||
float fake_page_scale_animation_page_scale_factor_;
|
||||
bool fake_page_scale_animation_use_anchor_;
|
||||
|
||||
@ -80,7 +80,7 @@ index 7d13f1c07529..1c664d42eb17 100644
|
||||
TransformationMatrix device_emulation_transform_;
|
||||
|
||||
diff --git third_party/blink/renderer/core/page/chrome_client_impl.cc third_party/blink/renderer/core/page/chrome_client_impl.cc
|
||||
index 6af373a6468c..c9b5d47d9141 100644
|
||||
index 6b9ce0b88e7d..4fd152419225 100644
|
||||
--- third_party/blink/renderer/core/page/chrome_client_impl.cc
|
||||
+++ third_party/blink/renderer/core/page/chrome_client_impl.cc
|
||||
@@ -781,7 +781,7 @@ bool ChromeClientImpl::HasOpenedPopup() const {
|
||||
|
@ -35,7 +35,7 @@ index 7742a5367ff0..0ec2381dc558 100644
|
||||
extensions::ExtensionRegistry::Get(profile);
|
||||
std::string extensions_list;
|
||||
diff --git chrome/browser/memory_details.cc chrome/browser/memory_details.cc
|
||||
index 509b62c78375..f48dd53e30c3 100644
|
||||
index 4c0434b3c6ff..d92a70ce8ead 100644
|
||||
--- chrome/browser/memory_details.cc
|
||||
+++ chrome/browser/memory_details.cc
|
||||
@@ -16,6 +16,7 @@
|
||||
@ -60,10 +60,10 @@ index 509b62c78375..f48dd53e30c3 100644
|
||||
render_process_host->GetBrowserContext();
|
||||
extensions::ExtensionRegistry* extension_registry =
|
||||
diff --git chrome/browser/ui/webui/net_internals/net_internals_ui.cc chrome/browser/ui/webui/net_internals/net_internals_ui.cc
|
||||
index 9a9192ba6718..54edcbc95534 100644
|
||||
index 12c2eb2e1271..0de1335e91c7 100644
|
||||
--- chrome/browser/ui/webui/net_internals/net_internals_ui.cc
|
||||
+++ chrome/browser/ui/webui/net_internals/net_internals_ui.cc
|
||||
@@ -554,41 +554,31 @@ void NetInternalsMessageHandler::OnClearBrowserCache(
|
||||
@@ -552,41 +552,31 @@ void NetInternalsMessageHandler::OnClearBrowserCache(
|
||||
void NetInternalsMessageHandler::OnGetPrerenderInfo(
|
||||
const base::ListValue* list) {
|
||||
DCHECK_CURRENTLY_ON(BrowserThread::UI);
|
||||
@ -110,7 +110,7 @@ index 9a9192ba6718..54edcbc95534 100644
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -668,9 +658,17 @@ void NetInternalsMessageHandler::IOThreadImpl::OnRendererReady(
|
||||
@@ -666,9 +656,17 @@ void NetInternalsMessageHandler::IOThreadImpl::OnRendererReady(
|
||||
|
||||
PrePopulateEventList();
|
||||
|
||||
@ -131,7 +131,7 @@ index 9a9192ba6718..54edcbc95534 100644
|
||||
}
|
||||
|
||||
void NetInternalsMessageHandler::IOThreadImpl::OnGetNetInfo(
|
||||
@@ -1181,7 +1179,8 @@ void NetInternalsMessageHandler::IOThreadImpl::PrePopulateEventList() {
|
||||
@@ -1179,7 +1177,8 @@ void NetInternalsMessageHandler::IOThreadImpl::PrePopulateEventList() {
|
||||
std::set<net::URLRequestContext*> contexts;
|
||||
for (const auto& getter : context_getters_)
|
||||
contexts.insert(getter->GetURLRequestContext());
|
||||
@ -170,10 +170,10 @@ index 903cc543a242..5bd30ae82974 100644
|
||||
CONTENT_EXPORT void InitializeResourceContext(BrowserContext* browser_context);
|
||||
|
||||
diff --git content/browser/webui/url_data_manager.cc content/browser/webui/url_data_manager.cc
|
||||
index a2d542f817e3..fc81237f729a 100644
|
||||
index ce87d5984c09..6d31657e5c6c 100644
|
||||
--- content/browser/webui/url_data_manager.cc
|
||||
+++ content/browser/webui/url_data_manager.cc
|
||||
@@ -149,6 +149,11 @@ void URLDataManager::UpdateWebUIDataSource(
|
||||
@@ -148,6 +148,11 @@ void URLDataManager::UpdateWebUIDataSource(
|
||||
->UpdateWebUIDataSource(source_name, std::move(update));
|
||||
}
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
diff --git chrome/app/generated_resources.grd chrome/app/generated_resources.grd
|
||||
index a813c4e812f1..bb54023ff9ea 100644
|
||||
index 0eeacabd76db..8a4216196bcd 100644
|
||||
--- chrome/app/generated_resources.grd
|
||||
+++ chrome/app/generated_resources.grd
|
||||
@@ -4667,7 +4667,7 @@ Keep your key file in a safe place. You will need it to create new versions of y
|
||||
@@ -4661,7 +4661,7 @@ Keep your key file in a safe place. You will need it to create new versions of y
|
||||
</message>
|
||||
</if>
|
||||
<message name="IDS_PLUGIN_BLOCKED_BY_POLICY" desc="The placeholder text for a plugin blocked by enterprise policy.">
|
||||
|
@ -1,5 +1,5 @@
|
||||
diff --git services/service_manager/sandbox/win/sandbox_win.cc services/service_manager/sandbox/win/sandbox_win.cc
|
||||
index 50430a8e2f8f..424af4cb70f6 100644
|
||||
index 6c72f29ee7ce..9b0114b2cfdc 100644
|
||||
--- services/service_manager/sandbox/win/sandbox_win.cc
|
||||
+++ services/service_manager/sandbox/win/sandbox_win.cc
|
||||
@@ -865,10 +865,13 @@ sandbox::ResultCode SandboxWin::StartSandboxedProcess(
|
||||
|
2
tools/patch_updater.bat
Normal file
2
tools/patch_updater.bat
Normal file
@ -0,0 +1,2 @@
|
||||
@echo off
|
||||
python.bat %~dp0\patch_updater.py %*
|
@ -108,6 +108,14 @@ parser.add_option(
|
||||
type='string',
|
||||
default=[],
|
||||
help='optional patch name to process (multiples allowed)')
|
||||
parser.add_option(
|
||||
'--add',
|
||||
action='extend',
|
||||
dest='add',
|
||||
type='string',
|
||||
default=[],
|
||||
help='optional relative file paths to add (multiples allowed). Used in ' +\
|
||||
'combination with --resave and a single --patch value.')
|
||||
(options, args) = parser.parse_args()
|
||||
|
||||
if options.resave and options.revert:
|
||||
@ -115,6 +123,11 @@ if options.resave and options.revert:
|
||||
parser.print_help(sys.stderr)
|
||||
sys.exit()
|
||||
|
||||
if len(options.add) > 0 and (len(options.patch) != 1 or not options.resave):
|
||||
print '--add can only be used with --resave and a single --patch value.'
|
||||
parser.print_help(sys.stderr)
|
||||
sys.exit()
|
||||
|
||||
# The CEF root directory is the parent directory of _this_ script.
|
||||
cef_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), os.pardir))
|
||||
src_dir = os.path.abspath(os.path.join(cef_dir, os.pardir))
|
||||
@ -258,6 +271,17 @@ for patch in patches:
|
||||
msg('No backup of %s' % patch_path_abs)
|
||||
|
||||
if (not options.revert and not options.reapply) or has_backup_changes:
|
||||
if len(options.add) > 0:
|
||||
# Add additional requested files to the patch.
|
||||
for patch_path in options.add:
|
||||
patch_path_abs = os.path.abspath(os.path.join(patch_root_abs, \
|
||||
patch_path))
|
||||
if os.path.exists(patch_path_abs):
|
||||
msg('Adding file %s' % patch_path_abs)
|
||||
patch_paths.append(patch_path)
|
||||
else:
|
||||
msg('Skipping non-existing file %s' % patch_path_abs)
|
||||
|
||||
msg('Saving changes to %s' % patch_file)
|
||||
if added_paths:
|
||||
# Inform git of the added paths so they appear in the patch file.
|
||||
|
2
tools/patch_updater.sh
Executable file
2
tools/patch_updater.sh
Executable file
@ -0,0 +1,2 @@
|
||||
#!/bin/sh
|
||||
python tools/patch_updater.py $@
|
Reference in New Issue
Block a user