diff --git a/app/src/main/kotlin/com/simplemobiletools/filemanager/adapters/ItemsAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/filemanager/adapters/ItemsAdapter.kt index 4a8a3090..54b08525 100644 --- a/app/src/main/kotlin/com/simplemobiletools/filemanager/adapters/ItemsAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/filemanager/adapters/ItemsAdapter.kt @@ -26,7 +26,7 @@ import kotlinx.android.synthetic.main.list_item.view.* import java.io.File import java.util.* -class ItemsAdapter(val activity: SimpleActivity, val mItems: List, val listener: ItemOperationsListener?, val itemClick: (FileDirItem) -> Unit) : +class ItemsAdapter(val activity: SimpleActivity, var mItems: List, val listener: ItemOperationsListener?, val itemClick: (FileDirItem) -> Unit) : RecyclerView.Adapter() { val multiSelector = MultiSelector() val views = ArrayList() @@ -179,6 +179,11 @@ class ItemsAdapter(val activity: SimpleActivity, val mItems: List, return selectedMedia } + fun updateItems(newItems: List) { + mItems = newItems + notifyDataSetChanged() + } + override fun onCreateViewHolder(parent: ViewGroup?, viewType: Int): ViewHolder { val view = LayoutInflater.from(parent?.context).inflate(R.layout.list_item, parent, false) return ViewHolder(activity, view, itemClick) diff --git a/app/src/main/kotlin/com/simplemobiletools/filemanager/fragments/ItemsFragment.kt b/app/src/main/kotlin/com/simplemobiletools/filemanager/fragments/ItemsFragment.kt index 57e443a4..36fa27d5 100644 --- a/app/src/main/kotlin/com/simplemobiletools/filemanager/fragments/ItemsFragment.kt +++ b/app/src/main/kotlin/com/simplemobiletools/filemanager/fragments/ItemsFragment.kt @@ -76,10 +76,16 @@ class ItemsFragment : android.support.v4.app.Fragment(), ItemsAdapter.ItemOperat val adapter = ItemsAdapter(activity as SimpleActivity, mItems, this) { itemClicked(it) } - items_list.apply { - this@apply.adapter = adapter - addItemDecoration(RecyclerViewDivider(context)) - setOnTouchListener { view, motionEvent -> checkDelete(); false } + + val currAdapter = items_list.adapter + if (currAdapter == null) { + items_list.apply { + this@apply.adapter = adapter + addItemDecoration(RecyclerViewDivider(context)) + setOnTouchListener { view, motionEvent -> checkDelete(); false } + } + } else { + (currAdapter as ItemsAdapter).updateItems(mItems) } }