1
0
Fork 0

For #6523 - Remove close button in library

master
Tiger Oakes 2019-11-18 23:23:55 -08:00 committed by Emily Kager
parent 3e436f59e2
commit 0a86676563
10 changed files with 4 additions and 88 deletions

View File

@ -236,15 +236,4 @@ class HistoryTest {
verifyHomeScreen() verifyHomeScreen()
} }
} }
@Test
@Ignore("Test will be included after back navigation from History Fragment is sorted")
fun verifyCloseMenu() {
homeScreen {
}.openThreeDotMenu {
}.openHistory {
}.closeMenu {
verifyHomeScreen()
}
}
} }

View File

@ -47,17 +47,6 @@ class LibraryMenuTest {
} }
} }
@Test
fun closeMenuButtonTest() {
navigationToolbar {
}.enterURLAndEnterToBrowser(defaultWebPage.url) {
}.openThreeDotMenu {
}.openLibrary {
}.closeMenu {
verifyBrowserScreen()
}
}
@Test @Test
fun backButtonTest() { fun backButtonTest() {
navigationToolbar { navigationToolbar {

View File

@ -92,13 +92,6 @@ class HistoryRobot {
HistoryRobot().interact() HistoryRobot().interact()
return Transition() return Transition()
} }
fun closeMenu(interact: HistoryRobot.() -> Unit): Transition {
closeButton().click()
HistoryRobot().interact()
return Transition()
}
} }
} }
@ -145,5 +138,3 @@ private fun assertDeleteConfirmationMessage() =
onView(withText("This will delete all of your browsing data.")) onView(withText("This will delete all of your browsing data."))
.inRoot(isDialog()) .inRoot(isDialog())
.check(matches(isDisplayed())) .check(matches(isDisplayed()))
private fun closeButton() = onView(withId(R.id.libraryClose))

View File

