Added clearing list
This commit is contained in:
parent
009cb6f6a6
commit
266c5ae00e
@ -6,7 +6,9 @@ import android.view.LayoutInflater
|
|||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import androidx.fragment.app.Fragment
|
import androidx.fragment.app.Fragment
|
||||||
|
import androidx.recyclerview.widget.ItemTouchHelper
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import net.helcel.fidelity.R
|
import net.helcel.fidelity.R
|
||||||
import net.helcel.fidelity.activity.adapter.FidelityListAdapter
|
import net.helcel.fidelity.activity.adapter.FidelityListAdapter
|
||||||
import net.helcel.fidelity.databinding.FragLauncherBinding
|
import net.helcel.fidelity.databinding.FragLauncherBinding
|
||||||
@ -59,6 +61,8 @@ class Launcher : Fragment() {
|
|||||||
startViewEntry(it.first, it.second, it.third)
|
startViewEntry(it.first, it.second, it.third)
|
||||||
}
|
}
|
||||||
binding.fidelityList.adapter = fidelityListAdapter
|
binding.fidelityList.adapter = fidelityListAdapter
|
||||||
|
|
||||||
|
recyclerSlideHelper().attachToRecyclerView(binding.fidelityList)
|
||||||
return binding.root
|
return binding.root
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -102,4 +106,22 @@ class Launcher : Fragment() {
|
|||||||
viewEntryFragment.arguments = KeepassWrapper.bundleCreate(title, code, fmt)
|
viewEntryFragment.arguments = KeepassWrapper.bundleCreate(title, code, fmt)
|
||||||
startFragment(viewEntryFragment)
|
startFragment(viewEntryFragment)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun recyclerSlideHelper(): ItemTouchHelper {
|
||||||
|
return ItemTouchHelper(object : ItemTouchHelper.SimpleCallback(
|
||||||
|
0, ItemTouchHelper.LEFT
|
||||||
|
) {
|
||||||
|
override fun onMove(
|
||||||
|
recyclerView: RecyclerView,
|
||||||
|
viewHolder: RecyclerView.ViewHolder,
|
||||||
|
target: RecyclerView.ViewHolder
|
||||||
|
): Boolean = false
|
||||||
|
|
||||||
|
override fun onSwiped(viewHolder: RecyclerView.ViewHolder, direction: Int) {
|
||||||
|
val pos = viewHolder.adapterPosition
|
||||||
|
CacheManager.rmFidelity(pos)
|
||||||
|
fidelityListAdapter.notifyItemRemoved(pos)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
@ -21,6 +21,11 @@ object CacheManager {
|
|||||||
saveFidelity()
|
saveFidelity()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun rmFidelity(idx: Int) {
|
||||||
|
data.removeAt(idx)
|
||||||
|
saveFidelity()
|
||||||
|
}
|
||||||
|
|
||||||
private fun saveFidelity() {
|
private fun saveFidelity() {
|
||||||
val editor = pref?.edit()
|
val editor = pref?.edit()
|
||||||
val gson = Gson()
|
val gson = Gson()
|
||||||
|
@ -31,10 +31,8 @@ object KeepassWrapper {
|
|||||||
fields[CODE_FIELD] = code
|
fields[CODE_FIELD] = code
|
||||||
fields[FORMAT_FIELD] = format
|
fields[FORMAT_FIELD] = format
|
||||||
fields[PROTECT_CODE_FIELD] = protectCode.toString()
|
fields[PROTECT_CODE_FIELD] = protectCode.toString()
|
||||||
|
|
||||||
if (protectCode) {
|
|
||||||
protected.add(CODE_FIELD)
|
protected.add(CODE_FIELD)
|
||||||
}
|
|
||||||
return Pair(fields, protected)
|
return Pair(fields, protected)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user