diff --git a/app/src/androidTest/java/org/mozilla/fenix/ui/TopSitesTest.kt b/app/src/androidTest/java/org/mozilla/fenix/ui/TopSitesTest.kt index 53936477ea..bffff8929f 100644 --- a/app/src/androidTest/java/org/mozilla/fenix/ui/TopSitesTest.kt +++ b/app/src/androidTest/java/org/mozilla/fenix/ui/TopSitesTest.kt @@ -11,11 +11,13 @@ import org.junit.After import org.junit.Before import org.junit.Rule import org.junit.Test +import org.mozilla.fenix.R import org.mozilla.fenix.customannotations.SmokeTest import org.mozilla.fenix.helpers.AndroidAssetDispatcher import org.mozilla.fenix.helpers.FeatureSettingsHelper import org.mozilla.fenix.helpers.HomeActivityIntentTestRule import org.mozilla.fenix.helpers.TestAssetHelper +import org.mozilla.fenix.helpers.TestHelper.getStringResource import org.mozilla.fenix.ui.robots.browserScreen import org.mozilla.fenix.ui.robots.homeScreen import org.mozilla.fenix.ui.robots.navigationToolbar @@ -65,7 +67,7 @@ class TopSitesTest { expandMenu() verifyAddToTopSitesButton() }.addToFirefoxHome { - verifySnackBarText("Added to top sites!") + verifySnackBarText(getStringResource(R.string.snackbar_added_to_shortcuts)) }.goToHomescreen { verifyExistingTopSitesList() verifyExistingTopSitesTabs(defaultWebPageTitle) @@ -83,7 +85,7 @@ class TopSitesTest { expandMenu() verifyAddToTopSitesButton() }.addToFirefoxHome { - verifySnackBarText("Added to top sites!") + verifySnackBarText(getStringResource(R.string.snackbar_added_to_shortcuts)) }.goToHomescreen { verifyExistingTopSitesList() verifyExistingTopSitesTabs(defaultWebPageTitle) @@ -111,7 +113,7 @@ class TopSitesTest { expandMenu() verifyAddToTopSitesButton() }.addToFirefoxHome { - verifySnackBarText("Added to top sites!") + verifySnackBarText(getStringResource(R.string.snackbar_added_to_shortcuts)) }.goToHomescreen { verifyExistingTopSitesList() verifyExistingTopSitesTabs(defaultWebPageTitle) @@ -134,7 +136,7 @@ class TopSitesTest { expandMenu() verifyAddToTopSitesButton() }.addToFirefoxHome { - verifySnackBarText("Added to top sites!") + verifySnackBarText(getStringResource(R.string.snackbar_added_to_shortcuts)) }.goToHomescreen { verifyExistingTopSitesList() verifyExistingTopSitesTabs(defaultWebPageTitle) @@ -157,7 +159,7 @@ class TopSitesTest { expandMenu() verifyAddToTopSitesButton() }.addToFirefoxHome { - verifySnackBarText("Added to top sites!") + verifySnackBarText(getStringResource(R.string.snackbar_added_to_shortcuts)) }.goToHomescreen { verifyExistingTopSitesList() verifyExistingTopSitesTabs(defaultWebPageTitle) diff --git a/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt b/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt index 3d59d07081..daf20cbf15 100644 --- a/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt +++ b/app/src/androidTest/java/org/mozilla/fenix/ui/robots/ThreeDotMenuMainRobot.kt @@ -494,13 +494,13 @@ private fun assertReaderViewAppearanceButton(visible: Boolean) { } private fun addToTopSitesButton() = - onView(allOf(withText(R.string.browser_menu_add_to_top_sites))) + onView(allOf(withText(R.string.browser_menu_add_to_shortcuts))) private fun assertAddToTopSitesButton() { onView(withId(R.id.mozac_browser_menu_recyclerView)) .perform( RecyclerViewActions.scrollTo( - hasDescendant(withText(R.string.browser_menu_add_to_top_sites)) + hasDescendant(withText(R.string.browser_menu_add_to_shortcuts)) ) ).check(matches(withEffectiveVisibility(Visibility.VISIBLE))) } diff --git a/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarMenuController.kt b/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarMenuController.kt index ef6b4e8643..f0c3066e4b 100644 --- a/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarMenuController.kt +++ b/app/src/main/java/org/mozilla/fenix/components/toolbar/BrowserToolbarMenuController.kt @@ -256,8 +256,8 @@ class DefaultBrowserToolbarMenuController( if (numPinnedSites >= settings.topSitesMaxLimit) { AlertDialog.Builder(swipeRefresh.context).apply { - setTitle(R.string.top_sites_max_limit_title) - setMessage(R.string.top_sites_max_limit_content_2) + setTitle(R.string.shortcut_max_limit_title) + setMessage(R.string.shortcut_max_limit_content) setPositiveButton(R.string.top_sites_max_limit_confirmation_button) { dialog, _ -> dialog.dismiss() } @@ -278,7 +278,7 @@ class DefaultBrowserToolbarMenuController( isDisplayedWithBrowserToolbar = true ) .setText( - context.getString(R.string.snackbar_added_to_top_sites) + context.getString(R.string.snackbar_added_to_shortcuts) ) .show() } diff --git a/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt b/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt index 1d466ee85d..3bc449fb30 100644 --- a/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt +++ b/app/src/main/java/org/mozilla/fenix/components/toolbar/DefaultToolbarMenu.kt @@ -274,8 +274,8 @@ open class DefaultToolbarMenu( } val addRemoveTopSitesItem = TwoStateBrowserMenuImageText( - primaryLabel = context.getString(R.string.browser_menu_add_to_top_sites), - secondaryLabel = context.getString(R.string.browser_menu_remove_from_top_sites), + primaryLabel = context.getString(R.string.browser_menu_add_to_shortcuts), + secondaryLabel = context.getString(R.string.browser_menu_remove_from_shortcuts), primaryStateIconResource = R.drawable.ic_top_sites, secondaryStateIconResource = R.drawable.ic_top_sites, iconTintColorResource = primaryTextColor(), diff --git a/app/src/main/res/layout/top_sites_rename_dialog.xml b/app/src/main/res/layout/top_sites_rename_dialog.xml index a4a81af8fa..6019030f4f 100644 --- a/app/src/main/res/layout/top_sites_rename_dialog.xml +++ b/app/src/main/res/layout/top_sites_rename_dialog.xml @@ -27,7 +27,7 @@ android:layout_marginEnd="24dp" android:autofillHints="false" android:backgroundTint="?borderPrimary" - android:hint="@string/top_site_name_hint" + android:hint="@string/shortcut_name_hint" android:inputType="textCapSentences" android:singleLine="true" android:textAlignment="viewStart" /> diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 82696d756e..4ce06b468e 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1045,7 +1045,9 @@ Bookmarks saved! - Added to top sites! + Added to top sites! + + Added to shorcuts! Private tab closed @@ -1620,9 +1622,13 @@ Are you sure you want to delete this bookmark? - Add to top sites + Add to top sites - Remove from top sites + Remove from top sites + + Add to shortcuts + + Remove from shortcuts Verified By: %1$s @@ -1693,9 +1699,13 @@ - Top site limit reached + Top site limit reached + + Shortcut limit reached - To add a new top site, remove one. Touch and hold the site and select remove. + To add a new top site, remove one. Touch and hold the site and select remove. + + To add a new shortcut, remove one. Touch and hold the site and select remove. OK, Got It @@ -1703,7 +1713,9 @@ Name - Top site name + Top site name + + Shortcut name OK diff --git a/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarMenuControllerTest.kt b/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarMenuControllerTest.kt index 59f6e78eb2..56d4185a90 100644 --- a/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarMenuControllerTest.kt +++ b/app/src/test/java/org/mozilla/fenix/components/toolbar/DefaultBrowserToolbarMenuControllerTest.kt @@ -414,25 +414,25 @@ class DefaultBrowserToolbarMenuControllerTest { } @Test - fun `WHEN Add To Top Sites menu item is pressed THEN add site AND show snackbar`() = runBlockingTest { + fun `WHEN add to shortcuts menu item is pressed THEN add site AND show snackbar`() = runBlockingTest { val item = ToolbarMenu.Item.AddToTopSites val addPinnedSiteUseCase: TopSitesUseCases.AddPinnedSiteUseCase = mockk(relaxed = true) every { topSitesUseCase.addPinnedSites } returns addPinnedSiteUseCase every { - swipeRefreshLayout.context.getString(R.string.snackbar_added_to_top_sites) - } returns "Added to top sites!" + swipeRefreshLayout.context.getString(R.string.snackbar_added_to_shortcuts) + } returns "Added to shorcuts!" val controller = createController(scope = this, store = browserStore) controller.handleToolbarItemInteraction(item) verify { addPinnedSiteUseCase.invoke(selectedTab.content.title, selectedTab.content.url) } - verify { snackbar.setText("Added to top sites!") } + verify { snackbar.setText("Added to shorcuts!") } verify { metrics.track(Event.BrowserMenuItemTapped(Event.BrowserMenuItemTapped.Item.ADD_TO_TOP_SITES)) } } @Test - fun `GIVEN a top site page is open WHEN Remove from top sites is pressed THEN show snackbar`() = runBlockingTest { + fun `GIVEN a shortcut page is open WHEN remove from shortcuts is pressed THEN show snackbar`() = runBlockingTest { val snackbarMessage = "Site removed" val item = ToolbarMenu.Item.RemoveFromTopSites val removePinnedSiteUseCase: TopSitesUseCases.RemoveTopSiteUseCase =