1
0
Fork 0

No issue: Add Bookmark multi-select edit button

master
Colin Lee 2019-04-13 23:31:15 -05:00
parent ec35283c9a
commit 6bff472276
4 changed files with 30 additions and 7 deletions

View File

@ -35,6 +35,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- #1571 - Added a snackbar for undoing bookmark deletion
- #1079 - Managing site permissions exceptions
- #1312 - Added clear textfield buttons for editing bookmarks
- #1312 - Added a missing edit action for bookmark selections
### Changed
- #1429 - Updated site permissions ui for MVP

View File

@ -52,7 +52,6 @@ import org.mozilla.fenix.ext.urlToHost
import org.mozilla.fenix.mvi.ActionBusFactory
import org.mozilla.fenix.mvi.getAutoDisposeObservable
import org.mozilla.fenix.mvi.getManagedEmitter
import org.mozilla.fenix.utils.ItsNotBrokenSnack
import kotlin.coroutines.CoroutineContext
@SuppressWarnings("TooManyFunctions")
@ -114,9 +113,18 @@ class BookmarkFragment : Fragment(), CoroutineScope, BackHandler, AccountObserve
}
is BookmarkState.Mode.Selecting -> {
inflater.inflate(R.menu.bookmarks_select_multi, menu)
activity?.title = getString(R.string.bookmarks_multi_select_title, mode.selectedItems.size)
val colorFilter =
PorterDuffColorFilter(R.attr.primaryText.getColorFromAttr(context!!), PorterDuff.Mode.SRC_IN)
val enableEditButton = mode.selectedItems.size == 1
menu.findItem(R.id.edit_bookmark_multi_select).run {
isVisible = enableEditButton
if (enableEditButton) {
icon.colorFilter = colorFilter
}
}
activity?.title = getString(R.string.bookmarks_multi_select_title, mode.selectedItems.size)
themeToolbar(toolbar, colorFilter)
}
}
@ -264,8 +272,13 @@ class BookmarkFragment : Fragment(), CoroutineScope, BackHandler, AccountObserve
.navigate(BookmarkFragmentDirections.actionBookmarkFragmentToHomeFragment())
true
}
R.id.share_bookmarks_multi_select -> {
ItsNotBrokenSnack(context!!).showSnackbar(issueNumber = "1539")
R.id.edit_bookmark_multi_select -> {
val bookmark = getSelectedBookmarks().first()
Navigation.findNavController(requireActivity(), R.id.container)
.navigate(
BookmarkFragmentDirections
.actionBookmarkFragmentToBookmarkEditFragment(bookmark.guid)
)
true
}
R.id.open_bookmarks_in_private_tabs_multi_select -> {

File diff suppressed because one or more lines are too long

View File

@ -5,10 +5,10 @@
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools">
<item
android:id="@+id/share_bookmarks_multi_select"
android:icon="@drawable/ic_send"
android:id="@+id/edit_bookmark_multi_select"
android:icon="@drawable/ic_edit"
android:iconTint="?primaryText"
android:title="@string/bookmark_add_folder"
android:title="@string/bookmark_edit"
app:showAsAction="ifRoom"
tools:targetApi="o" />
<item