Propagate NotificationWidthIncrease to ARC++

This CL propagates NotificationWidthIncrease flag to ARC++ via
ArcChromeFeatureFlags service.

Bug: b:332740657
Test: ArcChromeFeatureFlagsBridgeTest
Change-Id: Ib0158eda4d5dab72f50fb8711352222f8a1162c4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5612910
Reviewed-by: Dominick Ng <dominickn@chromium.org>
Reviewed-by: Yuichiro Hanada <yhanada@chromium.org>
Commit-Queue: Toshiki Kikuchi <toshikikikuchi@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1313227}
diff --git a/ash/components/arc/chrome_feature_flags/arc_chrome_feature_flags_bridge.cc b/ash/components/arc/chrome_feature_flags/arc_chrome_feature_flags_bridge.cc
index 17c51e8..11a31ee7 100644
--- a/ash/components/arc/chrome_feature_flags/arc_chrome_feature_flags_bridge.cc
+++ b/ash/components/arc/chrome_feature_flags/arc_chrome_feature_flags_bridge.cc
@@ -98,6 +98,8 @@
       base::FeatureList::IsEnabled(arc::kIgnoreHoverEventAnr);
   flags->extend_input_anr_timeout =
       base::FeatureList::IsEnabled(arc::kExtendInputAnrTimeout);
+  flags->notification_width_increase =
+      chromeos::features::IsNotificationWidthIncreaseEnabled();
 
   chrome_feature_flags_instance->NotifyFeatureFlags(std::move(flags));
 }
diff --git a/ash/components/arc/chrome_feature_flags/arc_chrome_feature_flags_bridge_unittest.cc b/ash/components/arc/chrome_feature_flags/arc_chrome_feature_flags_bridge_unittest.cc
index c3a74de..731c602 100644
--- a/ash/components/arc/chrome_feature_flags/arc_chrome_feature_flags_bridge_unittest.cc
+++ b/ash/components/arc/chrome_feature_flags/arc_chrome_feature_flags_bridge_unittest.cc
@@ -216,5 +216,21 @@
   EXPECT_FALSE(instance()->flags_called_value()->extend_input_anr_timeout);
 }
 
+TEST_F(ArcChromeFeatureFlagsBridgeTest,
+       NotifyNotificationWidthIncrease_Enabled) {
+  scoped_feature_list()->InitAndEnableFeature(
+      chromeos::features::kNotificationWidthIncrease);
+  Connect();
+  EXPECT_TRUE(instance()->flags_called_value()->notification_width_increase);
+}
+
+TEST_F(ArcChromeFeatureFlagsBridgeTest,
+       NotifyNotificationWidthIncrease_Disabled) {
+  scoped_feature_list()->InitAndDisableFeature(
+      chromeos::features::kNotificationWidthIncrease);
+  Connect();
+  EXPECT_FALSE(instance()->flags_called_value()->notification_width_increase);
+}
+
 }  // namespace
 }  // namespace arc
diff --git a/ash/components/arc/mojom/chrome_feature_flags.mojom b/ash/components/arc/mojom/chrome_feature_flags.mojom
index 21062ce5..5c6dd9b 100644
--- a/ash/components/arc/mojom/chrome_feature_flags.mojom
+++ b/ash/components/arc/mojom/chrome_feature_flags.mojom
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 //
-// Next MinVersion: 11
+// Next MinVersion: 12
 
 module arc.mojom;
 
@@ -43,6 +43,8 @@
   [MinVersion=9] bool ignore_hover_event_anr;
   // chrome://flags#arc-extend-input-anr-timeout
   [MinVersion=10] bool extend_input_anr_timeout;
+  // `chromeos::features::IsNotificationWidthIncreaseEnabled()`
+  [MinVersion=11] bool notification_width_increase;
 };
 
 // This interface provides methods to propagate the feature flag status to