Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f2e00289 authored by Saalim Quadri's avatar Saalim Quadri
Browse files

[Auto] Update cromite patches

parent b2a7ef22
Loading
Loading
Loading
Loading
+9 −9
Original line number Diff line number Diff line
@@ -665,7 +665,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
 namespace about_flags {
 
 namespace {
@@ -4966,6 +4970,10 @@ const FeatureEntry::FeatureVariation kSeamlessSigninPromoTypes[] = {
@@ -4977,6 +4981,10 @@ const FeatureEntry::FeatureVariation kSeamlessSigninPromoTypes[] = {
      std::size(kSeamlessSigninPromoTypeTwoButtons), nullptr}};
 #endif  // BUILDFLAG(IS_ANDROID)
 
@@ -676,7 +676,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
 // RECORDING USER METRICS FOR FLAGS:
 // -----------------------------------------------------------------------------
 // The first line of the entry is the internal name.
@@ -4992,6 +5000,9 @@ const FeatureEntry::FeatureVariation kSeamlessSigninPromoTypes[] = {
@@ -5003,6 +5011,9 @@ const FeatureEntry::FeatureVariation kSeamlessSigninPromoTypes[] = {
 const FeatureEntry kFeatureEntries[] = {
 // Include generated flags for flag unexpiry; see //docs/flag_expiry.md and
 // //tools/flags/generate_unexpire_flags.py.
@@ -1010,7 +1010,7 @@ diff --git a/chrome/browser/unexpire_flags.cc b/chrome/browser/unexpire_flags.cc
diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc
--- a/chrome/common/chrome_features.cc
+++ b/chrome/common/chrome_features.cc
@@ -1696,5 +1696,5 @@ BASE_FEATURE(kDisableShortcutsEnableDiy, base::FEATURE_ENABLED_BY_DEFAULT);
@@ -1694,5 +1694,5 @@ BASE_FEATURE(kDisableShortcutsEnableDiy, base::FEATURE_ENABLED_BY_DEFAULT);
 // happen silently without prompting an updating dialog.
 BASE_FEATURE(kSilentPolicyAndDefaultAppUpdating,
              base::FEATURE_DISABLED_BY_DEFAULT);
@@ -2024,18 +2024,18 @@ diff --git a/media/base/media_switches.h b/media/base/media_switches.h
diff --git a/net/base/features.cc b/net/base/features.cc
--- a/net/base/features.cc
+++ b/net/base/features.cc
@@ -839,4 +839,5 @@ BASE_FEATURE_PARAM(size_t,
                    "cache_size",
                    64);
@@ -852,4 +852,5 @@ BASE_FEATURE_PARAM(std::string,
                    "quic_options",
                    "");
 
+#include "cromite_flags/net_base_features_cc.inc"
 }  // namespace net::features
diff --git a/net/base/features.h b/net/base/features.h
--- a/net/base/features.h
+++ b/net/base/features.h
@@ -935,6 +935,7 @@ NET_EXPORT BASE_DECLARE_FEATURE(kDnsFilteringDetails);
 NET_EXPORT BASE_DECLARE_FEATURE(kUpdateIsMainFrameOriginRecentlyAccessed);
 NET_EXPORT BASE_DECLARE_FEATURE_PARAM(size_t, kRecentlyAccessedOriginCacheSize);
@@ -946,6 +946,7 @@ NET_EXPORT BASE_DECLARE_FEATURE(kTryQuicByDefault);
 // separate the values with a comma (e.g. "ABCD,EFGH").
 NET_EXPORT BASE_DECLARE_FEATURE_PARAM(std::string, kQuicOptions);
 
+#include "cromite_flags/net_base_features_h.inc"
 }  // namespace net::features
+1 −1
Original line number Diff line number Diff line
@@ -192,7 +192,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
 import org.chromium.ui.base.LocalizationUtils;
 import org.chromium.ui.base.WindowAndroid;
 import org.chromium.ui.util.ColorUtils;
@@ -5039,8 +5040,13 @@ public class StripLayoutHelper
@@ -5040,8 +5041,13 @@ public class StripLayoutHelper
         mCloseButtonMenu.setAnchorView(tabView);
         // 3. Set the vertical offset to align the close button menu with bottom of the tab strip
         int tabHeight = mManagerHost.getHeight();
+25 −1
Original line number Diff line number Diff line
@@ -7,8 +7,9 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 .../android/java/res/xml/privacy_preferences.xml  |  5 +++++
 .../chrome/browser/ChromeTabbedActivity.java      |  5 ++++-
 .../browser/privacy/settings/PrivacySettings.java | 15 ++++++++++++++-
 .../browser/tab_group_sync/StartupHelper.java     |  6 ++++++
 .../ui/android/strings/android_chrome_strings.grd |  6 ++++++
 4 files changed, 29 insertions(+), 2 deletions(-)
 5 files changed, 35 insertions(+), 2 deletions(-)

diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
@@ -101,6 +102,29 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
         Preference secureDnsPref = findPreference(PREF_SECURE_DNS);
         if (secureDnsPref != null && secureDnsPref.isVisible()) {
             secureDnsPref.setSummary(SecureDnsSettings.getSummary(getContext()));
diff --git a/chrome/browser/tab_group_sync/android/java/src/org/chromium/chrome/browser/tab_group_sync/StartupHelper.java b/chrome/browser/tab_group_sync/android/java/src/org/chromium/chrome/browser/tab_group_sync/StartupHelper.java
--- a/chrome/browser/tab_group_sync/android/java/src/org/chromium/chrome/browser/tab_group_sync/StartupHelper.java
+++ b/chrome/browser/tab_group_sync/android/java/src/org/chromium/chrome/browser/tab_group_sync/StartupHelper.java
@@ -4,6 +4,7 @@
 
 package org.chromium.chrome.browser.tab_group_sync;
 
+import org.chromium.base.ContextUtils;
 import org.chromium.base.metrics.RecordHistogram;
 import org.chromium.build.annotations.NullMarked;
 import org.chromium.chrome.browser.preferences.Pref;
@@ -74,6 +75,11 @@ public class StartupHelper {
      */
     public void initializeTabGroupSync() {
         LogUtils.log(TAG, "initializeTabGroupSync");
+        if (ContextUtils.getAppSharedPreferences().getBoolean("close_tabs_on_exit", false)) {
+            for (String tabGroupId : mTabGroupSyncService.getAllGroupIds()) {
+                mTabGroupSyncService.removeGroup(tabGroupId);
+            }
+        }
         // First close the groups that were deleted remotely when the activity was not running.
         closeDeletedGroupsFromTabModel();
 
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
+14 −1
Original line number Diff line number Diff line
@@ -10,6 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 chrome/browser/about_flags.cc                 |  1 +
 .../engagement/important_sites_util.cc        |  9 +++++
 .../browser/media/media_engagement_service.cc |  4 ++-
 .../auto_picture_in_picture_tab_helper.cc     |  2 +-
 .../internal/tracker_impl.cc                  |  3 ++
 .../public/feature_configurations.cc          |  7 ++++
 .../content/site_engagement_score.cc          |  5 +++
@@ -17,7 +18,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
 components/site_engagement/core/features.cc   | 30 ++++++++++++++++
 components/site_engagement/core/features.h    | 34 +++++++++++++++++++
 .../Add-site-engagement-flag.inc              | 10 ++++++
 10 files changed, 108 insertions(+), 1 deletion(-)
 11 files changed, 109 insertions(+), 2 deletions(-)
 create mode 100644 components/site_engagement/core/features.cc
 create mode 100644 components/site_engagement/core/features.h
 create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Add-site-engagement-flag.inc
@@ -87,6 +88,18 @@ diff --git a/chrome/browser/media/media_engagement_service.cc b/chrome/browser/m
 }
 
 // static
diff --git a/chrome/browser/picture_in_picture/auto_picture_in_picture_tab_helper.cc b/chrome/browser/picture_in_picture/auto_picture_in_picture_tab_helper.cc
--- a/chrome/browser/picture_in_picture/auto_picture_in_picture_tab_helper.cc
+++ b/chrome/browser/picture_in_picture/auto_picture_in_picture_tab_helper.cc
@@ -42,7 +42,7 @@ AutoPictureInPictureTabHelper::AutoPictureInPictureTabHelper(
           Profile::FromBrowserContext(web_contents->GetBrowserContext()))),
       auto_blocker_(PermissionDecisionAutoBlockerFactory::GetForProfile(
           Profile::FromBrowserContext(web_contents->GetBrowserContext()))),
-      media_engagement_service_(MediaEngagementService::Get(
+      media_engagement_service_(!MediaEngagementService::IsEnabled() ? nullptr : MediaEngagementService::Get(
           Profile::FromBrowserContext(web_contents->GetBrowserContext()))),
       clock_(base::DefaultTickClock::GetInstance()) {
   // `base::Unretained` is safe here since we own `tab_observer_helper_`.
diff --git a/components/feature_engagement/internal/tracker_impl.cc b/components/feature_engagement/internal/tracker_impl.cc
--- a/components/feature_engagement/internal/tracker_impl.cc
+++ b/components/feature_engagement/internal/tracker_impl.cc
+85 −70
Original line number Diff line number Diff line
@@ -7,26 +7,48 @@ Use Google Chrome branding for client hints

License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
 components/embedder_support/user_agent_utils.cc   |  4 +---
 content/browser/client_hints/client_hints.cc      | 15 ++++++++++-----
 .../browser/loader/navigation_url_loader_impl.cc  |  5 +++++
 components/client_hints/browser/client_hints.cc |  5 +++--
 components/embedder_support/user_agent_utils.cc |  5 ++---
 content/browser/client_hints/client_hints.cc    | 17 +++++++++++++++--
 .../about_flags_cc/Client-hints-overrides.inc   |  9 +++++++++
 .../common/features_cc/Client-hints-overrides.inc |  1 +
 .../features_cc/Client-hints-overrides.inc      |  1 +
 .../cpp/features_cc/Client-hints-overrides.inc  |  1 +
 net/http/http_network_transaction.cc            |  1 +
 services/network/public/cpp/client_hints.cc       |  1 +
 services/network/public/cpp/client_hints.cc     |  2 +-
 .../blink/common/client_hints/client_hints.cc   |  6 ++++--
 .../common/client_hints/enabled_client_hints.cc   |  6 ++++++
 .../common/client_hints/enabled_client_hints.cc |  8 ++++++++
 .../blink/renderer/core/frame/navigator_ua.idl  |  4 +++-
 .../renderer/core/frame/navigator_ua_data.cc    |  1 +
 .../renderer/core/frame/navigator_ua_data.idl   |  5 ++++-
 .../renderer/core/loader/frame_fetch_context.cc |  4 +++-
 .../platform/runtime_enabled_features.json5     |  8 ++++++--
 15 files changed, 56 insertions(+), 15 deletions(-)
 15 files changed, 62 insertions(+), 15 deletions(-)
 create mode 100644 cromite_flags/chrome/browser/about_flags_cc/Client-hints-overrides.inc
 create mode 100644 cromite_flags/content/common/features_cc/Client-hints-overrides.inc
 create mode 100644 cromite_flags/services/network/public/cpp/features_cc/Client-hints-overrides.inc

diff --git a/components/client_hints/browser/client_hints.cc b/components/client_hints/browser/client_hints.cc
--- a/components/client_hints/browser/client_hints.cc
+++ b/components/client_hints/browser/client_hints.cc
@@ -35,7 +35,7 @@ ParseInitializeClientHintsStorage() {
   auto results =
       base::flat_map<url::Origin,
                      std::vector<network::mojom::WebClientHintsType>>();
-
+  if ((true)) return results;
   std::string raw_client_hint_json =
       base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
           switches::kInitializeClientHintsStorage);
@@ -200,7 +200,8 @@ void ClientHints::PersistClientHints(
   // TODO(tbansal): crbug.com/735518. Disable updates to client hints settings
   // when cookies are disabled for |primary_origin|.
   content_settings::ContentSettingConstraints constraints;
-  constraints.set_session_model(content_settings::mojom::SessionModel::DURABLE);
+  constraints.set_session_model(content_settings::mojom::SessionModel::USER_SESSION);
+  constraints.set_lifetime(base::Minutes(1));
   settings_map_->SetWebsiteSettingDefaultScope(
       primary_url, GURL(), ContentSettingsType::CLIENT_HINTS,
       base::Value(std::move(client_hints_dictionary)), constraints);
diff --git a/components/embedder_support/user_agent_utils.cc b/components/embedder_support/user_agent_utils.cc
--- a/components/embedder_support/user_agent_utils.cc
+++ b/components/embedder_support/user_agent_utils.cc
@@ -41,6 +63,14 @@ diff --git a/components/embedder_support/user_agent_utils.cc b/components/embedd
 
   std::string brand_version =
       output_version_type == blink::UserAgentBrandVersionType::kFullVersion
@@ -698,6 +696,7 @@ blink::UserAgentMetadata GetUserAgentMetadata(const PrefService* pref_service,
   }
 
   // High entropy client hints.
+  if ((true)) return metadata;
   metadata.brand_full_version_list =
       GetUserAgentBrandFullVersionListInternal(std::nullopt);
   metadata.full_version = std::string(version_info::GetVersionNumber());
diff --git a/content/browser/client_hints/client_hints.cc b/content/browser/client_hints/client_hints.cc
--- a/content/browser/client_hints/client_hints.cc
+++ b/content/browser/client_hints/client_hints.cc
@@ -52,56 +82,38 @@ diff --git a/content/browser/client_hints/client_hints.cc b/content/browser/clie
 #include "ui/display/display.h"
 #include "ui/display/screen.h"
 #include "url/origin.h"
@@ -706,7 +707,8 @@ void UpdateNavigationRequestClientUaHeadersImpl(
     // value, disable them. This overwrites previous decision from UI.
     disable_due_to_custom_ua = !ua_metadata.has_value();
   }
-
+  if (!blink::RuntimeEnabledFeatures::UserAgentClientHintEnabled())
+    disable_due_to_custom_ua = true;
   if (!disable_due_to_custom_ua) {
     if (!ua_metadata.has_value())
       ua_metadata = delegate->GetUserAgentMetadata();
@@ -898,10 +900,12 @@ void AddRequestClientHintsHeaders(
     AddEctHeader(headers, network_quality_tracker, url);
   }
@@ -602,10 +603,21 @@ bool IsClientHintEnabled(const ClientHintsExtendedData& data,
 
-  UpdateNavigationRequestClientUaHeadersImpl(
-      delegate, is_ua_override_on, frame_tree_node,
-      ClientUaHeaderCallType::kDuringCreation, headers, container_policy, data,
-      ftn_for_devtools_override);
+  if (blink::RuntimeEnabledFeatures::UserAgentClientHintEnabled()) {
+    UpdateNavigationRequestClientUaHeadersImpl(
+        delegate, is_ua_override_on, frame_tree_node,
+        ClientUaHeaderCallType::kDuringCreation, headers, container_policy, data,
+        ftn_for_devtools_override);
 bool IsClientHintAllowed(const ClientHintsExtendedData& data,
                          WebClientHintsType type) {
+  if (!blink::RuntimeEnabledFeatures::UserAgentClientHintEnabled())
+    return false;
+
+  bool allowed = false;
+  if (type == WebClientHintsType::kUA ||
+      type == WebClientHintsType::kUAMobile ||
+      type == WebClientHintsType::kUAPlatform ||
+      type == WebClientHintsType::kUAModel ||
+      type == WebClientHintsType::kUAPlatformVersion) {
+    allowed = true;
+  }
 
   if (ShouldAddClientHint(data, WebClientHintsType::kPrefersColorScheme)) {
     AddPrefersColorSchemeHeader(headers, frame_tree_node);
@@ -989,6 +993,7 @@ ParseAndPersistAcceptCHForNavigation(
     BrowserContext* context,
     ClientHintsControllerDelegate* delegate,
     FrameTreeNode* frame_tree_node) {
+  if ((true)) return std::nullopt;
   DCHECK_CURRENTLY_ON(BrowserThread::UI);
   DCHECK(context);
   DCHECK(parsed_headers);
diff --git a/content/browser/loader/navigation_url_loader_impl.cc b/content/browser/loader/navigation_url_loader_impl.cc
--- a/content/browser/loader/navigation_url_loader_impl.cc
+++ b/content/browser/loader/navigation_url_loader_impl.cc
@@ -1744,6 +1744,11 @@ void NavigationURLLoaderImpl::OnAcceptCHFrameReceived(
   if (data.is_outermost_main_frame) {
-    return true;
+    return allowed;
   }
-  return (data.permissions_policy->IsFeatureEnabledForOrigin(
+  return ((false)) && (data.permissions_policy->IsFeatureEnabledForOrigin(
       network::GetClientHintToPolicyFeatureMap().at(type),
       data.resource_origin));
 }
@@ -630,6 +642,7 @@ bool IsJavascriptEnabled(FrameTreeNode* frame_tree_node) {
 void UpdateIFramePermissionsPolicyWithDelegationSupportForClientHints(
     ClientHintsExtendedData& data,
     const network::ParsedPermissionsPolicy& container_policy) {
+  if ((true)) return;
   if (container_policy.empty()) {
     return;
   }
 
+  if (!base::FeatureList::IsEnabled(network::features::kAcceptCHFrame)) {
+    std::move(callback).Run(net::OK);
+    return;
+  }
+
   LogAcceptCHFrameStatus(AcceptCHFrameRestart::kFramePresent);
 
   // Given that this is happening in the middle of navigation, there should
diff --git a/cromite_flags/chrome/browser/about_flags_cc/Client-hints-overrides.inc b/cromite_flags/chrome/browser/about_flags_cc/Client-hints-overrides.inc
new file mode 100644
--- /dev/null
@@ -121,13 +133,13 @@ new file mode 100644
--- /dev/null
+++ b/cromite_flags/content/common/features_cc/Client-hints-overrides.inc
@@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kCriticalClientHint);
+SET_CROMITE_FEATURE_ENABLED(kCriticalClientHint);
diff --git a/cromite_flags/services/network/public/cpp/features_cc/Client-hints-overrides.inc b/cromite_flags/services/network/public/cpp/features_cc/Client-hints-overrides.inc
new file mode 100644
--- /dev/null
+++ b/cromite_flags/services/network/public/cpp/features_cc/Client-hints-overrides.inc
@@ -0,0 +1 @@
+SET_CROMITE_FEATURE_DISABLED(kAcceptCHFrame);
+SET_CROMITE_FEATURE_ENABLED(kAcceptCHFrame);
diff --git a/net/http/http_network_transaction.cc b/net/http/http_network_transaction.cc
--- a/net/http/http_network_transaction.cc
+++ b/net/http/http_network_transaction.cc
@@ -142,11 +154,12 @@ diff --git a/net/http/http_network_transaction.cc b/net/http/http_network_transa
diff --git a/services/network/public/cpp/client_hints.cc b/services/network/public/cpp/client_hints.cc
--- a/services/network/public/cpp/client_hints.cc
+++ b/services/network/public/cpp/client_hints.cc
@@ -112,6 +112,7 @@ const DecodeMap& GetDecodeMap() {
@@ -111,7 +111,7 @@ const DecodeMap& GetDecodeMap() {
 }  // namespace
 
 std::optional<std::vector<network::mojom::WebClientHintsType>>
 ParseClientHintsHeader(const std::string& header) {
+  if ((true)) return std::nullopt;
-ParseClientHintsHeader(const std::string& header) {
+ParseClientHintsHeader(const std::string& header) { // Parse Client Hints Header
   // Accept-CH is an sh-list of tokens; see:
   // https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-header-structure-19#section-3.1
   std::optional<net::structured_headers::List> maybe_list =
@@ -179,13 +192,15 @@ diff --git a/third_party/blink/common/client_hints/client_hints.cc b/third_party
diff --git a/third_party/blink/common/client_hints/enabled_client_hints.cc b/third_party/blink/common/client_hints/enabled_client_hints.cc
--- a/third_party/blink/common/client_hints/enabled_client_hints.cc
+++ b/third_party/blink/common/client_hints/enabled_client_hints.cc
@@ -15,6 +15,12 @@ namespace {
@@ -15,6 +15,14 @@ namespace {
 using ::network::mojom::WebClientHintsType;
 
 bool IsDisabledByFeature(const WebClientHintsType type) {
+  if (type == WebClientHintsType::kUA ||
+        type == WebClientHintsType::kUAMobile ||
+        type == WebClientHintsType::kUAPlatform) {
+        type == WebClientHintsType::kUAPlatform ||
+        type == WebClientHintsType::kUAModel ||
+        type == WebClientHintsType::kUAPlatformVersion) {
+    return false;
+  }
+  if ((true)) return true;
@@ -243,7 +258,7 @@ diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/thi
   // For subresource requests, sending the hint in the fetch request based on
   // the permissions policy.
   if (!policy.IsFeatureEnabledForOrigin(
@@ -713,7 +715,7 @@ void FrameFetchContext::AddClientHintsIfNecessary(
@@ -715,7 +717,7 @@ void FrameFetchContext::AddClientHintsIfNecessary(
   }
 
   // Only send User Agent hints if the info is available
Loading