mirror of
https://github.com/ankidroid/Anki-Android.git
synced 2024-09-19 19:42:17 +02:00
add filtered deck option to browser
This commit is contained in:
parent
733cecac82
commit
fa53c16fc2
@ -77,6 +77,7 @@ import com.ichi2.anki.dialogs.CardBrowserMySearchesDialog
|
||||
import com.ichi2.anki.dialogs.CardBrowserMySearchesDialog.Companion.newInstance
|
||||
import com.ichi2.anki.dialogs.CardBrowserMySearchesDialog.MySearchesDialogListener
|
||||
import com.ichi2.anki.dialogs.CardBrowserOrderDialog
|
||||
import com.ichi2.anki.dialogs.CreateDeckDialog
|
||||
import com.ichi2.anki.dialogs.DeckSelectionDialog
|
||||
import com.ichi2.anki.dialogs.DeckSelectionDialog.Companion.newInstance
|
||||
import com.ichi2.anki.dialogs.DeckSelectionDialog.DeckSelectionListener
|
||||
@ -941,6 +942,7 @@ open class CardBrowser :
|
||||
subMenu ->
|
||||
setupFlags(subMenu, Mode.SINGLE_SELECT)
|
||||
}
|
||||
menu.findItem(R.id.action_create_filtered_deck).title = TR.qtMiscCreateFilteredDeck()
|
||||
saveSearchItem = menu.findItem(R.id.action_save_search)
|
||||
saveSearchItem?.isVisible = false // the searchview's query always starts empty.
|
||||
mySearchesItem = menu.findItem(R.id.action_list_my_searches)
|
||||
@ -1265,10 +1267,27 @@ open class CardBrowser :
|
||||
R.id.action_export_selected -> {
|
||||
exportSelected()
|
||||
}
|
||||
R.id.action_create_filtered_deck -> {
|
||||
showCreateFilteredDeckDialog()
|
||||
}
|
||||
}
|
||||
return super.onOptionsItemSelected(item)
|
||||
}
|
||||
|
||||
private fun showCreateFilteredDeckDialog() {
|
||||
val dialog = CreateDeckDialog(this, R.string.new_deck, CreateDeckDialog.DeckDialogType.FILTERED_DECK, null)
|
||||
dialog.onNewDeckCreated = {
|
||||
val intent = Intent(this, FilteredDeckOptions::class.java)
|
||||
intent.putExtra("search", viewModel.searchTerms)
|
||||
startActivity(intent)
|
||||
}
|
||||
launchCatchingTask {
|
||||
withProgress {
|
||||
dialog.showFilteredDeckDialog()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @see CardBrowserViewModel.searchForSuspendedCards
|
||||
*/
|
||||
|
@ -26,6 +26,7 @@ import android.preference.EditTextPreference
|
||||
import android.preference.ListPreference
|
||||
import android.preference.Preference
|
||||
import android.preference.PreferenceCategory
|
||||
import androidx.core.content.edit
|
||||
import com.ichi2.anki.analytics.UsageAnalytics
|
||||
import com.ichi2.annotations.NeedsTest
|
||||
import com.ichi2.libanki.Collection
|
||||
@ -222,6 +223,11 @@ class FilteredDeckOptions :
|
||||
} else {
|
||||
pref = DeckPreferenceHack()
|
||||
pref.registerOnSharedPreferenceChangeListener(this)
|
||||
extras?.getString("search")?.let { search ->
|
||||
pref.edit {
|
||||
putString("search", search)
|
||||
}
|
||||
}
|
||||
addPreferences(col)
|
||||
buildLists()
|
||||
updateSummaries()
|
||||
|
@ -63,4 +63,10 @@
|
||||
android:title="@string/study_options"
|
||||
ankidroid:showAsAction="never"/>
|
||||
|
||||
<item
|
||||
android:id="@+id/action_create_filtered_deck"
|
||||
ankidroid:showAsAction="never"
|
||||
tools:title="Create filtered deck..."
|
||||
/>
|
||||
|
||||
</menu>
|
Loading…
Reference in New Issue
Block a user