forked from recloudstream/cloudstream
clear history
This commit is contained in:
parent
9e67e856a0
commit
60a2f7c1c5
4 changed files with 69 additions and 1 deletions
|
@ -1,5 +1,6 @@
|
|||
package com.lagradost.cloudstream3.ui.search
|
||||
|
||||
import android.content.DialogInterface
|
||||
import android.content.res.Configuration
|
||||
import android.os.Bundle
|
||||
import android.view.LayoutInflater
|
||||
|
@ -10,6 +11,7 @@ import android.widget.AbsListView
|
|||
import android.widget.ArrayAdapter
|
||||
import android.widget.ImageView
|
||||
import android.widget.ListView
|
||||
import androidx.appcompat.app.AlertDialog
|
||||
import androidx.appcompat.widget.SearchView
|
||||
import androidx.core.view.isVisible
|
||||
import androidx.fragment.app.Fragment
|
||||
|
@ -28,6 +30,7 @@ import com.lagradost.cloudstream3.APIHolder.getApiProviderLangSettings
|
|||
import com.lagradost.cloudstream3.APIHolder.getApiSettings
|
||||
import com.lagradost.cloudstream3.AcraApplication.Companion.getKey
|
||||
import com.lagradost.cloudstream3.AcraApplication.Companion.removeKey
|
||||
import com.lagradost.cloudstream3.AcraApplication.Companion.removeKeys
|
||||
import com.lagradost.cloudstream3.AcraApplication.Companion.setKey
|
||||
import com.lagradost.cloudstream3.MainActivity.Companion.afterPluginsLoadedEvent
|
||||
import com.lagradost.cloudstream3.mvvm.Resource
|
||||
|
@ -343,7 +346,7 @@ class SearchFragment : Fragment() {
|
|||
searchViewModel.updateHistory()
|
||||
}
|
||||
|
||||
search_history_recycler?.isVisible = showHistory
|
||||
search_history_holder?.isVisible = showHistory
|
||||
|
||||
search_master_recycler?.isVisible = !showHistory && isAdvancedSearch
|
||||
search_autofit_results?.isVisible = !showHistory && !isAdvancedSearch
|
||||
|
@ -352,7 +355,41 @@ class SearchFragment : Fragment() {
|
|||
}
|
||||
})
|
||||
|
||||
search_clear_call_history?.setOnClickListener {
|
||||
activity?.let { ctx ->
|
||||
val builder: AlertDialog.Builder = AlertDialog.Builder(ctx)
|
||||
val dialogClickListener =
|
||||
DialogInterface.OnClickListener { _, which ->
|
||||
when (which) {
|
||||
DialogInterface.BUTTON_POSITIVE -> {
|
||||
removeKeys(SEARCH_HISTORY_KEY)
|
||||
searchViewModel.updateHistory()
|
||||
}
|
||||
DialogInterface.BUTTON_NEGATIVE -> {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
builder.setTitle(R.string.clear_history).setMessage(
|
||||
ctx.getString(R.string.delete_message).format(
|
||||
ctx.getString(R.string.history)
|
||||
)
|
||||
)
|
||||
.setPositiveButton(R.string.sort_clear, dialogClickListener)
|
||||
.setNegativeButton(R.string.cancel, dialogClickListener)
|
||||
.show()
|
||||
} catch (e: Exception) {
|
||||
logError(e)
|
||||
// ye you somehow fucked up formatting did you?
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
observe(searchViewModel.currentHistory) { list ->
|
||||
search_clear_call_history?.isVisible = list.isNotEmpty()
|
||||
(search_history_recycler.adapter as? SearchHistoryAdaptor?)?.updateList(list)
|
||||
}
|
||||
|
||||
|
|
9
app/src/main/res/drawable/delete_all.xml
Normal file
9
app/src/main/res/drawable/delete_all.xml
Normal file
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<vector android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="48"
|
||||
android:viewportHeight="48"
|
||||
android:tint="?attr/white"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<path android:fillColor="@android:color/white" android:pathData="M30,36.5V33.5H37.25V36.5ZM30,18.1V15.1H44V18.1ZM30,27.3V24.3H41.75V27.3ZM6.25,14.25H4V11.25H12.5V9H19.25V11.25H27.75V14.25H25.5V35Q25.5,36.2 24.6,37.1Q23.7,38 22.5,38H9.25Q8.05,38 7.15,37.1Q6.25,36.2 6.25,35ZM9.25,14.25V35Q9.25,35 9.25,35Q9.25,35 9.25,35H22.5Q22.5,35 22.5,35Q22.5,35 22.5,35V14.25ZM9.25,14.25V35Q9.25,35 9.25,35Q9.25,35 9.25,35Q9.25,35 9.25,35Q9.25,35 9.25,35Z"/>
|
||||
</vector>
|
|
@ -112,6 +112,11 @@
|
|||
android:nextFocusLeft="@id/nav_rail_view"
|
||||
android:visibility="gone"
|
||||
tools:listitem="@layout/homepage_parent" />
|
||||
<FrameLayout
|
||||
android:id="@+id/search_history_holder"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/search_history_recycler"
|
||||
|
@ -122,5 +127,19 @@
|
|||
android:descendantFocusability="afterDescendants"
|
||||
android:nextFocusLeft="@id/nav_rail_view"
|
||||
android:visibility="visible"
|
||||
android:paddingBottom="50dp"
|
||||
tools:listitem="@layout/search_history_item" />
|
||||
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/search_clear_call_history"
|
||||
style="@style/BlackButton"
|
||||
android:layout_gravity="bottom"
|
||||
android:padding="0dp"
|
||||
app:cornerRadius="0dp"
|
||||
android:layout_margin="0dp"
|
||||
android:text="@string/clear_history"
|
||||
app:icon="@drawable/delete_all"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="50dp" />
|
||||
</FrameLayout>
|
||||
</LinearLayout>
|
|
@ -647,4 +647,7 @@
|
|||
<string name="skip_type_mixed_op">Mixed opening</string>
|
||||
<string name="skip_type_creddits">Credits</string>
|
||||
<string name="skip_type_intro">Intro</string>
|
||||
|
||||
<string name="clear_history">Clear history</string>
|
||||
<string name="history">History</string>
|
||||
</resources>
|
||||
|
|
Loading…
Reference in a new issue