cef/patch/patch.cfg

424 lines
15 KiB
INI

# Patch configuration file. See the README.txt file in the patch directory for
# information on how this configuration is used.
#
# Each dictionary entry in the "patches" map represents a single patch file.
# Supported key/value pairs are as follows:
#
# - 'name' Required. The name of the patch file without the .patch
# extension that will be read from the patches subdirectory.
# - 'path' Optional. The repository root for the patch file. Defaults to
# the Chromium "src" root. All patch file contents must be
# relative to this repository root.
# - 'condition' Optional. The patch file will only be applied if an environment
# variable with this name exists.
#
# Each entry should also include a comment linking to the code review or bug
# report that the patch relates to.
patches = [
{
# Necessary for grit integration.
'name': 'gritsettings',
},
{
# Necessary for GN integration.
#
# Move chrome target locales output to a chrome/ directory to avoid
# conflicts with the CEF configuration.
#
# Support custom VS toolchain on Windows.
# https://bugs.chromium.org/p/chromium/issues/detail?id=623342
#
# Write environment.* files with the correct SDK version on Windows.
# https://bugs.chromium.org/p/chromium/issues/detail?id=634788
#
# Windows: Add cc_wrapper support for sccache builds.
# https://bitbucket.org/chromiumembedded/cef/issues/2432
'name': 'gn_config',
},
{
# Support component builds (GN is_component_build=true).
# https://bitbucket.org/chromiumembedded/cef/issues/1617
#
# Export GetUnicodeCharacterFromXKeySym and XKeySymToDomKey
# to fix component builds.
# https://bitbucket.org/chromiumembedded/cef/issues/2587
'name': 'component_build_1617_2587',
},
{
# Revert change on Windows that removes MessageLoop::os_modal_loop().
# https://codereview.chromium.org/1992243003
#
# Revert change that removes MessageLoopForUI constructor.
# https://chromium-review.googlesource.com/751322
#
# Add MessageLoop::ReleasePump to fix crashes during shutdown with multi-
# threaded message loop mode.
# https://bitbucket.org/chromiumembedded/cef/issues/2362
'name': 'message_loop',
},
{
# Add builtin trace event categories for CEF.
# Required due to https://crrev.com/331266377d.
'name': 'trace_event',
},
{
# Enable popups in offscreen rendering on OS X.
#
# Allow customization of the WebView background color.
# https://bitbucket.org/chromiumembedded/cef/issues/2345
'name': 'webkit_popups',
},
{
# Fix export of UnderlayOpenGLHostingWindow for 64-bit OS X builds.
# https://bitbucket.org/chromiumembedded/cef/issues/1051
'name': 'underlay_1051',
},
{
# Allow specification of a parent window handle for Widget creation.
# https://bitbucket.org/chromiumembedded/cef/issues/180
#
# Fix multiple handling of WM_MOUSEWHEEL messages on Windows.
# https://bitbucket.org/chromiumembedded/cef/issues/1481
#
# Support custom RenderWidgetHostViewOSR for BrowserPluginGuest.
# https://bitbucket.org/chromiumembedded/cef/issues/1565
#
# Fix focus/activation handling and keyboard input on Windows and Linux.
# https://bitbucket.org/chromiumembedded/cef/issues/1677
# https://bitbucket.org/chromiumembedded/cef/issues/1679
# https://bitbucket.org/chromiumembedded/cef/issues/1700
#
# Support creation of captionless windows with resizable borders.
# https://bitbucket.org/chromiumembedded/cef/issues/1749
#
# Windows: When |params.remove_standard_frame| is true remove WS_CAPTION
# and WS_SYSMENU styles. Otherwise Windows 10 enforces a minimum window
# width of ~116 units that cannot be overridden.
# Linux: Allow creation of activatable menu windows.
# Linux: Support CefWindowDelegate::CanResize restriction by specifying
# min/max Widget size values.
# https://bitbucket.org/chromiumembedded/cef/issues/1947
#
# Support configuration of RWHVGuest device scale factor.
# https://bitbucket.org/chromiumembedded/cef/issues/2078
'name': 'views_widget_180_1481_1565_1677_1749',
},
{
# Allow specification of a custom WebContentsView.
# https://bitbucket.org/chromiumembedded/cef/issues/1257
#
# Support custom RenderWidgetHostViewOSR for BrowserPluginGuest.
# https://bitbucket.org/chromiumembedded/cef/issues/1565
'name': 'web_contents_1257_1565',
},
{
# Support custom RenderWidgetHostViewOSR for BrowserPluginGuest.
# https://bitbucket.org/chromiumembedded/cef/issues/1565
'name': 'browser_plugin_guest_1565',
},
{
# Allow customization of the WebView background color.
# https://bitbucket.org/chromiumembedded/cef/issues/1161
# https://codereview.chromium.org/228603007/
'name': 'prefs_content_1161',
},
{
# Fix drag&drop of combined text and URL data on Linux/Aura.
# https://codereview.chromium.org/208313009
'name': 'ui_dragdrop_355390',
},
{
# Make URLRequest::set_is_pending() public so that it can be called from
# CefRequestInterceptor::MaybeInterceptResponse().
# https://bitbucket.org/chromiumembedded/cef/issues/1327
'name': 'net_urlrequest_1327',
},
{
# Remove NOTREACHED() that is hit when loading Flash in incognito mode.
# https://bitbucket.org/chromiumembedded/cef/issue/1586
'name': 'content_pepper_flash_1586',
},
{
# Fix placement of IME window on Windows.
# https://bitbucket.org/chromiumembedded/cef/issue/1610
'name': 'ime_1610',
},
{
# Enable support for print header and footer.
# https://bitbucket.org/chromiumembedded/cef/issue/1478
#
# Fix printing of PDF documents via PrintToPDF.
# https://bitbucket.org/chromiumembedded/cef/issues/1565
#
# Revert ENABLE_PRINT_PREVIEW changes from the following changeset.
# https://codereview.chromium.org/1556463003
#
# Add ENABLE_CEF checks in chrome/browser/ui.
'name': 'print_header_footer_1478_1565',
},
{
# Split service_manager::Main into the separate steps required by CEF.
# https://bugs.chromium.org/p/chromium/issues/detail?id=654986#c17
#
# Remove DCHECK on Linux when initialized CEF from a non-main thread.
# https://bitbucket.org/chromiumembedded/cef/issue/1639
'name': 'service_manager_654986',
},
{
# Fix loading of the PDF extension with proxy BrowserContext.
# https://bitbucket.org/chromiumembedded/cef/issues/1710
'name': 'supports_user_data_1710',
},
{
# Fix missing check for defined(ENABLE_THEMES) in
# renderer_preferences_util.cc on Linux.
# https://bugs.chromium.org/p/chromium/issues/detail?id=545103
'name': 'renderer_preferences_util_545103',
},
{
# Expose the FontFamilyCache UserData key.
# https://bitbucket.org/chromiumembedded/cef/issues/1501
'name': 'font_family_cache_1501',
},
{
# Fix crash while printing on Windows by properly initializing V8 in the PDF
# module.
# https://bugs.chromium.org/p/chromium/issues/detail?id=549365#c17
'name': 'pdfium_print_549365',
'path': 'third_party/pdfium/',
},
{
# Enable support for filtering resource responses.
# https://bitbucket.org/chromiumembedded/cef/issues/515
'name': 'net_filter_515',
},
{
# Modify views::View to extend SupportsUserData.
# https://bitbucket.org/chromiumembedded/cef/issues/1749
#
# Don't add TestDesktopScreenX11 dependency on Linux.
# Reverts ui_controls_factory_desktop_aurax11.cc changes from
# https://codereview.chromium.org/2327623002
#
# Add InkDropHostView::ink_drop_mode method.
# Reverts ink_drop_host_view.h changes from
# https://codereview.chromium.org/2723843002
#
# Add LabelButton::SetFontList method.
# Reverts label_button.[cc|h] changes from
# https://codereview.chromium.org/2801583002
#
# Expose callbacks for mouse/keyboard events that trigger menu switching.
# Add accelerator display support to Label.
# https://bitbucket.org/chromiumembedded/cef/issues/2102
'name': 'views_1749_2102',
},
{
# Expose ui::Compositor via BrowserCompositorMac for OSR.
'name': 'browser_compositor_mac',
},
{
# Fix chrome Widevine build on Linux.
'name': 'chrome_widevine',
},
{
# Support CEF changes in chrome/browser.
'name': 'chrome_browser',
},
{
# Support CEF changes in chrome/renderer.
'name': 'chrome_renderer',
},
{
# Don't initialize ExtensionSystemFactory when extensions are disabled.
# https://bitbucket.org/chromiumembedded/cef/issues/2359
'name': 'chrome_browser_content_settings',
},
{
# Make some methods of ProfileManager virtual.
# Allow CEF to intercept GetBrowserContext*InIncognito functions.
'name': 'chrome_browser_profiles',
},
{
# Support direct access to NetExportFileWriter via BrowserProcess instead
# of adding a dependency on SystemNetworkContextManager (see
# https://crrev.com/6ed14d99e9).
# TODO(cef): Consider removing this once we support NetworkService.
'name': 'chrome_browser_net_export',
},
{
# Allow CEF to share Chrome plugin loading code.
'name': 'chrome_plugins',
},
{
# Support StoragePartition proxy by:
# (a) Exposing UserData keys for objects owned by BrowserContext;
# (b) Adding BrowserContext::GetStoragePartitionProxy();
# (c) Removing static_cast<> of StoragePartition to StoragePartitionImpl.
# https://bitbucket.org/chromiumembedded/cef/issues/1973
#
# Don't create a "databases" directory when cache_path is empty.
# https://bitbucket.org/chromiumembedded/cef/issues/2289
'name': 'storage_partition_1973',
},
{
# Fix plugin placeholder blocked message.
# https://bitbucket.org/chromiumembedded/cef/issues/2020/
'name': 'webview_plugin_2020',
},
{
# Support WebUI by:
# (a) Exposing required UserData keys;
# (b) Removing dependency on non-NULL IOThread* object.
# https://bitbucket.org/chromiumembedded/cef/issues/2037
'name': 'webui_2037',
},
{
# Support an option to enable/disable net security expiration.
# https://bitbucket.org/chromiumembedded/cef/issues/1994
'name': 'net_security_expiration_1994',
},
{
# Implement breakpad/crashpad customization required by CEF.
# https://bitbucket.org/chromiumembedded/cef/issues/1995
'name': 'crashpad_1995',
},
{
# Support customization of crash report pruning limits.
# https://bugs.chromium.org/p/crashpad/issues/detail?id=142
#
# Implement better rate-limiting/retry logic.
# https://bugs.chromium.org/p/crashpad/issues/detail?id=23
'name': 'crashpad_tp_1995',
},
{
# Fix white flash during browser creation.
# https://bitbucket.org/chromiumembedded/cef/issues/1984
#
# Windows: Fix crash during window creation.
# https://bugs.chromium.org/p/chromium/issues/detail?id=761389
'name': 'rwh_background_color_1984',
},
{
# Pass is_main_frame to PluginServiceFilter::IsPluginAvailable.
# https://bitbucket.org/chromiumembedded/cef/issues/2015
#
# Pass the render process id to PluginServiceFilter::IsPluginAvailable.
# https://bugs.chromium.org/p/chromium/issues/detail?id=626728#c15
#
# Expose RFH via NavigationHandle for retrieval in DidFinishNavigation on
# network error.
# https://groups.google.com/a/chromium.org/d/msg/chromium-dev/6iAQPx_hwh8/gaTR5f1GAQAJ
#
# Add ContentRendererClient::RenderThreadConnected to fix sync IPC issue.
# https://bugs.chromium.org/p/chromium/issues/detail?id=728195
#
# Add RenderFrameObserver::FrameFocused method.
#
# Add ContentRendererClient::DevToolsAgent[Attached|Detached] methods.
'name': 'content_2015',
},
{
# Pass is_main_frame to PluginServiceFilter::IsPluginAvailable.
# https://bitbucket.org/chromiumembedded/cef/issues/2015
#
# Add ContentRendererClient::DevToolsAgent[Attached|Detached] methods.
'name': 'webkit_plugin_info_2015',
},
{
# Linux: Attach routing IDs to PrintingContext.
# https://bitbucket.org/chromiumembedded/cef/issues/2196
'name': 'printing_context_2196',
},
{
# Linux: Fix 32-bit build fails with ld.gold: internal error in
# get_section_contents, at icf.cc:467
# https://bitbucket.org/chromiumembedded/cef/issues/2256
# Win: remove llvmlibthin as the combine_libs.py can't handle those
# https://bitbucket.org/chromiumembedded/cef/issues/2470
'name': 'build',
},
{
# Linux: Remove GTK build dependency.
# https://bitbucket.org/chromiumembedded/cef/issues/2014
'name': 'linux_gtk_2014',
},
{
# Changes necessary to support for chrome extensions:
# (a) Add a new ExtensionHost constructor that allows CEF to create the
# WebContents.
# (b) Always create ProcessManager using CEF's BrowserContextImpl.
# https://bitbucket.org/chromiumembedded/cef/issues/1947
#
# Don't initialize PrerenderContents object in StreamsPrivateAPI.
'name': 'extensions_1947',
},
{
# Don't enable sandbox::MITIGATION_STRICT_HANDLE_CHECKS in WinRT apps.
# https://bitbucket.org/chromiumembedded/cef/issues/2274
'name': 'win_rt_2274',
},
{
# Always return the Chrome product value for DevTools.
# https://bitbucket.org/chromiumembedded/cef/issues/2300
'name': 'devtools_product_2300',
},
{
# Fix DCHECK running OSRTest.DragDropUpdateCursor.
# https://bugs.chromium.org/p/chromium/issues/detail?id=781966
'name': 'webkit_pointer_event_781966',
},
{
# macOS: Fix undesirable switch to discrete GPU during startup.
# https://bitbucket.org/chromiumembedded/cef/issues/2398
#
# macOS: Rely on symlinks to find the Libraries directory.
# https://bugs.chromium.org/p/chromium/issues/detail?id=757974#c23
'name': 'mac_gpu',
},
{
# macOS: Make the NativeEventProcessor protocol dependency optional.
# https://bitbucket.org/chromiumembedded/cef/issues/2539
'name': 'mac_event_observer_2539',
},
{
# macOS: Fix crash when scrolling in OSR mode.
# https://bitbucket.org/chromiumembedded/cef/issues/2540
'name': 'mac_fling_scheduler_2540',
},
{
# Support rendering to a hardware GL/D3D texture/surface provided by the client
# https://bitbucket.org/chromiumembedded/cef/issues/1006
'name': 'external_textures_1006',
},
{
# Linux: Use poll instead of select to fix crash during startup.
# https://bitbucket.org/chromiumembedded/cef/issues/2466
'name': 'linux_poll_2466',
},
{
# Allow ResourceBundle creation/destruction on the main thread and usage on
# the UI thread.
# https://bitbucket.org/chromiumembedded/cef/issues/2398
'name': 'resource_bundle_2512',
},
{
# Fix redraw of OSR PDF viewer.
# https://bitbucket.org/chromiumembedded/cef/issues/2507
# Partially reverts changes from https://crrev.com/17771fad93
'name': 'browser_child_frame_2507',
},
{
# macOS: Fix crash when showing a select popup with CefDoMessageLoopWork.
# https://bitbucket.org/chromiumembedded/cef/issues/2495
'name': 'message_pump_mac_2495',
},
{
# Windows: Fix "error: unknown escape sequence" with jumbo builds.
# https://bugs.chromium.org/p/chromium/issues/detail?id=924454
'name': 'v8_embed_924454',
'path': 'v8',
}
]