PATCHES.md
May 19, 2026 ยท View on GitHub
| Patch | Message |
|---|---|
| Add AllowUserCertificates flag File: Add-AllowUserCertificates-flag.patch | |
| Add Alt+D hotkey to focus address bar File: Add-Alt-D-hotkey-to-focus-address-bar.patch | |
| Add IsCleartextPermitted flag File: Add-IsCleartextPermitted-flag.patch | |
| Add PartialLowEndModeOnMidRangeDevices flag File: Add-PartialLowEndModeOnMidRangeDevices-flag.patch | adds a new flag in chrome://flags to re-enable the experiment |
| Add a GN flag to disable trybot verification File: Add-a-GN-flag-to-disable-trybot-verification.patch | Adds flag in GN to deactivate the check performed by some google build bots. The flag is deactivated when generating the system webview with skip_secondary_abi_for_cq=true in arm64. |
| Add a flag to disable GamePad API File: Add-a-flag-to-disable-GamePad-API.patch | Adds restrict-gamepad-access flag (default active) to disable GamePad API. |
| Add a proxy configuration page File: Add-a-proxy-configuration-page.patch | Accessible from proxy settings and chrome://proxy Allows to use a PAC script URL, automatic configuration and explicit proxy settings. Offer auto-complete for the proxy page URL. Store proxy settings in LocalState instead of Profile, so that proxy is used for SimpleURLLoaders as well; this implementation is the same as the one in ChromeOS which gets proxy information from the LocalState for the system network context; this is strictly not correct on Android because the network context is never connected to any user profile and only gets proxy information from the system. Existing settings on Profile are migrated to LocalState on startup. Enable the support for multiple proxy chain via the bracketed [] sintax Credits to @uazo for the LocalState integration. |
| Add an always-incognito mode File: Add-an-always-incognito-mode.patch | Add a preference that causes all new tabs and all clicked links to launch in incognito. Make sure initial incognito status is correctly recognized. Enable incognito custom tabs and fix crashes for incognito/custom tab intents Use a native flag to correctly start new tabs on app startup Add history, recents, offlinepages and send to home screen support for always incognito. History, recent tabs and offline pages require the INCOGNITO_TAB_HISTORY_ENABLED flag turned on. IncognitoPlaceholder is also deactivated, both in the phone and tablet version. The relative tests are also present. based on the original work by Ryan Archer ryan.bradley.archer@gmail.com Major contributions by uazo. See also: https://github.com/bromite/bromite/pull/1427 |
| Add autoplay site setting File: Add-autoplay-site-setting.patch | Require: Content-settings-infrastructure.patch |
| Add bookmark import/export actions File: Add-bookmark-import-export-actions.patch | Add bookmark import/export actions in bookmarks activity and page Reduce permissions needed for bookmarks import/export Completely remove contacts picker permission from the file dialog Requires: Adds-support-for-writing-URIs.patch Requires: Restore-BookmarkToolbar-setCurrentFolder.patch |
| Add browser policy File: add-browser-policy.patch | |
| Add cromite flags support File: Add-cromite-flags-support.patch | Add SET_CROMITE_FEATURE_ENABLED*, SET_CROMITE_FEATURE_DISABLED* and CROMITE_FEATURE macros, logic has been adapted from that found in brave. Allows flags to be defined in separate files. Activates a new cromite tab in chrome://flags with only the flags added and changed. In android added chrome://flags/cromite in the setting ui. Need: bromite-build-utils.patch |
| Add cromite test support File: Add-cromite-test-support.patch | Allows the activation of specific APIs used for cromite testing. API are only available on the chrome://version page. It allows the use of tools such as Browserstack for test automation. Do not activate the corresponding options (available in the developer settings) if you do not know what you are doing. |
| Add custom tab intents privacy option File: Add-custom-tab-intents-privacy-option.patch | Add custom tab intents privacy option and force open external links in incognito flag. Use the CCT ephemeral mode. Flags are mutually exclusive. See also: https://github.com/bromite/bromite/issues/1474 |
| Add exit menu item File: Add-exit-menu-item.patch | Corrected Exit functionality |
| Add flag for omnibox autocomplete filtering File: Add-flag-for-omnibox-autocomplete-filtering.patch | Adds a flag that restricts whether search history, clipboard, bookmarks and internal chrome:// pages will be used for the autocomplete results. |
| Add flag for save-data-header File: Add-flag-for-save-data-header.patch | |
| Add flag to configure maximum connections per host File: Add-flag-to-configure-maximum-connections-per-host.patch | With the introduction of this flag it is possible to increase the maximum allowed connections per host; this can however be detrimental to devices with limited CPU/memory resources and it is disabled by default. |
| Add flag to control video playback resume feature File: Add-flag-to-control-video-playback-resume-feature.patch | Disable it by default on Android as it is everywhere else |
| Add flag to disable IPv6 probes File: Add-flag-to-disable-IPv6-probes.patch | |
| Add flag to disable external intent requests File: Add-flag-to-disable-external-intent-requests.patch | Adds a new flag that allows to control the switch with same name; when flag is disabled no external intent will ever be allowed, for any URL except for the tel: schema. This also reverts commit b710cefb53b558a8bcd884f6baf0229ba4225721 and enables IntentBlockExternalFormRedirectsNoGesture. |
| Add flag to disable vibration File: Add-flag-to-disable-vibration.patch | |
| Add kill switch for unsupported clangd flags File: Add-kill-switch-for-unsupported-clangd-flags.patch | Allows build with clangd by suppressing unsupported parameters |
| Add lifetime options for permissions File: Add-lifetime-options-for-permissions.patch | Indicate the session mode for content-settings by using the constraint content_settings::SessionModel asUserSession when setting the value, and also make use of an expiration time value. This is used in Chromium for ClientHints but it is generally possible to use this functionality when aspecific value needs to be persisted by origin. All content settings of this type are not saved on disk (except for the Forever option), allowing user toreset the status each time application is restarted. There are 4 main areas affected to introduce the functionality: * components/content_settings A new content_settings::LifetimeMode enum value is defined to specify the user'schoice (Always, OnlyThisTime, UntilOriginClosed, UntilBrowserClosed). Enumeration is also generated for java by adding it in content_settings_enums_javagen (gn).This is mainly used in content_settings_utils.cc to create a specialised content_settings::ContentSettingConstraintsthat is then used in SetContentSettingDefaultScope() by PermissionContextBase::UpdateContentSetting.Existing Chromium data structures do not provide a specific property to define a choice which is instead encoded through the ContentSettingConstraints; this approach is already used in other parts of the Chromium codebase so it is notnovel here. Therefore, content_settings::GetConstraintSessionExpiration() and content_settings::IsConstraintSessionExpiration()manage the lifetime modes of the session content-settings. The modification also adds the session pattern to the ContentSettingPatternSource so that it is available for the UI. * components/permissions Lifetime support is added to the permissions; most of the changes are caused by the fact that it is necessary to report the value selected by the user from the Java UI managed by components/browser_ui up toPermissionContextBase::UpdateContentSetting(), without necessarily having to modify all requests that are notrelated to geolocation/camera/microphone. The approach used is a new PermissionRequest::PermissionDecidedCallbackWithLifetime used by an overload ofPermissionContextBase::CreatePermissionRequest so that options are present only for the specific content-settings(see PermissionDialogModel.java).For other permissions no behaviour is changed (see PermissionDialogDelegate::Accept); for geolocation it wasnecessary to act directly in the specific context, because, unlike microphone/camera, the content-setting value is inserted in its specific method ( FinishNotifyPermissionSet, that calls the callback), even if the class alwaysderives from PermissionContextBase.* components/page_info Some changes needed to see in the summary of the page_info the text "(only this session)"(aka page_info_android_permission_session_permission) through adding a new property "is_user_session" inPageInfoPermissionEntry (Java).* components/browser_ui Changes to the Settings UI to show "(only this session)" in the specific content-setting. The same view is used both in the settings and in the page_info. For the management of UntilOriginClosed the logic used by flag kOneTimeGeolocationPermission was used; this flagis active only in the desktop (files last_tab_standing_tracker_*). It is a class that manages a list of the activeorigins and allows to perform operations when all the tabs relating to that origin have been closed, in this case deleting the session content settings of UntilOriginClosed.See also: https://github.com/bromite/bromite/issues/1549 |
| Add menu item to bookmark all tabs File: Add-menu-item-to-bookmark-all-tabs.patch | |
| Add menu item to view source File: Add-menu-item-to-view-source.patch | |
| Add option to disable snapshots File: Add-option-to-disable-snapshots.patch | |
| Add option to force tablet UI File: Add-option-to-force-tablet-UI.patch | |
| Add option to not persist tabs across sessions File: Add-option-to-not-persist-tabs-across-sessions.patch | |
| Add option to use home page as NTP File: Add-option-to-use-home-page-as-NTP.patch | And allow use about:blank as default homepage |
| Add search engine File: Add-search-engine.patch | Add a Google search engine that forces languages to English, disable from all its searches RLZ and field experiments querystring parameters. Add DuckDuckGo Lite |
| Add setting to clear data on exit File: Add-setting-to-clear-data-on-exit.patch | |
| Add setting to enable Credman for passkeys File: Add-setting-to-enable-Credman-for-passkeys.patch | Enables Credential Manager for passkey management on A14+ devices via a switch in the settings. By default, the feature is disabled. In other versions of Android, webauthn appears to be enabled on websites but always returns a timeout error as per specifications. Conditional immediate support is disabled. |
| Add setting to invert tap and long tap File: Add-setting-to-invert-tap-and-long-tap.patch | Reverses single tap to long tap in android for accessibility reasons. The feature can be activated from the accessibility settings. Need: bromite-build-utils.patch |
| Add site engagement flag File: Add-site-engagement-flag.patch | Disabled by default. |
| Add support for ISupportHelpAndFeedback File: Add-support-for-ISupportHelpAndFeedback.patch | |
| Add support for writing URIs File: Add-support-for-writing-URIs.patch | Allows native-side URI file writing |
| Add webGL site setting File: Add-webGL-site-setting.patch | Do not provide any device information when serving context creation errors. Requires patch: Content-settings-infrastructure.patch |
| Add webRTC site settings File: Add-webRTC-site-settings.patch | Requires patch: Content-settings-infrastructure.patch |
| Allow DocumentPiP if PopupsAndRedirects are active File: Allow-DocumentPiP-if-PopupsAndRedirects-are-active.patch | Allow documentPiP api use only with content setting popup allowed and disables the possibility of verifying the activation of PIP in the device with document.pictureInPictureEnabled |
| Allow building without enable_reporting File: Allow-building-without-enable_reporting.patch | |
| Allow building without supervised users File: Allow-building-without-supervised-users.patch | |
| Allow playing audio in background File: Allow-playing-audio-in-background.patch | |
| Always allow inspect fallback File: Always-allow-inspect-fallback.patch | Always enable 'inspect fallback' in 'chrome://inspect/#devices' |
| Always open browser controls in new tab File: Always-open-browser-controls-in-new-tab.patch | |
| Always use new tab page for default home page File: Always-use-new-tab-page-for-default-home-page.patch | Ignore any partner-provided home page. |
| Android Pixel Perfect Mode File: Android-Pixel-Perfect-Mode.patch | Eliminate conversions between dpi and pixels in Blink. The goal (not yet achieved) is to mask the display geometry of Android devices and to make the various devices identical for canvas and rect fingerprinting. This patch is WIP, it is incomplete and contains visual glitch, do not activate. This version contains points of interest marked in the code, which will be removed once the patch is complete. |
| Android Toolbar Scroll Ablation setting File: Android-Toolbar-Scroll-Ablation-setting.patch | Adds a setting for blocking the toolbar hiding need: Add-cromite-flags-support.patch |
| Android fonts fingerprinting mitigation File: Android-fonts-fingerprinting-mitigation.patch | Replaces system fonts with a predefined set downloaded from www.cromite.org |
| Ask to restart on connection change File: Ask-for-restart-on-connection-change.patch | Experimental use of the OfflineDetector to identify network change, disabled by default. If it is active, when the network change is detected by the android API, the user is warned and asked to restart the browser. Technically, blink's freeze mode is exploited, which allows javascript execution and network calls to be blocked. A preventive shutdown of all service workers is carried out, to inhibit the sending of messages over the new ip, since the service workers have access to the background fetch api. The freeze and resume event of javascript is deliberately left, since the page could deduct it in any case. In any case during the execution of the javascript events, the page can only access the FetchLater api, which is disabled by another patch. The patch also changes the standard behaviour of the browser, allowing visible pages to freeze. This could lead to the failure of some DCHECKS related to the handling of UI messages at unfreeze, but since the goal is a reboot, this should not be the case. |
| AudioBuffer, AnalyserNode: fp mitigations File: AudioBuffer-AnalyserNode-fp-mitigations.patch | Truncate base latency precision to two digits |
| Battery API: return nothing File: Battery-API-return-nothing.patch | Include @thestinger's fix for correct charging/unknown values |
| Block Intents While Locked File: Block-Intents-While-Locked.patch | see https://source.chromium.org/chromium/chromium/src/+/c5b50f4c2d42e7b808fd3e6fb3545cdb3f4d82c9 |
| Block gateway attacks via websockets File: Block-gateway-attacks-via-websockets.patch | This approach is not comprehensive, see also: * https://bugs.chromium.org/p/chromium/issues/detail?id=590714 |
| Block leakage of urls in sandbox iframes File: Block-leakage-of-urls-in-sandbox-iframes.patch | Preventing url base fallback leakage in cross orgin sandbox iframe. Addition of the ""block-url-leakage-sandbox-iframe" flag disabled by default. DO NOT ACTIVATE: the patch is a wip The aim is to understand whether it is possible to disable the leakage of certain information in sandbox iframes |
| Bookmarks select all menu entry File: Bookmarks-select-all-menu-entry.patch | Requires: Restore-BookmarkToolbar-setCurrentFolder.patch |
| Bromite auto updater File: Bromite-auto-updater.patch | Enable checking for new versions, with notifications and proxy support. Restore InlineUpdateFlow feature. Some parts authored by csagan5. |
| Bromite package name File: Bromite-package-name.patch | |
| Bromite subresource adblocker File: Bromite-subresource-adblocker.patch | Add option to configure the ad blocker filters URL Disable look-alike, metrics, ablation and navigation throttles Do not use experiments to enable/disable presets Always enable ad filtering Download filters by checking Last-Modified header first Fix RestoreForeignSessionTab by recreating the tab (issue #681) Enable AutomaticLazyFrameLoadingToAds and AutomaticLazyFrameLoadingToEmbeds features |
| Bubble Locking on UI DevTools File: Bubble-Locking-on-UI-DevTools.patch | Allows the use of ctrl+shift+click on the refresh button to activate the Bubble Locking mode for the native dev-ui. The current ctrl+shift+R is really inconvenient and often does not work. |
| Change popup site setting File: Change-popup-site-setting.patch | In site settings added ability to block all popups per site |
| Chrome web store protection File: Chrome-web-store-protection.patch | The amount of information sent is minimized without disabling the ability to install extensions (which is under user control) It became possible to activate the autoupdate of extensions by sending the minimum of values. Installation with the chrome web store is allowed, but the website by default cannot retrieve the list of installed extensions and their status (under flag) All http calls related to requesting and downloading updates are cookie-free, but the ip and the list of extensions are traceable, that information cannot be omitted. Auto-update is disabled by default: it is possible to activate it with chrome://extensions/ |
| Clear CORS Preflight Cache on clearing data File: Clear-CORS-Preflight-Cache-on-clearing-data.patch | |
| Client hints overrides File: Client-hints-overrides.patch | Disable critical client hints and network early hints Use Google Chrome branding for client hints |
| Close sessions on ip change File: Close-Sessions-On-Ip-Change.patch | Exposed a flag to change the behaviour of the network stack with regard to the automatic reconnection of quic connections when the connection changes. By default changed from automatic reconnection to close connection on ip change. No change in doh connections. |
| Compress libchrome to free up some space File: Compress-libchrome-to-free-up-some-space.patch | upstream removed ModernLinker support for developer build (apk releases). see https://bugs.chromium.org/p/chromium/issues/detail?id=1383210 |
| Content settings infrastructure File: Content-settings-infrastructure.patch | This patch is used by other patches to provide the UI for Bromite-specific site settings. See BromiteCustomContentSetting_README.md for more information. Require: bromite-build-utils.patch |
| Cromite Branding File: Cromite-Branding.patch | |
| Cromite Branding: improve settings ui File: Cromite-Branding--improve-settings-ui.patch | Modification to the settings ui with the aim of making it clearer. |
| Customize selection popup File: Customize-selection-popup.patch | Adds options related to the handling of pop-up selections: Opens tabs in foreground, Move web search to the top of items, Web search in tab group and Enable smart text selection |
| Dictionary suggestions for the Omnibox File: Dictionary-suggestions-for-the-Omnibox.patch | Revert "Disable Dictionary suggestions for the Omnibox" This reverts commit d3ec2b2d25066ec089f8351a44b919ded4270e83. |
| Disable Accessibility service by default File: Disable-Accessibility-service-by-default.patch | |
| Disable Android AppRestrictions File: Disable-Android-AppRestrictions.patch | |
| Disable Android Tab Declutter File: Disable-Android-Tab-Declutter.patch | |
| Disable AppRating File: Disable-AppRating.patch | Chromium Android includes an AppRating promo path that can trigger user-facing review prompts through the Android app-rating integration. The implementation depends on Google Play Review APIs provided by Google Play Services. Those dependencies are already excluded by default in this fork through a separate patch, making the AppRating feature non-functional and unnecessary. Change: Remove AppRatingPromoController from the optional promo selection flow and exclude the app_rating Java and junit targets from the Android build graph. Privacy/Security Impact: Removes an unused user-engagement surface and avoids invoking review-related logic tied to Google Play Services. No browser engine, network, Blink, V8, storage, or process-isolation behavior is changed. Notes: AppRating depends on Google Play Review APIs from Google Play Services. Since Google Play Services support is already excluded by default through a separate patch, this change removes the now-unused integration and prevents accidental reintroduction of the feature. |
| Disable AsyncDNS by default File: Disable-AsyncDNS-by-default.patch | This feature is detrimental to privacy, see also: * https://bugs.chromium.org/p/chromium/issues/detail?id=805020 |
| Disable BackForwardCache File: Disable-BackForwardCache.patch | |
| Disable CSS blink-feature support File: Disable-CSS-blink-feature-support.patch | the function is not currently exposed to websites but is only allowed for testing. disabled as it is an potentially advanced fingerprinting mechanism. also fixed the possibility of using internal selectors for speculation rules. see https://chromium-review.googlesource.com/c/chromium/src/+/5540782 |
| Disable CSSDynamicRangeLimit File: Disable-CSSDynamicRangeLimit.patch | Disables the ability for pages to limit the maximum brightness of HDR content since use as screen fingerprinting is possible. see https://www.github.com/w3ctag/design-reviews/issues/1027 |
| Disable Compose feature File: Disable-Compose-feature.patch | |
| Disable Compression Dictionary Transport File: Disable-Compression-Dictionary-Transport.patch | |
| Disable DRM media origin IDs preprovisioning File: Disable-DRM-media-origin-IDs-preprovisioning.patch | |
| Disable Device Attributes API File: Disable-Device-Attributes-API.patch | |
| Disable FedCm File: Disable-FedCm.patch | |
| Disable Feeback Collector File: Disable-Feeback-Collector.patch | |
| Disable GSA by default File: Disable-GSA-by-default.patch | |
| Disable GetInstalledRelatedApps API File: Disable-GetInstalledRelatedApps-API.patch | |
| Disable NTP remote suggestions by default File: Disable-NTP-remote-suggestions-by-default.patch | |
| Disable Paint Preview by default File: Disable-Paint-Preview-by-default.patch | |
| Disable Posture API File: Disable-Posture-API.patch | see https://issues.chromium.org/issues/40124716 and https://github.com/w3c/device-posture/blob/gh-pages/security-privacy-self-assessment.md |
| Disable PrivacyGuide File: Disable-PrivacyGuide.patch | |
| Disable Read Aloud by default File: Disable-Read-Aloud-by-default.patch | |
| Disable Real Box File: Disable-Real-Box.patch | Real-box is search box in ntp |
| Disable Service and Shared workers on 3P iframe File: Disable-Service-and-Shared-workers-on-3P-iframe.patch | Disabled by default due https://bugs.chromium.org/p/chromium/issues/detail?id=1147281 Workers can be reenabled per top-site-url using "Allow 3P Cookies" ("Block 3P Cookies" in ui to off) in site settings |
| Disable Sticky User Activation Across Same Origin Navigation File: Disable-Sticky-User-Activation-Across-Same-Origin-Navigation.patch | Do not retains the user activation status after navigating from one page to another page of the same origin. It is currently not possible to remove activation once it has been granted. |
| Disable TLS resumption File: Disable-TLS-resumption.patch | Disable resumption feature for all HTTPS and QUIC connections; the feature could be used to track users even without cookies. Sessions are not currently saved to disk in Chromium (although there is support for it) but are long enough to constitute a privacy risk (2h for TLS 1.2 and 7 days for TLS 1.3) if user does not frequently close the browser. Since session information is not kept in the HTTP cache it is not cleared when deleting navigation data (although it is possible to clear it by selecting "passwords"). Two new user configurable flags are introduced: * kDisableTLSResumption, active by default * kLogTLSResumption, that would allow to find in logcat reused sessions in lines matching "SSL Log:" See also: * https://arxiv.org/abs/1810.07304 |
| Disable UA full version File: Disable-UA-full-version.patch | getHighEntropyValues will return only the major version |
| Disable Viewport Segments File: Disable-Viewport-Segments.patch | Disable Viewport Segments API, specifically for foldable devices, since it exposes the geometry of the fold. |
| Disable Web Bluetooth by default in desktop platforms File: Disable-Web-Bluetooth-by-default-in-desktop-platforms.patch | On desktop platforms, disable Bluetooth by default and activate the user-manageable content setting ui. |
| Disable WebGPU File: Disable-WebGPU.patch | |
| Disable all predictors code File: Disable-all-predictors-code.patch | |
| Disable all promo dialogs File: Disable-all-promo-dialogs.patch | |
| Disable conversion measurement api File: Disable-conversion-measurement-api.patch | Disable Conversion Measurement API by disabling the flag and removing support for the AttributionReporting provider. it also removes the handling of attributions via intents between apps. This patch enforces the deactivation by preventing the report from being sent and being saved to disk, although it is currently in uncalled code. |
| Disable crash reporting File: Disable-crash-reporting.patch | |
| Disable csp reports File: Disable-csp-reports.patch | |
| Disable css preferred text scale File: Disable-css-preferred-text-scale.patch | Do not expose the user's preferred font scale to CSS. |
| Disable device bound session File: Disable-device-bound-session.patch | Disable DBSC due to potential privacy issues see https://w3c.github.io/webappsec-dbsc/#privacy-considerations |
| Disable devtools remote and custom protocols File: Disable-devtools-remote-and-custom-protocols.patch | |
| Disable feeds support by default File: Disable-feeds-support-by-default.patch | |
| Disable fetching of all field trials File: Disable-fetching-of-all-field-trials.patch | Disable seed-based field trials. Disable reporting of Omnibox suggestions header. |
| Disable idle detection File: Disable-idle-detection.patch | |
| Disable integration with Gemini File: Disable-integration-with-Gemini.patch | Due to errors, some points are not covered by the gn arg check. This patch fixes build errors. |
| Disable media router and remoting by default File: Disable-media-router-and-remoting-by-default.patch | |
| Disable minidump upload scheduling File: Disable-minidump-upload-scheduling.patch | |
| Disable minikin hyphenation File: Disable-minikin-hyphenation.patch | |
| Disable offline autofetch flag File: Disable-offline-autofetch-flag.patch | Disable auto fetch of content when browser is online |
| Disable offline pages in CCT File: Disable-offline-pages-in-CCT.patch | |
| Disable omission of URL elements File: Disable-omission-of-URL-elements.patch | Disabling some omissions of complete urls |
| Disable plugins enumeration File: Disable-plugins-enumeration.patch | |
| Disable prefers reduced motion File: Disable-prefers-reduced-motion.patch | Disables the possibility of retrieving the device user setting via css prefers-reduced-motion |
| Disable prefers-reduced-transparency media query File: Disable-prefers-reduced-transparency-media-query.patch | This feature can be used for fingerprinting as it exposes a user preference |
| Disable privacy issues in password manager File: Disable-privacy-issues-in-password-manager.patch | Need: Add-cromite-flags-support.patch |
| Disable privacy sandbox File: Disable-privacy-sandbox.patch | Remove UI from the settings and set the flags to inactive Permanently removes FLoC support, disabling the download of LSH clusters, the marking the history navigation and the javascript API and permission policies. Also disable FirstPartySets and StorageAccessAPI. |
| Disable ranker_url_fetcher File: Disable-ranker-url-fetcher.patch | |
| Disable references to fonts.googleapis.com File: Disable-references-to-fonts.googleapis.com.patch | |
| Disable remote altsvc for h3 connections File: Disable-remote-altsvc-for-h3-connections.patch | and only sets the use of port 443 |
| Disable requests for single-word Omnibar searches File: Disable-requests-for-single-word-Omnibar-searches.patch | Patch from https://github.com/Eloston/ungoogled-chromium/issues/814#issuecomment-526873727 |
| Disable safety check File: Disable-safety-check.patch | |
| Disable smart selection by default File: Disable-smart-selection-by-default.patch | Allow web search in incognito mode; Smart Selection still disabled in incognito as per upstream. Partial revert of da1d809c003749846cb4ade8c11b6d038e44416b to restore the ChromeSmartSelection feature flag. |
| Disable some signed exchange features File: Disable-some-signed-exchange-features.patch | |
| Disable speechSynthesis getVoices API File: Disable-speechSynthesis-getVoices-API.patch | Adds flag disable-speechsynthesis-voice-list to disable SpeechSynthesis.getVoices() call. If not active the user must also set the system timezone override to enable it. Disable LiveCaption Require: Timezone-customization.patch |
| Disable support for pointer device id File: Disable-support-for-pointer-device-id.patch | disable pointerEvent.deviceId for Windows devices that are able to provide a GUID or serial number and id making them identical to the mouse pointer-id. see https://groups.google.com/a/chromium.org/g/blink-dev/c/3eU-AHH8x4k Need: Add-cromite-flags-support.patch |
| Disable text fragments by default File: Disable-text-fragments-by-default.patch | Revert "[Text Fragment] Unflag fragment directive removal." |
| Disable the DIAL repeating discovery File: Disable-the-DIAL-repeating-discovery.patch | This causes unnecessary SSDP network spam |
| Disable third-party origin trials File: Disable-third-party-origin-trials.patch | |
| Disable update scheduler File: Disable-update-scheduler.patch | |
| Disable various metrics File: Disable-various-metrics.patch | Disable metrics on all I/O threads Set initial metrics opt-out Disable metrics collection for NTP tiles Fix startup crash for debug builds (uazo) |
| Disable visited pseudo class File: Disable-visited-pseudo-class.patch | Disable support for pseudo css visited class |
| Disallow Android App Scheme as referrer File: Disallow-Android-App-Scheme-as-referrer.patch | |
| Disallowing MIDI permission by default File: Disallowing-MIDI-permission-by-default.patch | |
| Do not block the build for incompatible profiles File: do-not-block-build-incompatible-profiles.patch | |
| Do not build API keys infobar File: Do-not-build-API-keys-infobar.patch | |
| Do not compile QR code sharing File: Do-not-compile-QR-code-sharing.patch | |
| Do not ignore download location prompt setting File: Do-not-ignore-download-location-prompt-setting.patch | Upstream has decided that it works as intended (https://bugs.chromium.org/p/chromium/issues/detail?id=916606) but users would like to decide where to save a file even when there is no SD card available; do not skip the prompt in such cases. Do not tick "Don't show again" by default |
| Do not link with libatomic File: Do-not-link-with-libatomic.patch | Compiler has built-in support thus libatomic linking is no more needed This patch allows building with use_sysroot=false |
| Do not store passwords by default File: Do-not-store-passwords-by-default.patch | |
| Do not use Windows ClearType Text Tuner setting File: Do-not-use-Windows-ClearType-Text-Tuner-setting.patch | |
| DoH improvements File: DoH-improvements.patch | Enable secure mode by default Always enforce DoH even with inconsistent system DNS configuration |
| Enable -fwrapv in Clang for non-UBSan builds File: Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch | Using -fwrapv (notably only when not using signed integer overflow checking - since it will override it and result in not performing checks) is just common sense since it eliminates the chance of security vulnerabilities being introduced by optimizations based on signed overflow being undefined. That has happened before, and those optimizations don't even add up to a 0.1% performance increase for this kind of software. It's not worth having. The Linux kernel passes -fwrapv and also -fno-strict-aliasing to disable those dangerous optimizations (since there is so much incorrect code they can break). In fact, it is easy to point to dozens of known examples of invalid code that could potentially be broken by those optimizations. It is not acceptable for projects to be using optimizations that are known to be broken with a bunch of code in their tree. They put barely any effort into even fixing the known cases. Chromium has blacklists for UBSan for 'false positives' (none of which are actually false positives, but rather "undefined, but not a bug beyond potentially being broken by optimizations or even code generation without them") and also for components too full of these bugs for them to currently want to bother with it. That includes a bunch of signed overflow issues (there is sadly no detection for aliasing violations, which are fairly common, but not that common). Ideally, -fwrapv could be always passed, but unfortunately the way it is implemented has silly interactions with other switches. The reason it would still make sense to pass it is because due to their UBSan blacklists, they get far from full coverage with it, so -fwrapv would still be better than nothing where it's not being used. Since -fwrapv makes signed integer overflow well-defined, Clang will disable the UBSan checks for signed integer overflow, including in the production-oriented trapping mode used for hardening. Excerpt from https://github.com/bromite/bromite/issues/226 |
| Enable Android DevTools Frontend File: Enable-Android-DevTools-Frontend.patch | Enable the Android DevTools frontend and remove Android-specific UI restrictions that prevented access to developer features on phones. |
| Enable Android Dynamic Performance Framework File: Enable-Android-Dynamic-Performance-Framework.patch | |
| Enable Cert Management UI File: Enable-Cert-Management-UI.patch | Activates the ui of certificate management in desktop platforms, disabling the use of system certificates by default (which can be activated from the ui). |
| Enable Certificate Transparency File: Enable-Certificate-Transparency.patch | Reporting/auditing functionalities are disabled; a flag is exposed. Add guard to make sure that certificate transparency stays enabled by default. |
| Enable ClientHello Segmentation File: Enable-ClientHello-Segmentation.patch | Allows the ClientHello packet to be sent by segmenting it into multiple packets. Can be useful for circumventing censorship via DIP introspection. The patch automatically disables the mode in case of outdated or incompatible servers, if the TLS handshake fails or times out. The mode is accessible via the flag clienthello-fragmentation and is currently disabled. Based on the work of Shukan (https://habr.com/ru/articles/954284) |
| Enable Do-Not-Track by default File: Enable-Do-Not-Track-by-default.patch | |
| Enable Document Open Inheritance Removal File: Enable-Document-Open-Inheritance-Removal.patch | |
| Enable Global Privacy Control File: Enable-Global-Privacy-Control.patch | |
| Enable HEVC by default File: Enable-HEVC-by-default.patch | Add a guard to avoid setting to be disabled upstream. |
| Enable HighEfficiencyMode by default File: Enable-HighEfficiencyMode-by-default.patch | Only valid for desktop platform: activation of auto freeze in background tabs with high CPU consumption, which is not visible from the ui and therefore not user controllable. The feature is controlled by the "freezing-without-battery-saver" flag active by default. |
| Enable ImprovedBookmarks by default File: Enable-ImprovedBookmarks-by-default.patch | |
| Enable StrictOriginIsolation and SitePerProcess File: Enable-StrictOriginIsolation-and-SitePerProcess.patch | Enable the StrictOriginIsolation feature and the SitePerProcess preference. SitePerProcess: bypass any device memory size check. SitePerProcess: always consider enterprise policies applicable. |
| Enable component updater File: Enable-component-updater.patch | Activates component updaters in one-shot mode: downloading occurs only once and updates are inhibited. Only cromite-specific components can be enabled. |
| Enable darken websites checkbox in themes File: Enable-darken-websites-checkbox-in-themes.patch | Unexpire #darken-websites-checkbox-in-themes-setting |
| Enable extensions in incognito File: Enable-extension-in-incognito.patch | Full activation of incognito mode in experimental extension |
| Enable gwp asan on Android File: Enable-gwp-asan-on-Android.patch | the patch enables gwp asan in android and changes the activation conditions to 50% for all build configs. in android there is a test function accessible in the developer settings. |
| Enable menu on reload button File: Enable-menu-on-reload-button.patch | Activate right-button submenu in reload (desktop platforms). Patch derived from the ungoogled-chromium patch of the same name. |
| Enable native Android autofill File: Enable-native-Android-autofill.patch | There are 2 different types of autofill: one managed via GCM and the native Android one that uses the provider assigned by the user (which can be any user installed app like Bitwarden for example). In chromium GCM is active while in the WebView the latter. This patch uses WebView code to enable native Android autofill along with browser-managed autofill. A separate toggle is introduced to enable autofill in incognito mode. See also: https://github.com/bromite/bromite/issues/547 |
| Enable network isolation features File: Enable-network-isolation-features.patch | Enable SplitCacheByNetworkIsolationKey, kSplitHostCacheByNetworkIsolationKey, kPartitionConnectionsByNetworkIsolationKey, kPartitionHttpServerPropertiesByNetworkIsolationKey, kPartitionSSLSessionsByNetworkIsolationKey, PartitionExpectCTStateByNetworkIsolationKey, PartitionNelAndReportingByNetworkIsolationKey, kSplitCacheByNavigationInitiator |
| Enable platform aac audio and h264 video File: Enable-platform-aac-audio-and-h264-video.patch | Allows the activation in android and windows of aac and h264 decoding via the s.o. libraries, replacing ffmpeg which does not have the necessary licences. |
| Enable share intent File: Enable-share-intent.patch | This patch allows to activate the management of android.intent.action.SEND with new flag "shared-intent-ui" default active. See also: https://github.com/bromite/bromite/issues/1062 |
| Enable snackbar swipe File: Enable-snackbar-swipe.patch | Allows swipe of snackbar notifications |
| Enable third-party storage partitioning File: Enable-third-party-storage-partitioning.patch | |
| Enables deactivation of the js debugger statement File: Enables-deactivation-of-the-js-debugger-statement.patch | enables a new option in the developer tools settings for deactivating the debugger javascript statement |
| Enables keyword-based site search on Android devices File: Enables-keyword-based-site-search-on-Android-devices.patch | Enables keyword-based site search functionality on Android devices |
| Experimental support for extensions on Android File: Experimental-support-for-extensions-on-Android.patch | Enable experimental support for extensions in Android. The feature is disabled by default: to enable it, go to Settings/Developer Options. A Clear all data used by the extension button is available in App info/Storage and cache/Clear storage to completely remove the extensions folder in case of a crash on startup. |
| Experimental user scripts support File: Experimental-user-scripts-support.patch | Activate the user scripts functionality for Android, as it is available in the Desktop version. It is possible to add user scripts in two ways: by selecting files from the picker in the settings or downloading the scripts and opening them from downloads (only if such files end with '.user.js'). New imported scripts are disabled by default: they can be activated via the UI. Parsed user script headers are: name, version, description, include, exclude, match, exclude_match (only http and https), run-at (document-start, document-end, document-idle), homepage, url_source The UI also allows you to see the source of the script. See also: components/user_scripts/README.md Requires patch: Adds-support-for-writing-URIs.patch |
| Eyeo Adblock for Cromite File: Eyeo-Adblock-for-Cromite.patch | Change the normal behaviour of Eyeo Chromium SDK to suit Cromite logic. |
| Fix chromium build bugs File: Fix-chromium-build-bugs.patch | because of https://bugs.chromium.org/p/chromium/issues/detail?id=1491776#c10 |
| Fix chromium vanilla File: Fix-chromium-vanilla.patch | Fixes some crashes in start-up (only chromium vanilla) |
| Fix crash on customize profile ui File: Fix-crash-on-customize-profile-ui.patch | |
| Fonts fingerprinting mitigation File: Fonts-fingerprinting-mitigation.patch | The patch disables the use of non-standard fonts by blink, used for device fingerprinting. Access to local fonts and downloading fonts via Android Downloadable Fonts API is disabled. In windows, the patch exposes only fonts from the default installation based on the user language exposed to the websites, eliminating the ability to retrieve fonts handled differently by gdi and directwrite. It is possible to restore the original behavior via the fonts-fingerprint-mitigation flag, which is active by default. |
| Force use vpython3 for all scripts File: Force-use-vpython3-for-all-scripts.patch | Some scripts need the latest version of python not available in the docker container. The patch forces the use of python in the virtual environment in the version required by the chromium build tools. |
| Guard for user-agent reduction File: Guard-for-user-agent-reduction.patch | |
| Hardening against incognito mode detection File: Hardening-against-incognito-mode-detection.patch | |
| High Resolution Timing Mitigation File: High-Resolution-Timing-Mitigation.patch | Decreases high timer resolution in Blink. |
| History number of days privacy setting File: History-number-of-days-privacy-setting.patch | Adds a new option in the privacy settings that allows the selection of the days to keep in the browsing history. Selecting the "Never" item activates the kSavingBrowserHistoryDisabled flag and immediately deletes all the history. Some parts authored by csagan5. |
| Ignore enterprise policies for secure DNS File: Ignore-enterprise-policies-for-secure-DNS.patch | |
| Immediately destroy shared workers when closing the page File: Immediately-destroy-shared-workers-when-closing-the-page.patch | Chromium is planning to keep shared workers active even after the page is closed, up to a timeout, to compensate for the permanent deactivation of the unload event. This feature is used to send pings from the page. Cromite already does not allow any information to be sent via the network to the unload event. |
| Improve plain text rendering on mobile File: Improve-plain-text-rendering-on-mobile.patch | |
| Improve the browser sandbox File: Improve-the-browser-sandbox.patch | by enabling network service sandbox and CIG in windows and using the new flags on android |
| Increase number of autocomplete matches to 10 File: Increase-number-of-autocomplete-matches-to-10.patch | Patch adapted from https://github.com/Eloston/ungoogled-chromium/issues/814#issuecomment-526874703 |
| Internal firewall File: Internal-firewall.patch | Introduces a kind of firewall on http calls made by the browser that allows selective blocking via the NetworkTrafficAnnotationTag. allowed or explicitly blocked calls are defined in services/firewall/tools/rules.xml |
| Invalidate components public key File: Invalidate-components-public-key.patch | This prevents usage of any signed component |
| JIT site settings File: JIT-site-settings.patch | Adds a content setting to manage Javascript JIT, disabled by default. Since the interface of the content settings foresees an eTLD origin it requires the activation of SitePerProcess and StrictOriginIsolation to make sure that the instantiated RenderProcess can have JIT correctly set. Without those features, the RenderProcess would be shared between all eTLD+1. note: needs SitePerProcess and StrictOriginIsolation flags enabled Require: Content-settings-infrastructure.patch |
| Keep ComputePressure disabled File: Keep-ComputePressure-disabled.patch | |
| Keep Manta Service Disabled File: Keep-Manta-Service-Disabled.patch | |
| Keep Side Panel Companion disabled File: Keep-Side-Panel-Companion-disabled.patch | |
| Keep disabled CpuPerformance File: Keep-disabled-CpuPerformance.patch | Keep disabled CpuPerformance due to potential privacy issues see https://github.com/explainers-by-googlers/cpu-performance?tab=readme-ov-file#accessibility-privacy-and-security-considerations |
| Keep disabled FetchLaterAPI File: Keep-disabled-FetchLaterAPI.patch | Disallow a network request to survive to context destoy. For Request with active keepalive, if the request does not start from the same origin. It also inhibits the blocked request exception to javascript. |
| Keep disabled WebViewMediaIntegrityApi File: Keep-disabled-WebViewMediaIntegrityApi.patch | Disables a new mechanism similar to Web Environment Integrity API in use in webviews see https://issuetracker.google.com/issues/327186031 https://android-developers.googleblog.com/2023/11/increasing-trust-for-embedded-media.html need: Add-cromite-flags-support.patch |
| Keep disabled cache sharing for pervasive scripts File: Keep-disabled-cache-sharing-for-pervasive-scripts.patch | Keeps disabled the new feature that allows bypassing the cache partition for specific urls. |
| Keep empty tabs between sessions File: Keep-empty-tabs-between-sessions.patch | |
| Keep flag to allow screenshots in Incognito mode File: Keep-flag-to-allow-screenshots-in-Incognito-mode.patch | See also: * https://github.com/bromite/bromite/issues/551 * https://github.com/bromite/bromite/issues/1816 * https://bugs.chromium.org/p/chromium/issues/detail?id=920762 |
| Keyboard protection flag File: Keyboard-protection-flag.patch | Hides user preference on the system keyboard by setting the standard eng layout and removing the layout information from the javascript keyboard events. |
| Lock Profile Cookie Database File: Lock-Profile-Cookie-Database.patch | |
| Log dangling attributes in some html elements File: Log-dangling-attributes-in-some-html-elements.patch | Log for iframes and the base tag all attributes containing newlines or the less-then sign that can be exploited to extract or send otherwise inaccessible information. under enable-log-dangling-attributes about flag |
| Logcat crash reports UI File: Logcat-crash-reports-UI.patch | |
| Media fingerprinting mitigations File: Media-fingerprinting-mitigations.patch | Removes the ability to understand the capabilities of the video card in windows. See https://github.com/uazo/cromite/issues/862 |
| Modify default preferences File: Modify-default-preferences.patch | |
| Move navigation bar to bottom File: Move-navigation-bar-to-bottom.patch | Adds an accessibility flag that allows navigation bar to be moved to the bottom. Unlike what is present in other browsers, this actually moves the bar below, without creating other elements. The bottom bar will also be colored as the navigation bar to make the interface more pleasant and fixes upstream bug 1285311. Support for tablet mode is also included. Need: bromite-build-utils.patch |
| Move some account settings back to privacy settings File: Move-some-account-settings-back-to-privacy-settings.patch | Search suggestions, autofill assistant and contextual search |
| Multi-Screen Window Placement API fix File: Multi-Screen-Window-Placement-API-fix.patch | Links the use of screen.isExtended to WINDOW_MANAGEMENT permission granted by user |
| Multiple fingerprinting mitigations File: Multiple-fingerprinting-mitigations.patch | 1. measureText: add fingerprinting mitigation Scale the result of Canvas::measureText by a random +/-3/1000000th of the original value for each float in the returned Rect/Quad. 2. Canvas: fingerprinting mitigations for image data Modify the color data returned by ToBlob, ToDataURL and getImageData so that it will contain randomly manipulated pixels (maximum 20) that slightly change the color of the R,G,B components without a visible effect. Credits to Slaviro (https://github.com/Slaviro) for coming up with a better approach to change color components. Added flag --fingerprinting-canvas-image-data-noise to disable Canvas image data fingerprinting deception Add noise also to SVGs (credits to uazo) |
| Never fetch popular sites File: Never-fetch-popular-sites.patch | |
| Never treat Proguard warnings as errors File: Never-treat-Proguard-warnings-as-errors.patch | |
| Never use HTTP probes for connection detection File: Never-use-HTTP-probes-for-connection-detection.patch | This patch disables the use of HTTP probes on Android < M devices Connection will be always considered valid on such devices |
| OpenSearch: miscellaneous File: OpenSearch-miscellaneous.patch | Fix upstream bug with recently added engines prematurely discarded because they have no last-visit timestamp Fix upstream bug with visited engines visit time not updated Allow using search engine URLs with non-empty paths Add verbose logging |
| Override Navigator Language File: Override-Navigator-Language.patch | Uses the first of the accept-languages as the system language for blink and fix the selection in the UI for the browser language |
| Override the MV2 deprecation File: Override-the-MV2-deprecation.patch | Uses the flag used in tests to forcibly enable MV2 |
| Partition Blink memory cache File: Partition-Blink-memory-cache.patch | Blink's in-memory cache is not partitioned (see also: http://crbug.com/1127971) This patch partitions it by the top-level site. This mitigation is effective in case the rendering process is re-used, because on such case the cache would be re-used as well and transfer information between different contexts. See also: * https://github.com/bromite/bromite/pull/2173 |
| Partition HSTS cache by NAK File: Partition-HSTS-cache-by-NAK.patch | |
| Partition MediaDeviceId by default File: Partition-MediaDeviceId-by-default.patch | and, in windows, hide the presence of the webcam if the user has not given permission |
| Partition blobs by top frame URL File: Partition-blobs-by-top-frame-URL.patch | Verifies that the blob was created with the same top frame URL or, if not defined, by the same agent cluster. |
| Partitioning all cookies by top frame domain File: Partitioning-all-cookies-by-top-frame-domain.patch | Enables cookie partitioning by top frame etld, respecting the user's possible wish to disable all third-party cookies. Disabling the flag via the ui restores the normal mode, where samesite=none first-party cookies are sent in third-party contexts. |
| Permit PGO for debug builds File: Permit-PGO-for-debug-builds.patch | |
| Prevent mouse wheel fingerprinting on Windows File: Prevent-mouse-wheel-fingerprinting-on-Windows.patch | |
| Private network access content settings File: Private-network-access-content-settings.patch | Block access to the local network by default in android while allowing user choice in desktop platforms. |
| PublicKeyCredential fingerprinting mitigations File: PublicKeyCredential-fingerprinting-mitigations.patch | Removes the possibility of obtaining the presence of Windows Hello and Bluetooth by querying the PublicKeyCredential of the webauth api in the Windows platform |
| Re-introduce modal dialog flag to close all tabs File: Re-introduce-modal-dialog-flag-to-close-all-tabs.patch | Revert "[Tab Management] Cleanup close all tabs modal dialog flags" This reverts commit 614a998c5af5dcd36baffa6d65090c0b8decb03f. |
| Re-introduce override_build_timestamp File: Re-introduce-override_build_timestamp.patch | Revert "Remove override_build_date gn arg." This reverts commit e335101eedd3ab28d16dcb4b22e5ee0b60044b89. Use (overriden) build timestamp for chrome_version_id |
| Reduce HTTP headers in DoH requests to bare minimum File: Reduce-HTTP-headers-in-DoH-requests-to-bare-minimum.patch | |
| Remove ChromiumNetworkAdapter File: Remove-ChromiumNetworkAdapter.patch | Removes from java code the ability to make http connections without asking the native code |
| Remove EV certificates File: Remove-EV-certificates.patch | The team chose to let EV certificates appear just like normal certificates. The web of trust is considered a failure in itself, so do not give users a false sense of extra security with EV certs. Instead, let them appear just like regular ones. |
| Remove HTTP referrals in cross origin navigation File: Remove-HTTP-referrals-in-cross-origin-navigation.patch | The patch removes the referrals if the navigation is cross-origin and occurs in the top frame. The value is not removed across iframes because the referrals are statically defined by the HTML and the Javascript of the page, and therefore they do not tell anything about the user. Also, some services may not work, such as video iframes. A preference is also introduced to completely removes referrals management, for advanced users. |
| Remove SMS integration File: Remove-SMS-integration.patch | |
| Remove auth header upon cross origin redirect File: Remove-auth-header-upon-cross-origin-redirect.patch | |
| Remove binary blob integrations File: Remove-binary-blob-integrations.patch | Remove dependency on com.google.android.gms.auth kill GCM Remove dependency on com.google.android.gcm Remove dependency on com.google.android.gms.gcm It also disables Snippets, auto-update of offline pages and launching browser from background service. The snippets are already disabled in native codes, this will disable it on Java level. Remove dependency on com.google.android.play Remove dependency on vision, clearcut and phenotype Remove dependency on flags, places and stats Remove dependency on fido, iid, instantapps, location Remove dependency on com.google.android.gms.cast Remove dependency on auth, signin, dynamic and tasks Remove google_services_gcm ungoogled-chromium: Disable GCM Disable Google Cloud Messaging (GCM) client Disable web authentication phone support Parts of this patch were developed by csagan5, uazo and others. |
| Remove blocklisted URLs upon bookmark creation File: Remove-blocklisted-URLs-upon-bookmark-creation.patch | |
| Remove detection of captive portals File: Remove-detection-of-captive-portals.patch | |
| Remove help menu item File: Remove-help-menu-item.patch | |
| Remove navigator.connection info File: Remove-navigator.connection-info.patch | Change the result of navigator.connection to default values and disable observers |
| Remove segmentation platform File: Remove-segmentation-platform.patch | Also fixes a crash on startup. |
| Remove sideloading of version.dll File: Remove-sideloading-of-version-dll.patch | Disabling support for local version.dll loading in windows |
| Remove support for device memory and cpu recovery File: Remove-support-for-device-memory-and-cpu-recovery.patch | |
| Remove voice recognition integration File: Remove-voice-recognition-integration.patch | |
| Remove window name on cross origin navigation File: Remove-window-name-on-cross-origin-navigation.patch | See also: https://trac.webkit.org/changeset/209076/webkit |
| Replace DoH probe domain with RIPE domain File: Replace-DoH-probe-domain-with-RIPE-domain.patch | Replace known good hostname |
| Restore BookmarkToolbar#setCurrentFolder File: Restore-BookmarkToolbar-setCurrentFolder.patch | restore https://chromium-review.googlesource.com/c/chromium/src/+/5554182 |
| Restore LastTabStandingTracker File: Restore-LastTabStandingTracker.patch | |
| Restore Search Ready Omnibox flag File: Restore-Search-Ready-Omnibox-flag.patch | Revert "Cleanup Search Ready Omnibox flag since it has launched" This reverts commit ae458edcc8422d0815d0e82261e71fe10d7d6fc2. Disable search-ready omnibox by default |
| Restore Simplified NTP launch File: Restore-Simplified-NTP-launch.patch | This reverts commit 4d0e4483c5f77c66a8b6193e8a3bec5d0624d6ad. |
| Restore adaptive-button-in-top-toolbar-customization File: Restore-adaptive-button-in-top-toolbar-customization.patch | This reverts commit 18d03b9cca4e90d2a446ea28266876d8c5fdc4f0. Voice button and legacy share/voice functionality is not restored. |
| Restore chrome password store File: Restore-chrome-password-store.patch | Allows the use of local storage for passwords on Android Adds the possibility of importing and exporting a csv file containing the list of passwords, with the same functionality available on desktops. |
| Restore classic new tab page File: Restore-classic-new-tab-page.patch | |
| Restore offline-indicator-v2 flag File: Restore-offline-indicator-v2-flag.patch | Reverts acc8b6f4542703211e5f3c5181914fd3374c9e84 |
| Revert Permit blocking of view-source File: Revert-Permit-blocking-of-view-source.patch | This reverts commit e72fc9b64116bf259e516096fcc60b58ae8ae1b3. |
| Revert flags: remove disable-pull-to-refresh-effect File: Revert-flags-remove-disable-pull-to-refresh-effect.patch | This reverts commit 4e598f38a0e6dd3dbede009c6a99b2a520a94e1f. |
| Revert flags: remove num-raster-threads File: Revert-flags-remove-num-raster-threads.patch | This reverts commit 2a51528a1737e9038f7f96f29403032a6a845a25. |
| Revert removal of execution context address space File: Revert-removal-of-execution-context-address-space.patch | Revert "[Private Network Access] Remove ExecutionContext::SetAddressSpace()." This reverts commit dfa3a4a6c0d023e5126dad31f6c479dc8d20e416. Revert "[Private Network Access] Remove ExecutionContext::AddressSpace()." This reverts commit a5c64b9f5f985cfebab3375b53062321a62e3e31. Revert "[Private Network Access] Remove GlobalScopeCreationParams address space." This reverts commit c32df617780283942d49ca5574fcd6b7f691e9c1. Revert "[Private Network Access] Remove WorkerClassicScriptLoader address space." This reverts commit 11f6a3e29bee9a6590a4fd56b28e8048200c18d0. |
| Revert remove AllowScript content settings per secondary url File: Revert-remove-allowscript-content-setting-secondary-url.patch | https://chromium-review.googlesource.com/c/chromium/src/+/5307559 |
| Samsung Note 9 SDK27 crazylinker workaround File: Samsung-Note-9-SDK27-crazylinker-workaround.patch | |
| Set caret blink interval to default File: Set-caret-blink-interval-to-default.patch | Disable the use of the system setting for the caret blink interval |
| Set the screen frame rate to 60 Hz File: Set-the-screen-frame-rate-to-60-Hz.patch | Set the screen refresh rate to 60Hz by default, increasing it if necessary in cases where the system only supports lower frequencies (such as in RDP or virtual systems). The feature can be disabled using the throttle-main-thread-to-60hz flag (enabled by default). |
| Show NTP at startup File: Show-NTP-at-startup.patch | Adds an active option by default to automatically open the NTP at each reboot and allows the user to continue the old browsing. Until the real tab is opened, no data is retrieved. |
| Show site settings for cookies, javascript and ads File: Show-site-settings-for-cookies-javascript-and-ads.patch | Avoid displaying info about intrusive ads |
| Site setting for images File: Site-setting-for-images.patch | Require: Content-settings-infrastructure.patch |
| Supporting Dangling Ptr Detection via BackupRefPtr File: Supporting-Dangling-Ptr-Detection-via-BackupRefPtr.patch | Enable Dangling Ptr Detection (DPD) via BackupRefPtr (BRP) (disabled by default) and additional safety checks that are too expensive to have on by default. Enable checking raw_ptr do not become dangling during their lifetime. Write a fixed cookie pattern at the end of each allocation to ensure there is no OOB write. Enable MTE activation in Android for enabled devices (flag disabled by default) BRP and MTE activate additional checks related to memory usage at the expense of performance and increased memory usage, but guarantee the user that the browser will not suffer from development errors related to memory management. |
| Switch to -fstack-protector-strong File: Switch-to-fstack-protector-strong.patch | This compiler option is already used for ChromeOS, but not yet on other platforms because there is push back against enabling an option resulting in ~1-2% lower performance and ~2-3% larger binaries. The size increase on Android is something they care a lot about since some devices have very little storage space. That also means ever so slightly higher memory/cache usage but not by the full 2-3%. |
| TEMP Add a log to track strange behavior File: TEMP-Add-a-log-to-track-strange-behavior.patch | |
| Temp disable UseContextSnapshot File: Temp-disable-UseContextSnapshot.patch | Temporarily disable the context snapshot of blink and use that of v8. |
| Temp disable experimental-web-platform-features File: Temp-disable-experimental-web-platform-features.patch | |
| Temp disable predictive back gesture File: Temp-disable-predictive-back-gesture.patch | |
| Temp guard FileSystemAccessPersistentPermissions File: Temp-guard-FileSystemAccessPersistentPermissions.patch | |
| Temp use PREVIEW for IDCompositionDevice5 File: Temp-use-PREVIEW-for-IDCompositionDevice5.patch | Temporarily restore the statement from v141 while waiting to update the Windows SDK. See Remove preview usage of DynamicTexture DComp APIs. https://chromium-review.googlesource.com/c/chromium/src/+/6902339 |
| Timezone customization File: Timezone-customization.patch | Allow specifying a custom timezone, or using a random one. See also: https://github.com/bromite/bromite/wiki/TimezoneOverride Require: Content-settings-infrastructure.patch |
| Try to fix 2082 File: Try-to-fix-2082.patch | |
| Use 64-bit WebView processes File: Use-64-bit-WebView-processes.patch | 64-bit processes introduce 10% or so higher memory consumption. The reason for preferring 64-bit processes is providing substantially better exploit mitigations at the expense of slightly more memory usage. In addition to the standard mitigations, it also enables usage of https://github.com/AndroidHardening/hardened_malloc (where available). It will provide high entropy ASLR (24-bit to 32-bit depending on whether the kernel uses 3 or 4 level page tables rather than 16-bit for 32-bit processes), high entropy stack canaries (56/64-bit instead of 24/32-bit depending on whether a zero byte is used) and also features like pointer authentication and memory tagging when those are made available in the future. The reason why upstream started preferring 32-bit processes is to save memory, particularly since saving memory makes it feasible to use finer-grained sandboxing. |
| Use BoringSSL for RandBytes File: Use-BoringSSL-for-RandBytes.patch | |
| Use browser navigation handler File: Use-browser-navigation-handler.patch | Added a flag in the settings to restore the pre-A12 navigation mode. Pulling the edge to the right will go backwards, pulling it further forwards. |
| Use dummy DFM installer File: Use-dummy-DFM-installer.patch | |
| Use list mode for tab switcher File: Use-list-mode-for-tab-switcher.patch | Added a setting for the option need: Add-cromite-flags-support.patch |
| User agent customization File: User-agent-customization.patch | Add possibility to define a custom User agent for mobile and desktop mode. Add possibility to reactivate the metatag view for desktop mode. The menu item in the hamburger menu applies to the tab only, whereas the content setting is intended for use in a specific site. |
| Viewport Protection flag File: Viewport-Protection-flag.patch | Scale the viewport and the screen by a random factor to prevent coordinate-based fingerprinting scripts. The factor is changed at each change of origin. The feature is controlled by a feature flag (default enabled) Require: Content-settings-infrastructure.patch |
| WIN Add some prefs to secure preferences File: WIN-Add-some-prefs-to-secure-preferences.patch | |
| WIN Disable TabHoverCard images File: WIN-Disable-TabHoverCard-images.patch | |
| WIN Disable first run File: WIN-Disable-first-run.patch | |
| WIN Disable search for image File: WIN-Disable-search-for-image.patch | |
| WIN Disable updater File: WIN-Disable-updater.patch | |
| WIN Fix log to file File: WIN-Fix-log-to-file.patch | Allows log activation without opening the console window. Log rotation enabled by default. |
| WIN disable annotate downloads File: WIN-disable-annotate-downloads.patch | |
| WIN enable pdf plugin File: WIN-enable-pdf-plugin.patch | |
| Warning message for unsupported hardware aes File: Warning-message-for-unsupported-hardware-aes.patch | In boringssl the lack of support for native aes instructions in the cpu leads to a change in the order of the encryption methods in the tls1.3 stack and thus to an additional fingerprint bit. The use of software aes is discouraged due to possible side channel attacks, so it is better to warn the user of the presence of an unsupported device. you can remove the message by going to chrome://flags/#no-hw-aes-warning |
| Welcome screen File: Welcome-screen.patch | Allow toggling automatic updates |
| allow the download of clang for windows crossbuild File: allow-the-download-of-clang-for-windows-crossbuild.patch | In the linux2win crossbuild some libraries are not checkout by default and launching tools/clang/scripts/update.py deletes by default the previous package. this patch bypasses the output directory deletion, allowing the windows toolchain to be downloaded on top of the android one |
| autofill: miscellaneous File: autofill-miscellaneous.patch | Make sure that autofill is disabled by default (Jan Engelhardt jengelh@inai.de) Disable autofill download manager (Jan Engelhardt jengelh@inai.de) Disable autofill assistant and CC (csagan5) Disable autofill server communication by default (Daniel Micay danielmicay@gmail.com) Do not skip google.com domains for password generation (csagan5) Disable deeplinks |
| bromite build utils File: bromite-build-utils.patch | |
| disable AdsBlockedInfoBar File: disable-AdsBlockedInfoBar.patch | |
| disable WebView variations support File: disable-WebView-variations-support.patch | |
| disable appending variations header File: disable-appending-variations-header.patch | |
| disable battery status updater File: disable-battery-status-updater.patch | The W3C Battery Status API[1] has quite a laughable statement: "The information disclosed has minimal impact on privacy or fingerprinting, and therefore is exposed without permission grants". Along comes a paper "The leaking battery, A privacy analysis of the HTML5 Battery Status API." Clean up after the W3C and disable the battery status updater which could be used to identity users[2]. [1] http://www.w3.org/TR/battery-status/ [2] https://eprint.iacr.org/2015/616.pdf References: https://github.com/iridium-browser/iridium-browser/issues/40 |
| dns: send IPv6 connectivity probes to RIPE DNS File: dns-send-IPv6-connectivity-probes-to-RIPE-DNS.patch | Short of disabling the code (we may do that in a subsequent patch anyway), avoid sending to Google. Increase probe period from 1s to 15s |
| do not add suffix to package name File: do-not-add-suffix-to-package-name.patch | |
| do not hide .orig files File: do-not-hide-.orig-files.patch | |
| enable -ftrivial-auto-var-init=zero File: enable-ftrivial-auto-var-init-zero.patch | |
| eyeo Browser Ad filtering Solution: Android API Module File: eyeo-133.0.6943.49-android_api.patch | Based on Chromium 133.0.6943.49 Pre-requisites: eyeo Browser Ad filtering Solution: Base Module |
| eyeo Browser Ad filtering Solution: Android Settings UI Module File: eyeo-133.0.6943.49-android_settings.patch | Based on Chromium 133.0.6943.49 Pre-requisites: eyeo Browser Ad filtering Solution: Base Module and Android API Module |
| eyeo Browser Ad filtering Solution: Base Module File: eyeo-133.0.6943.49-base.patch | Based on Chromium 133.0.6943.49 |
| eyeo Browser Ad filtering Solution: Chrome Integration Module File: eyeo-133.0.6943.49-chrome_integration.patch | Based on Chromium 133.0.6943.49 Pre-requisites: eyeo Browser Ad filtering Solution: Base Module |
| eyeo Browser Ad filtering Solution: Extension API Module File: eyeo-133.0.6943.49-extension_api.patch | Based on Chromium 133.0.6943.49 Pre-requisites: eyeo Browser Ad filtering Solution: Base Module |
| final patch for chromium vanilla File: Final-patch-for-chromium-vanilla.patch | Mark the latest patch for chromium vanilla |
| kill Auth File: kill-Auth.patch | |
| kill Location, fall back to system File: kill-Location-fall-back-to-system.patch | |
| kill Vision File: kill-Vision.patch | Barcode, face and text detection APIs |
| mime_util: force text/x-suse-ymp to be downloaded File: mime_util-force-text-x-suse-ymp-to-be-downloaded.patch | YMP files (YaST One Click Install) are plaintext XML, but also not very interesting in themselves. Force them to be stored. |
| prefs: always prompt for download directory File: prefs-always-prompt-for-download-directory.patch | If the user opens a link, one of two things might happen. The URI resolves to a "web page" and will be displayed, then everything is good. Or it has a MIME type like application/* or so that causes the browser to consider it a file download instead. In that case, one of two things might happen. The browser may display a dialog box asking explicitly for an action, then everything is good. Or it does not and instead readily stores the file on disk. (Modern browsers also download the file in the background when waiting for the dialog box confirmation, but that is a separate tuning knob.) When the file is chosen to be immediately stored on disk without user interaction, the visual feedback for this may be rather miniscule. And then, you have to open a terminal or file manager again just to move the file to the location you wanted it to be in in the first place. TLDR: Do not let files sneak onto the disk too easily. |
| profile-resetter: disable send-settings File: profile-resetter-disable-send-settings.patch | When the user wishes to reset his preferences, Chromium would suggest to send over the old settings to Google. I presume that this is for Google to investigate into the setting combinations that led the user to issue a rest. Of course, we cannot let that happen by default. Google is not to get any information. |
| sharing hub: always use visible URL File: sharing-hub-always-use-visible-URL.patch | |
| translate: disable fetching of languages from server File: translate-disable-fetching-of-languages-from-server.patch | |
| ungoogled-chromium: Disable Network Time Tracker File: ungoogled-chromium-Disable-Network-Time-Tracker.patch | This connects to Google to check if the system time is correct when a website certificate date seems incorrect, according to https://bugs.chromium.org/p/chromium/issues/detail?id=725232 Fixes https://github.com/Eloston/ungoogled-chromium/issues/302 |
| ungoogled-chromium: Disable intranet detector File: ungoogled-chromium-Disable-intranet-detector.patch | Disables the intranet redirect detector. It generates extra DNS requests and the functionality using this is disabled. See this page for more information: https://mikewest.org/2012/02/chrome-connects-to-three-random-domains-at-startup |
| ungoogled-chromium: Disable profile avatar File: ungoogled-chromium-Disable-profile-avatar.patch | Added some Bromite-specific further improvements |
| ungoogled-chromium: Disable translate integration File: ungoogled-chromium-Disable-translate-integration.patch | Remove translate offer |
| ungoogled-chromium: Disable untraceable URLs File: ungoogled-chromium-Disable-untraceable-URLs.patch | Disable additional URLs that are not caught by the "trk" scheme |
| ungoogled-chromium: Disable webRTC log uploader File: ungoogled-chromium-Disable-webRTC-log-uploader.patch | |
| ungoogled-chromium: no special hosts/domains File: ungoogled-chromium-no-special-hosts-domains.patch | Disables various detections of Google hosts and functionality specific to them Disable domain reliability detection |
| webRTC: do not expose local IP addresses File: webRTC-do-not-expose-local-IP-addresses.patch | Prevent leaks of local IP address and public IP address (when using VPN) See also: * https://github.com/bromite/bromite/issues/553 * https://github.com/bromite/bromite/issues/589 |
| webview: Hard no to persistent histograms File: webview-Hard-no-to-persistent-histograms.patch | * It's probably some kind of bug somewhere that these are never deleted, but they don't really add value to us in the first place. * Stop eating 4MB every single time any app that uses webview ever opens. * These were guarded by a feature check before https://chromium.googlesource.com/chromium/src/+/b86102f2a243 |