@ -13,9 +13,9 @@ import androidx.test.espresso.matcher.ViewMatchers
import androidx.test.espresso.matcher.ViewMatchers.withContentDescription import androidx.test.espresso.matcher.ViewMatchers.withContentDescription
import androidx.test.espresso.matcher.ViewMatchers.withId import androidx.test.espresso.matcher.ViewMatchers.withId
import androidx.test.espresso.matcher.ViewMatchers.withText import androidx.test.espresso.matcher.ViewMatchers.withText
import androidx.test.uiautomator.UiDevice
import androidx.test.platform.app.InstrumentationRegistry import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.uiautomator.By import androidx.test.uiautomator.By
import androidx.test.uiautomator.UiDevice
import androidx.test.uiautomator.Until import androidx.test.uiautomator.Until
import org.hamcrest.CoreMatchers.allOf import org.hamcrest.CoreMatchers.allOf
import org.mozilla.fenix.R import org.mozilla.fenix.R
@ -44,13 +44,6 @@ class LibraryRobot {
return BrowserRobot.Transition() return BrowserRobot.Transition()
} }
fun closeMenu(interact: BrowserRobot.() -> Unit): BrowserRobot.Transition {
closeButton().click()
BrowserRobot().interact()
return BrowserRobot.Transition()
}
fun openBookmarks(interact: BookmarksRobot.() -> Unit): BookmarksRobot.Transition { fun openBookmarks(interact: BookmarksRobot.() -> Unit): BookmarksRobot.Transition {
mDevice.waitNotNull(Until.findObject(By.text("Bookmarks")), TestAssetHelper.waitingTime) mDevice.waitNotNull(Until.findObject(By.text("Bookmarks")), TestAssetHelper.waitingTime)
bookmarksButton().click() bookmarksButton().click()
@ -70,7 +63,6 @@ class LibraryRobot {
} }
private fun goBackButton() = onView(allOf(withContentDescription("Navigate up"))) private fun goBackButton() = onView(allOf(withContentDescription("Navigate up")))
private fun closeButton() = onView(withId(R.id.libraryClose))
private fun bookmarksButton() = onView(allOf(withText("Bookmarks"))) private fun bookmarksButton() = onView(allOf(withText("Bookmarks")))
private fun historyButton() = onView(allOf(withText("History"))) private fun historyButton() = onView(allOf(withText("History")))

View File

@ -7,12 +7,10 @@ package org.mozilla.fenix.library
import android.os.Bundle import android.os.Bundle
import android.view.Menu import android.view.Menu
import android.view.MenuInflater import android.view.MenuInflater
import android.view.MenuItem
import android.view.View import android.view.View
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
import androidx.appcompat.widget.Toolbar import androidx.appcompat.widget.Toolbar
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.navigation.Navigation
import kotlinx.android.synthetic.main.fragment_library.* import kotlinx.android.synthetic.main.fragment_library.*
import mozilla.appservices.places.BookmarkRoot import mozilla.appservices.places.BookmarkRoot
import mozilla.components.support.ktx.android.content.getColorFromAttr import mozilla.components.support.ktx.android.content.getColorFromAttr
@ -65,16 +63,6 @@ class LibraryFragment : Fragment(R.layout.fragment_library) {
inflater.inflate(R.menu.library_menu, menu) inflater.inflate(R.menu.library_menu, menu)
} }
override fun onOptionsItemSelected(item: MenuItem): Boolean {
return when (item.itemId) {
R.id.libraryClose -> {
Navigation.findNavController(requireActivity(), R.id.container).navigateUp()
true
}
else -> super.onOptionsItemSelected(item)
}
}
override fun onDestroy() { override fun onDestroy() {
super.onDestroy() super.onDestroy()
requireComponents.analytics.metrics.track(Event.LibraryClosed) requireComponents.analytics.metrics.track(Event.LibraryClosed)

View File

@ -5,22 +5,14 @@
package org.mozilla.fenix.library package org.mozilla.fenix.library
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import androidx.navigation.fragment.findNavController
import org.mozilla.fenix.browser.browsingmode.BrowsingMode
import org.mozilla.fenix.HomeActivity import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.R import org.mozilla.fenix.browser.browsingmode.BrowsingMode
import org.mozilla.fenix.ext.components import org.mozilla.fenix.ext.components
abstract class LibraryPageFragment<T> : Fragment() { abstract class LibraryPageFragment<T> : Fragment() {
abstract val selectedItems: Set<T> abstract val selectedItems: Set<T>
protected fun close() {
if (!findNavController().popBackStack(R.id.libraryFragment, true)) {
findNavController().popBackStack(R.id.homeFragment, false)
}
}
protected fun openItemsInNewTab(private: Boolean = false, toUrl: (T) -> String?) { protected fun openItemsInNewTab(private: Boolean = false, toUrl: (T) -> String?) {
context?.components?.useCases?.tabsUseCases?.let { tabsUseCases -> context?.components?.useCases?.tabsUseCases?.let { tabsUseCases ->
val addTab = if (private) tabsUseCases.addPrivateTab else tabsUseCases.addTab val addTab = if (private) tabsUseCases.addPrivateTab else tabsUseCases.addTab

View File

@ -171,11 +171,6 @@ class BookmarkFragment : LibraryPageFragment<BookmarkNode>(), BackHandler {
override fun onOptionsItemSelected(item: MenuItem): Boolean { override fun onOptionsItemSelected(item: MenuItem): Boolean {
return when (item.itemId) { return when (item.itemId) {
R.id.libraryClose -> {
invokePendingDeletion()
close()
true
}
R.id.add_bookmark_folder -> { R.id.add_bookmark_folder -> {
navigate( navigate(
BookmarkFragmentDirections BookmarkFragmentDirections

View File

@ -157,15 +157,9 @@ class HistoryFragment : LibraryPageFragment<HistoryItem>(), BackHandler {
} }
true true
} }
R.id.libraryClose -> {
close()
true
}
R.id.delete_history_multi_select -> { R.id.delete_history_multi_select -> {
val components = context?.components!!
lifecycleScope.launch(Main) { lifecycleScope.launch(Main) {
deleteSelectedHistory(historyStore.state.mode.selectedItems, components) deleteSelectedHistory(historyStore.state.mode.selectedItems, requireComponents)
viewModel.invalidate() viewModel.invalidate()
historyStore.dispatch(HistoryFragmentAction.ExitDeletionMode) historyStore.dispatch(HistoryFragmentAction.ExitDeletionMode)
} }

View File

@ -10,10 +10,4 @@
app:iconTint="?primaryText" app:iconTint="?primaryText"
android:title="@string/bookmark_add_folder" android:title="@string/bookmark_add_folder"
app:showAsAction="ifRoom" /> app:showAsAction="ifRoom" />
<item
android:id="@+id/libraryClose"
android:icon="@drawable/ic_close"
app:iconTint="?primaryText"
android:title="@string/content_description_close_button"
app:showAsAction="ifRoom" />
</menu> </menu>

View File

@ -2,12 +2,4 @@
<!-- This Source Code Form is subject to the terms of the Mozilla Public <!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this - License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. --> - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<menu xmlns:android="http://schemas.android.com/apk/res/android" <menu />
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/libraryClose"
android:icon="@drawable/ic_close"
app:iconTint="?primaryText"
android:title="@string/content_description_close_button"
app:showAsAction="ifRoom" />
</menu>