mirror of
https://github.com/SimpleMobileTools/Simple-Notes.git
synced 2025-06-05 17:00:23 +02:00
moving some drag and drop related interfaces in Simple Commons
This commit is contained in:
@ -15,6 +15,8 @@ import com.simplemobiletools.commons.extensions.applyColorFilter
|
||||
import com.simplemobiletools.commons.extensions.beVisibleIf
|
||||
import com.simplemobiletools.commons.extensions.getColoredDrawableWithColor
|
||||
import com.simplemobiletools.commons.extensions.removeBit
|
||||
import com.simplemobiletools.commons.interfaces.ItemMoveCallback
|
||||
import com.simplemobiletools.commons.interfaces.ItemTouchHelperContract
|
||||
import com.simplemobiletools.commons.views.MyRecyclerView
|
||||
import com.simplemobiletools.notes.pro.R
|
||||
import com.simplemobiletools.notes.pro.dialogs.RenameChecklistItemDialog
|
||||
@ -22,8 +24,6 @@ import com.simplemobiletools.notes.pro.extensions.config
|
||||
import com.simplemobiletools.notes.pro.extensions.getPercentageFontSize
|
||||
import com.simplemobiletools.notes.pro.helpers.DONE_CHECKLIST_ITEM_ALPHA
|
||||
import com.simplemobiletools.notes.pro.interfaces.ChecklistItemsListener
|
||||
import com.simplemobiletools.notes.pro.interfaces.ItemMoveCallback
|
||||
import com.simplemobiletools.notes.pro.interfaces.ItemTouchHelperContract
|
||||
import com.simplemobiletools.notes.pro.interfaces.StartReorderDragListener
|
||||
import com.simplemobiletools.notes.pro.models.ChecklistItem
|
||||
import kotlinx.android.synthetic.main.item_checklist.view.*
|
||||
|
@ -1,39 +0,0 @@
|
||||
package com.simplemobiletools.notes.pro.interfaces
|
||||
|
||||
import androidx.recyclerview.widget.ItemTouchHelper
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter
|
||||
|
||||
open class ItemMoveCallback(private val mAdapter: ItemTouchHelperContract) : ItemTouchHelper.Callback() {
|
||||
override fun isLongPressDragEnabled() = false
|
||||
|
||||
override fun isItemViewSwipeEnabled() = false
|
||||
|
||||
override fun onSwiped(viewHolder: RecyclerView.ViewHolder, i: Int) {}
|
||||
|
||||
override fun getMovementFlags(recyclerView: RecyclerView, viewHolder: RecyclerView.ViewHolder): Int {
|
||||
val dragFlags = ItemTouchHelper.UP or ItemTouchHelper.DOWN
|
||||
return makeMovementFlags(dragFlags, 0)
|
||||
}
|
||||
|
||||
override fun onMove(recyclerView: RecyclerView, viewHolder: RecyclerView.ViewHolder, target: RecyclerView.ViewHolder): Boolean {
|
||||
mAdapter.onRowMoved(viewHolder.adapterPosition, target.adapterPosition)
|
||||
return true
|
||||
}
|
||||
|
||||
override fun onSelectedChanged(viewHolder: RecyclerView.ViewHolder?, actionState: Int) {
|
||||
if (actionState != ItemTouchHelper.ACTION_STATE_IDLE) {
|
||||
if (viewHolder is MyRecyclerViewAdapter.ViewHolder) {
|
||||
mAdapter.onRowSelected(viewHolder)
|
||||
}
|
||||
}
|
||||
super.onSelectedChanged(viewHolder, actionState)
|
||||
}
|
||||
|
||||
override fun clearView(recyclerView: RecyclerView, viewHolder: RecyclerView.ViewHolder) {
|
||||
super.clearView(recyclerView, viewHolder)
|
||||
if (viewHolder is MyRecyclerViewAdapter.ViewHolder) {
|
||||
mAdapter.onRowClear(viewHolder)
|
||||
}
|
||||
}
|
||||
}
|
@ -1,11 +0,0 @@
|
||||
package com.simplemobiletools.notes.pro.interfaces
|
||||
|
||||
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter
|
||||
|
||||
interface ItemTouchHelperContract {
|
||||
fun onRowMoved(fromPosition: Int, toPosition: Int)
|
||||
|
||||
fun onRowSelected(myViewHolder: MyRecyclerViewAdapter.ViewHolder?)
|
||||
|
||||
fun onRowClear(myViewHolder: MyRecyclerViewAdapter.ViewHolder?)
|
||||
}
|
Reference in New Issue
Block a user