Option to save manga from history and favourites lists
This commit is contained in:
@@ -7,6 +7,7 @@ import org.koin.androidx.viewmodel.ext.android.viewModel
|
|||||||
import org.koin.core.parameter.parametersOf
|
import org.koin.core.parameter.parametersOf
|
||||||
import org.koitharu.kotatsu.R
|
import org.koitharu.kotatsu.R
|
||||||
import org.koitharu.kotatsu.list.ui.MangaListFragment
|
import org.koitharu.kotatsu.list.ui.MangaListFragment
|
||||||
|
import org.koitharu.kotatsu.parsers.model.MangaSource
|
||||||
import org.koitharu.kotatsu.utils.ext.withArgs
|
import org.koitharu.kotatsu.utils.ext.withArgs
|
||||||
|
|
||||||
class FavouritesListFragment : MangaListFragment() {
|
class FavouritesListFragment : MangaListFragment() {
|
||||||
@@ -27,6 +28,13 @@ class FavouritesListFragment : MangaListFragment() {
|
|||||||
return super.onCreateActionMode(mode, menu)
|
return super.onCreateActionMode(mode, menu)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun onPrepareActionMode(mode: ActionMode, menu: Menu): Boolean {
|
||||||
|
menu.findItem(R.id.action_save)?.isVisible = selectedItems.none {
|
||||||
|
it.source == MangaSource.LOCAL
|
||||||
|
}
|
||||||
|
return super.onPrepareActionMode(mode, menu)
|
||||||
|
}
|
||||||
|
|
||||||
override fun onActionItemClicked(mode: ActionMode, item: MenuItem): Boolean {
|
override fun onActionItemClicked(mode: ActionMode, item: MenuItem): Boolean {
|
||||||
return when (item.itemId) {
|
return when (item.itemId) {
|
||||||
R.id.action_remove -> {
|
R.id.action_remove -> {
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
|||||||
import org.koin.androidx.viewmodel.ext.android.viewModel
|
import org.koin.androidx.viewmodel.ext.android.viewModel
|
||||||
import org.koitharu.kotatsu.R
|
import org.koitharu.kotatsu.R
|
||||||
import org.koitharu.kotatsu.list.ui.MangaListFragment
|
import org.koitharu.kotatsu.list.ui.MangaListFragment
|
||||||
|
import org.koitharu.kotatsu.parsers.model.MangaSource
|
||||||
|
|
||||||
class HistoryListFragment : MangaListFragment() {
|
class HistoryListFragment : MangaListFragment() {
|
||||||
|
|
||||||
@@ -61,6 +62,13 @@ class HistoryListFragment : MangaListFragment() {
|
|||||||
return super.onCreateActionMode(mode, menu)
|
return super.onCreateActionMode(mode, menu)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun onPrepareActionMode(mode: ActionMode, menu: Menu): Boolean {
|
||||||
|
menu.findItem(R.id.action_save)?.isVisible = selectedItems.none {
|
||||||
|
it.source == MangaSource.LOCAL
|
||||||
|
}
|
||||||
|
return super.onPrepareActionMode(mode, menu)
|
||||||
|
}
|
||||||
|
|
||||||
override fun onActionItemClicked(mode: ActionMode, item: MenuItem): Boolean {
|
override fun onActionItemClicked(mode: ActionMode, item: MenuItem): Boolean {
|
||||||
return when (item.itemId) {
|
return when (item.itemId) {
|
||||||
R.id.action_remove -> {
|
R.id.action_remove -> {
|
||||||
|
|||||||
@@ -15,6 +15,12 @@
|
|||||||
android:title="@string/remove"
|
android:title="@string/remove"
|
||||||
app:showAsAction="ifRoom|withText" />
|
app:showAsAction="ifRoom|withText" />
|
||||||
|
|
||||||
|
<item
|
||||||
|
android:id="@+id/action_save"
|
||||||
|
android:icon="@drawable/ic_save"
|
||||||
|
android:title="@string/save"
|
||||||
|
app:showAsAction="ifRoom|withText" />
|
||||||
|
|
||||||
<item
|
<item
|
||||||
android:id="@+id/action_select_all"
|
android:id="@+id/action_select_all"
|
||||||
android:icon="?actionModeSelectAllDrawable"
|
android:icon="?actionModeSelectAllDrawable"
|
||||||
|
|||||||
@@ -9,16 +9,22 @@
|
|||||||
android:title="@string/share"
|
android:title="@string/share"
|
||||||
app:showAsAction="ifRoom|withText" />
|
app:showAsAction="ifRoom|withText" />
|
||||||
|
|
||||||
<item
|
|
||||||
android:id="@+id/action_favourite"
|
|
||||||
android:icon="@drawable/ic_heart_outline"
|
|
||||||
android:title="@string/add_to_favourites"
|
|
||||||
app:showAsAction="ifRoom|withText" />
|
|
||||||
|
|
||||||
<item
|
<item
|
||||||
android:id="@+id/action_remove"
|
android:id="@+id/action_remove"
|
||||||
android:icon="@drawable/ic_delete"
|
android:icon="@drawable/ic_delete"
|
||||||
android:title="@string/remove"
|
android:title="@string/remove"
|
||||||
app:showAsAction="ifRoom|withText" />
|
app:showAsAction="ifRoom|withText" />
|
||||||
|
|
||||||
|
<item
|
||||||
|
android:id="@+id/action_save"
|
||||||
|
android:icon="@drawable/ic_save"
|
||||||
|
android:title="@string/save"
|
||||||
|
app:showAsAction="ifRoom|withText" />
|
||||||
|
|
||||||
|
<item
|
||||||
|
android:id="@+id/action_favourite"
|
||||||
|
android:icon="@drawable/ic_heart_outline"
|
||||||
|
android:title="@string/add_to_favourites"
|
||||||
|
app:showAsAction="ifRoom|withText" />
|
||||||
|
|
||||||
</menu>
|
</menu>
|
||||||
Reference in New Issue
Block a user