[M123] Cherry Pick: Reland "[Nearby Share] Enable Quick Share branding on ToT"
This is a reland of commit 7f727f6e2ce58208cc3fdf74eaf6d4cda752a328
Revert was caused by failing tests that expected the old string
literal "Nearby Share".
Failing tests that caused the revert were fixed.
Tested: `./out/Default/browser_tests --gtest_filter=NearbyDiscoveryPageTest.All`
Tested: `./out/Default/browser_tests --gtest_filter=OSSettingsMochaTestRevampEnabled.OsSettingsMenuRevamp`
Tested: `./out/Default/browser_tests --gtest_filter=Share/FilesAppBrowserTest.Test/checkEncryptedSharesheetOptions`
Tested: `./out/Default/browser_tests --gtest_filter=SharesheetBubbleViewNearbyShareBrowserTest.ShowNearbyShareBubbleForArc`
Tested: Tested manually that Nearby Share completed as intended with Arc++ (Photos) apps
Original change's description:
> [Nearby Share] Enable Quick Share branding on ToT
>
> Enables Quick Share branding on ToT.
>
> Bug: b/311731010
> Change-Id: I4ded015e3d352ca37fd1fdb4c4577b5187cc1169
> Tested: Unit tests.
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5314884
> Reviewed-by: Jack Shira <jackshira@google.com>
> Commit-Queue: Daniel Classon <dclasson@google.com>
> Cr-Commit-Position: refs/heads/main@{#1263486}
(cherry picked from commit f8a699b9a5af9f2fac84dcffe309a992974f17f8)
Bug: b/326860852
Bug: b/311731010
Change-Id: Ia1680719f54a9ec758cdbf4f8c381e75b843b3dc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5318191
Reviewed-by: Dominick Ng <dominickn@chromium.org>
Reviewed-by: Jeremie Boulic <jboulic@chromium.org>
Commit-Queue: Daniel Classon <dclasson@google.com>
Reviewed-by: Jack Shira <jackshira@google.com>
Cr-Original-Commit-Position: refs/heads/main@{#1265353}
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5352911
Reviewed-by: Scott Violet <sky@chromium.org>
Cr-Commit-Position: refs/branch-heads/6312@{#481}
Cr-Branched-From: 6711dcdae48edaf98cbc6964f90fac85b7d9986e-refs/heads/main@{#1262506}
diff --git a/chrome/browser/nearby_sharing/common/nearby_share_features.cc b/chrome/browser/nearby_sharing/common/nearby_share_features.cc
index 9db5a63..3459180 100644
--- a/chrome/browser/nearby_sharing/common/nearby_share_features.cc
+++ b/chrome/browser/nearby_sharing/common/nearby_share_features.cc
@@ -7,9 +7,8 @@
namespace features {
-BASE_FEATURE(kIsNameEnabled,
- "IsNameEnabled",
- base::FEATURE_DISABLED_BY_DEFAULT);
+// Enables Quick Share branding.
+BASE_FEATURE(kIsNameEnabled, "IsNameEnabled", base::FEATURE_ENABLED_BY_DEFAULT);
// Enables Nearby Sharing functionality.
BASE_FEATURE(kNearbySharing, "NearbySharing", base::FEATURE_ENABLED_BY_DEFAULT);
diff --git a/chrome/browser/sharesheet/sharesheet_service.cc b/chrome/browser/sharesheet/sharesheet_service.cc
index 14c5d12..83df577 100644
--- a/chrome/browser/sharesheet/sharesheet_service.cc
+++ b/chrome/browser/sharesheet/sharesheet_service.cc
@@ -15,6 +15,8 @@
#include "chrome/browser/apps/app_service/app_service_proxy.h"
#include "chrome/browser/apps/app_service/app_service_proxy_factory.h"
#include "chrome/browser/apps/app_service/launch_utils.h"
+#include "chrome/browser/nearby_sharing/common/nearby_share_features.h"
+#include "chrome/browser/nearby_sharing/common/nearby_share_resource_getter.h"
#include "chrome/browser/sharesheet/share_action/share_action.h"
#include "chrome/browser/sharesheet/sharesheet_service_delegator.h"
#include "chrome/browser/sharesheet/sharesheet_types.h"
@@ -115,8 +117,13 @@
DCHECK(intent);
DCHECK(intent->IsShareIntent());
- ShareAction* share_action = share_action_cache_->GetActionFromName(
- l10n_util::GetStringUTF16(IDS_NEARBY_SHARE_FEATURE_NAME));
+ const std::u16string action_name =
+ features::IsNameEnabled()
+ ? NearbyShareResourceGetter::GetInstance()->GetStringWithFeatureName(
+ IDS_NEARBY_SHARE_FEATURE_NAME_PH)
+ : l10n_util::GetStringUTF16(IDS_NEARBY_SHARE_FEATURE_NAME);
+ ShareAction* share_action =
+ share_action_cache_->GetActionFromName(action_name);
if (!share_action || !share_action->ShouldShowAction(
intent, false /*contains_google_document=*/)) {
std::move(delivered_callback).Run(SharesheetResult::kCancel);
@@ -434,7 +441,12 @@
void SharesheetService::RecordUserActionMetrics(
const std::u16string& target_name) {
#if BUILDFLAG(IS_CHROMEOS_ASH)
- if (target_name == l10n_util::GetStringUTF16(IDS_NEARBY_SHARE_FEATURE_NAME)) {
+ const std::u16string quick_share_name =
+ features::IsNameEnabled()
+ ? NearbyShareResourceGetter::GetInstance()->GetStringWithFeatureName(
+ IDS_NEARBY_SHARE_FEATURE_NAME_PH)
+ : l10n_util::GetStringUTF16(IDS_NEARBY_SHARE_FEATURE_NAME);
+ if (target_name == quick_share_name) {
SharesheetMetrics::RecordSharesheetActionMetrics(
SharesheetMetrics::UserAction::kNearbyAction);
} else if (target_name ==
diff --git a/chrome/browser/ui/ash/sharesheet/sharesheet_bubble_view.cc b/chrome/browser/ui/ash/sharesheet/sharesheet_bubble_view.cc
index 552763e..b0b4ef7 100644
--- a/chrome/browser/ui/ash/sharesheet/sharesheet_bubble_view.cc
+++ b/chrome/browser/ui/ash/sharesheet/sharesheet_bubble_view.cc
@@ -20,6 +20,8 @@
#include "base/time/time.h"
#include "chrome/app/vector_icons/vector_icons.h"
#include "chrome/browser/about_flags.h"
+#include "chrome/browser/nearby_sharing/common/nearby_share_features.h"
+#include "chrome/browser/nearby_sharing/common/nearby_share_resource_getter.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/sharesheet/sharesheet_metrics.h"
#include "chrome/browser/sharesheet/sharesheet_service_delegator.h"
@@ -288,10 +290,14 @@
// and use that instead for a more consistent UI experience.
height_ = 1;
- delegator_->OnTargetSelected(
- l10n_util::GetStringUTF16(IDS_NEARBY_SHARE_FEATURE_NAME),
- ::sharesheet::TargetType::kAction, std::move(intent_),
- share_action_view_);
+ const std::u16string target_name =
+ features::IsNameEnabled()
+ ? NearbyShareResourceGetter::GetInstance()->GetStringWithFeatureName(
+ IDS_NEARBY_SHARE_FEATURE_NAME_PH)
+ : l10n_util::GetStringUTF16(IDS_NEARBY_SHARE_FEATURE_NAME);
+
+ delegator_->OnTargetSelected(target_name, ::sharesheet::TargetType::kAction,
+ std::move(intent_), share_action_view_);
}
std::unique_ptr<views::View> SharesheetBubbleView::MakeScrollableTargetView(
diff --git a/chrome/test/data/webui/nearby_share/nearby_discovery_page_test.js b/chrome/test/data/webui/nearby_share/nearby_discovery_page_test.js
index f12d952..009a06b0 100644
--- a/chrome/test/data/webui/nearby_share/nearby_discovery_page_test.js
+++ b/chrome/test/data/webui/nearby_share/nearby_discovery_page_test.js
@@ -345,8 +345,8 @@
await startDiscovery();
flush();
- const expectedMessage = 'To use Nearby Share, turn on Bluetooth' +
- ' and Wi-Fi';
+ const expectedMessage = discoveryPageElement.i18n(
+ 'nearbyShareErrorNoConnectionMediumDescription');
assertEquals(
expectedMessage,
discoveryPageElement.shadowRoot.querySelector('#errorDescription')
diff --git a/chrome/test/data/webui/settings/chromeos/os_settings_menu/os_settings_menu_revamp_test.ts b/chrome/test/data/webui/settings/chromeos/os_settings_menu/os_settings_menu_revamp_test.ts
index 56eae29..14d388e 100644
--- a/chrome/test/data/webui/settings/chromeos/os_settings_menu/os_settings_menu_revamp_test.ts
+++ b/chrome/test/data/webui/settings/chromeos/os_settings_menu/os_settings_menu_revamp_test.ts
@@ -831,7 +831,9 @@
setPageContentData(
createFakePageContentData(MultiDeviceSettingsMode.NO_ELIGIBLE_HOSTS));
- assertEquals('Phone Hub, Nearby Share', multideviceMenuItem.sublabel);
+ assertEquals(
+ settingsMenu.i18n('multideviceMenuItemDescription'),
+ multideviceMenuItem.sublabel);
});
@@ -842,7 +844,9 @@
setPageContentData(
createFakePageContentData(MultiDeviceSettingsMode.NO_HOST_SET));
- assertEquals('Phone Hub, Nearby Share', multideviceMenuItem.sublabel);
+ assertEquals(
+ settingsMenu.i18n('multideviceMenuItemDescription'),
+ multideviceMenuItem.sublabel);
});
test(
@@ -854,7 +858,9 @@
setPageContentData(createFakePageContentData(
MultiDeviceSettingsMode.HOST_SET_WAITING_FOR_SERVER));
- assertEquals('Phone Hub, Nearby Share', multideviceMenuItem.sublabel);
+ assertEquals(
+ settingsMenu.i18n('multideviceMenuItemDescription'),
+ multideviceMenuItem.sublabel);
});
test(
@@ -866,7 +872,9 @@
setPageContentData(createFakePageContentData(
MultiDeviceSettingsMode.HOST_SET_WAITING_FOR_VERIFICATION));
- assertEquals('Phone Hub, Nearby Share', multideviceMenuItem.sublabel);
+ assertEquals(
+ settingsMenu.i18n('multideviceMenuItemDescription'),
+ multideviceMenuItem.sublabel);
});
test(
@@ -906,28 +914,36 @@
const multideviceMenuItem = getMultideviceMenuItem();
// No eligible device found, show the default description "Phone Hub,
- // Nearby Share".
+ // Quick Share".
setPageContentData(createFakePageContentData(
MultiDeviceSettingsMode.NO_ELIGIBLE_HOSTS));
- assertEquals('Phone Hub, Nearby Share', multideviceMenuItem.sublabel);
+ assertEquals(
+ settingsMenu.i18n('multideviceMenuItemDescription'),
+ multideviceMenuItem.sublabel);
// No device connected, show the default description "Phone Hub,
- // Nearby Share".
+ // Quick Share".
setPageContentData(
createFakePageContentData(MultiDeviceSettingsMode.NO_HOST_SET));
- assertEquals('Phone Hub, Nearby Share', multideviceMenuItem.sublabel);
+ assertEquals(
+ settingsMenu.i18n('multideviceMenuItemDescription'),
+ multideviceMenuItem.sublabel);
// Device connection is waiting for server, show the default
- // description "Phone Hub, Nearby Share".
+ // description "Phone Hub, Quick Share".
setPageContentData(createFakePageContentData(
MultiDeviceSettingsMode.HOST_SET_WAITING_FOR_SERVER));
- assertEquals('Phone Hub, Nearby Share', multideviceMenuItem.sublabel);
+ assertEquals(
+ settingsMenu.i18n('multideviceMenuItemDescription'),
+ multideviceMenuItem.sublabel);
// Device connection is waiting for verification, show the default
- // description "Phone Hub, Nearby Share".
+ // description "Phone Hub, Quick Share".
setPageContentData(createFakePageContentData(
MultiDeviceSettingsMode.HOST_SET_WAITING_FOR_VERIFICATION));
- assertEquals('Phone Hub, Nearby Share', multideviceMenuItem.sublabel);
+ assertEquals(
+ settingsMenu.i18n('multideviceMenuItemDescription'),
+ multideviceMenuItem.sublabel);
// Device is connected, show the phone connected description
// "Connected to <phone name>".
@@ -938,10 +954,12 @@
`Connected to ${deviceName}`, multideviceMenuItem.sublabel);
// Disconnect the Device, the description should be updated to the
- // default "Phone Hub, Nearby Share".
+ // default "Phone Hub, Quick Share".
setPageContentData(
createFakePageContentData(MultiDeviceSettingsMode.NO_HOST_SET));
- assertEquals('Phone Hub, Nearby Share', multideviceMenuItem.sublabel);
+ assertEquals(
+ settingsMenu.i18n('multideviceMenuItemDescription'),
+ multideviceMenuItem.sublabel);
});
});
diff --git a/ui/file_manager/integration_tests/file_manager/share.ts b/ui/file_manager/integration_tests/file_manager/share.ts
index 5527273..ae121fc 100644
--- a/ui/file_manager/integration_tests/file_manager/share.ts
+++ b/ui/file_manager/integration_tests/file_manager/share.ts
@@ -31,7 +31,8 @@
for (const target of shareTargetsList) {
chrome.test.assertTrue(
- target === 'Share with others' || target === 'Nearby Share',
+ target === 'Share with others' || target === 'Quick Share' ||
+ target === 'Nearby Share',
'unexpected share target: ' + target);
}
}